【问题标题】:Authenticating directly to an Azure ACS identity provider直接向 Azure ACS 身份提供者进行身份验证
【发布时间】:2013-09-13 17:35:31
【问题描述】:

我需要我的移动应用程序来允许向 3rd 方供应商(facebook、google 等)或我自己的 WS-Federation 身份提供者(我正在使用 Thinktecture)进行身份验证。现在,当登录到我自己的 WS-Fed idp 时,我想直接进行身份验证并将安全令牌传递给 Azure ACS(而不是使用专用登录页面)。我需要它,因为我不希望我的用户通过使用专用网页(并移出应用程序的上下文)使用我的提供程序进行身份验证。

您的帮助将不胜感激。

【问题讨论】:

  • 请向用户展示您迄今为止所做的尝试以获得更好的响应。
  • 它是一个什么样的移动应用程序?具体来说,您能否使用 WS-Trust 来获取您的令牌。 .Net 可以,不确定其他平台...

标签: azure acs


【解决方案1】:

从您的 ACS 管理门户获取您的领域的身份提供者列表,从下面的链接

https://YourNamespace.accesscontrol.windows.net/v2/metadata/IdentityProviders.js? 协议=wsfederation& 领域=您的应用领域& reply_to=YourAppReturnURL& 版本=1.0

现在试试这个:-

  1. 上述身份提供者链接上的 HTTP GET。
  2. 从上述请求的 json 响应中解析所需身份提供者的登录链接。
  3. 使用上一步中收到的登录链接对用户进行身份验证。
  4. 您将收到 ACS 令牌

注意: 在第 3 步之后,用户将被要求进行身份验证,身份提供者会自动将身份验证令牌发送给 ACS,最后 ACS 会将该令牌转换为新的 ACS 令牌并如第 4 步一样返回。

通过这种方式,您将绕过登录页面,并且可以在移动应用程序中获取 ACS 令牌,而无需移出应用程序的上下文。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-28
    • 1970-01-01
    • 2018-01-22
    • 2019-07-20
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 2018-03-08
    相关资源
    最近更新 更多