如何关闭 IdentityServer3 的内置 UI 视图(登录和注册)?

How do you turn off IdentityServer3's built in UI views (login and registration)?

我正在尝试将 IdentityServer3 实施到我的架构组合中。我喜欢注册客户、用户和范围的想法。我不喜欢使用 IdentityServer3 的内置登录和注册表单。

我有 4 个不同的应用程序需要使用我的 IdentityServer3 实现(又名 TokenServer)。这 4 个应用是 AngularJs 个应用。我有各种 C# .Net WebAPI 服务为这 4 个应用程序提供数据。现在这 4 个应用程序中的每一个都有自己的身份验证和注册过程。我需要使用 IdentityServer3 来整合身份验证部分。

这 4 个应用中的每一个都有不同的帐户 registration/authentication 需求。混合了第 3 方身份验证(Facebook,Google)以及针对用户已注册帐户的传统表单身份验证。

因此,我不能让我的任何 AngularJs 应用程序使用 IdentityServer3 附带的默认 Login/Registration 表单。我现在花了很多时间试图找到一种方法来关闭默认视图,并将我的每个 AngularJs 应用程序连接到我的 TokenServer。我只是想 POST 将凭据登录到 /token 端点,并 return 一个可以在后续调用我的 WebAPI 时使用的令牌。我想用 IdentityServer3 替换每个应用程序的身份验证过程,而不更改现有的 login/registration UIs.

我找不到显示如何执行此操作的示例应用程序或文档。甚至可以 'turn off' IdentityServer3 的每个 UI 视图并使用我的 AngularJs 客户端的登录和注册表单吗?

请指出正确的方向。谢谢你的时间。

您似乎想使用 OAuth 2.0 资源所有者流程 - 这意味着 - 您的应用将凭据发布到令牌端点并取回访问令牌。这完全有可能——您会错过一些功能,例如联合和 SSO。但这些是此流程的已知限制。

如果您想使用基于重定向的流程(它为您提供 SSO 和例如 Google 登录等)- 您需要重定向。您可以用自己的视图替换任何 IdentityServer 视图。文档和示例提供了大量有关如何执行此操作的信息。

https://identityserver.github.io/Documentation/docsv2/advanced/customizingViews.html

https://github.com/IdentityServer/IdentityServer3.Samples/tree/master/source/CustomViewService