没有登录的身份服务器

Identity Server without Login

我正在尝试实施 IdentityServer 授权,我的场景如下:

我们所有的应用程序“www.vision2025.com”都有一个主页,我有 link 我的 mvc 应用程序“MarketingDashboard”,用户通过主页进行身份验证并重定向到我的 mvc使用 windows 身份验证的应用程序。现在用户可以在我的仪表板中执行与网络交互的任何操作 API。

现在我需要实施 IdentityServer 来授权所有来自我的仪表板的 Web API 调用,但不需要登录。

请提出任何想法

提前致谢

我认为您不想构建 IdentityServer,因为您的企业公司已经构建了 ADFS(Active Directory Federation Services)。你只想问谁维护AD,让他为OAuth2启用ADFS。这是一个帮助您捕捉所有场景的页面here

因为我不知道您可以为所有应用程序更改多远,但您可以使用一些 ADFS 解决方案:

  1. 让您的主服务器(充当主页以及用户重定向到 ADFS 以登录的位置)执行 On-behalf-Of flow。在这种情况下,您的主服务器将是一个链接服务器,用于传输从 ADFS 检索到的 access token。我强烈推荐这种方式,因为您只想添加尽可能多的新即将推出的网站和 api。缺点是它们要求您确保在主服务器
  2. 中高度保护access token
  3. 因为OAuth 2.0还不支持链式资源服务器(比如你登录了资源服务器A,然后使用provided access_token在不同的客户端调用资源服务器B),你需要允许你的主服务器 store his username/password (也称为 trusted back end server ,意味着你的企业允许此服务器可以存储客户端凭据) .因此,每次您将用户重定向到目标 MVC 应用程序时,您也应该传输 加密的 username/password。然后你的目标 MVC 应用程序可以在后端代码中执行 Authorized Flow or Implicit flow 本身,然后将新的 access token 返回给客户端 web 以执行调用 Web API.