Authentication 使用具有IdentityServer4的唯一临时代码对用户进行身份验证

Authentication 使用具有IdentityServer4的唯一临时代码对用户进行身份验证,authentication,identityserver4,asp.net-core-2.0,Authentication,Identityserver4,Asp.net Core 2.0,我计划将IdentityServer4作为安全令牌服务引入现有解决方案。我们可以使用用户名/密码对对用户进行身份验证,这涵盖了我们拥有的大多数用例 但是,在某些情况下,少数用户通过电子邮件(嵌入在链接中,如www.mysite.com/codeusers/{uniquetempcode})向用户发送代码进行身份验证,并允许访问站点的有限部分 另一个更不常用的场景是根据用户的IP对其进行身份验证 使用IdentityServer4处理此类情况的最佳方法是什么?我不知道这是否是最佳方法,但您可以使用

我计划将IdentityServer4作为安全令牌服务引入现有解决方案。我们可以使用用户名/密码对对用户进行身份验证,这涵盖了我们拥有的大多数用例

但是,在某些情况下,少数用户通过电子邮件(嵌入在链接中,如www.mysite.com/codeusers/{uniquetempcode})向用户发送代码进行身份验证,并允许访问站点的有限部分

另一个更不常用的场景是根据用户的IP对其进行身份验证


使用IdentityServer4处理此类情况的最佳方法是什么?

我不知道这是否是最佳方法,但您可以使用扩展授权:

OAuth2.0定义了令牌端点的标准授予类型,例如 密码、授权码和刷新令牌。延期补助金是一种有效的方法 添加对非标准令牌发行场景的支持的方法,如 令牌转换、委派或自定义凭据