如何使用 IdentityServer 在 Web 应用程序和本机应用程序之间实现 SSO?

How can I implement SSO between a web app and native app using IdentityServer?

我有一组用 ASP.NET 编写的 API。这些将由 Web 应用程序和本机移动应用程序访问,并应受到 SSO 的保护。

我希望能够有一个 SSO,用户可以在线登录并访问网络应用程序,也可以登录本机应用程序(通过浏览器),它会记住他们的登录详细信息 (即 authorization_token).

我一直在研究 IdentityServer4,但我对为此需要哪些授权流程有点困惑。

感谢任何帮助,因为它开始伤害我的大脑!如果我需要更好地解释,请告诉我。

对于流,今天只有两个流是您应该考虑的。

  • 授权代码流程,此流程适用于您希望用户login/signup的客户端,例如移动应用程序或网络应用程序。意思是,这里涉及到一个用户和一个浏览器。

  • 客户端凭据流,完全是关于机器对机器的通信,没有用户参与。