使用IdentityServer4授权外部用户而无需登录

时间:2018-08-01 17:38:38

标签: asp.net api authentication authorization identityserver4

我在另一个系统中可能有/没有使用OWIN的某些外部用户。 (实际上,我在几个项目中都遇到了这个问题)我正在尝试使用IdentityServer4及其授权端点来解决此问题,但要确保我走的路正确。

我们的目标是让用户单击外部应用程序中的链接,然后重定向到IdentityServer4。我希望IdentityServer4授权从该端点进入的用户,添加特定角色或声明,并允许他们进入客户端而无需显示登录屏幕。这可能吗?我在查找示例时遇到了麻烦。

Identity Server 4 Authorization Code Flow example

这是我能找到的最接近的,但是我们正在寻找一种与框架无关的解决方案,该解决方案不涉及修改外部应用程序,因为我无法在所有实例中访问其源代码。

我正在寻找这样的流程:用户转到https://someexternalapp.com,单击已发布的链接,例如https://identityserver.myapp.com/authorize?requestSecret=asdf1234&username=bob,然后重定向到发布声明的https://identityserver.myapp.com/external?token=dasdfasdf,最后重定向授权https://someclient.myapp.com

我走对了吗?我不愿意在这上面浪费更多的时间,最终陷入僵局,有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:1)

看看Sign-in with External Identity Providers

这将允许您在https://someexternalapp.com/应用中创建一个cookie,然后身份服务器使用它来进行身份验证,而无需用户进行交互。

相关问题