【问题标题】:Who provides client id and client secret with Identity Server 4?谁为 Identity Server 4 提供客户端 ID 和客户端密码?
【发布时间】:2021-08-07 20:06:28
【问题描述】:

我正在学习 oAuth2.0 以及如何在应用程序中使用 Identity Server 4,我对此有一个疑问。

当我们使用 Identity Server 4 创建我们的应用并在本地运行它(它还没有部署到任何地方)时,我们定义了我们的客户端 ID 和客户端密码。

当我们在某处部署应用程序时会发生什么?

我们是否从我们部署到的服务中获取客户端 ID 和客户端密码,并将其放在配置中的某个位置?

或者我们将我们定义的客户端 ID 和客户端密码放入我们部署应用程序的服务中? 我不确定这是如何工作的

【问题讨论】:

    标签: authentication oauth-2.0 asp.net-identity identityserver4 openid-connect


    【解决方案1】:

    IdentityServer(IS4) 的主要工作是管理用户的身份。它负责身份验证和授权(如果其中配置了声明)。 this thread是对它的非常详细的解释。

    说实话,当我遇到 IS4 时,我自己发现它非常混乱。我是 C# 的新手,突然我的雇主让我处理它。然而,随着时间的推移,我意识到它的美丽和普遍的灵活性。您应该查看this series 以了解更多信息(以及一般 C# 中的身份管理)。

    要回答您的问题,您不仅要部署 IS4,还要部署您的客户端(API 或 MVC 应用程序)。您的客户端将依靠身份服务器进行身份验证。此客户端将由您配置到 IS4 中。如果您同时开发两者,则必须配置将使用令牌和 IS4 的客户端。如果您只在客户端上工作,那么您只需将客户端 ID 和密码提供给 IS4 开发人员,该人员将进行配置。如果你两者都做,那么你必须将你的客户建立为 IS4 中的允许客户。这些配置通常存储在用于开发目的的 C# 类中,并移动到一个表中(IS4 附带的迁移),在那里可以很容易地添加或删除它们。

    最后一个提示,请记住,您无法像学习其他堆栈那样快速地学习它。这是非常灵活的东西,因此有太多的配置要求。如果你花时间去理解它是可以的。诚实地尝试一下。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-25
      • 2018-04-25
      • 2015-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多