如何手动生成请求令牌'在identityserver4中

时间:2018-02-22 14:23:14

标签: authentication identityserver4

auth flow

我们希望实现oauth身份验证流程。在链接的图像中是我们要实现的用于验证用户身份的流程。让我们在AuthServer组件中居中,该组件包含配置为使用混合流的身份服务器4的实例。当BGServer(只是服务器)发送获取请求令牌的请求时,

A.如何创建此请求令牌(以后用于交换访问令牌)?

B.实际上是否可以将oauth流程纳入我们想要实现的目标中,或者使用它是愚蠢的?

请注意,LDAP组件也可以是AzureAD或自定义登录管理器。

我实际上在所有过程中都很丢失,也许我没有正确地提出这个问题,对不起。 感谢

1 个答案:

答案 0 :(得分:0)

此提案几乎是反OAuth,其中涉及通过客户端应用程序传递凭据。您应该将任何自定义身份验证逻辑推送到AuthServer,并使客户端成为移动应用程序,然后让它对ADFS / AzureAD或其他任何内容执行隐式/混合授权请求。

例如:

  1. 将用户定向到默认浏览器中的AuthServer授权端点
  2. 用户提供UI以提示UserAuthKey
  3. AuthServer执行所需的任何验证和检查
  4. AuthServer使用OIDC通过LDAP提供程序进行身份验证(例如,通过AD FS或Azure AD)
  5. 会话在AuthServer上建立
  6. 客户端收到包含令牌(或令牌+代码,如果是混合)的响应
  7. 客户使用获取的访问令牌调用BGServer
  8. 如需进一步了解上述原因为何以及原始提案不好,请查看Scott Brady的精彩文章:

    https://www.scottbrady91.com/OAuth/Why-the-Resource-Owner-Password-Credentials-Grant-Type-is-not-Authentication-nor-Suitable-for-Modern-Applications