我正在构建一个使用 OAuth2.0 和 OpenId-Connect(某些第三方供应商的)来验证用户身份的网站。
在将用户重定向到供应商的 OAuth 页面之前,我没有要求用户在我的网站上输入唯一的 UserID,我正在考虑使用我在授权过程完成后作为 IDToken 的一部分收到的用户的电子邮件 ID,因为我的网站的用户用户名(唯一身份)。
但是这里的 OpenID 规范
https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims
表示 emailid 是可选的,可能不会被退回。
所以问题是,在我启动 OAUTH/OpenID-Connect 流程之前,要求用户提供一个唯一的名称(我可以在我的网站上用作用户的身份)是一种标准做法吗?