【问题标题】:How to Authenticate against Azure AD via API如何通过 API 对 Azure AD 进行身份验证
【发布时间】:2013-09-26 15:35:26
【问题描述】:

是否可以在不使用 microsoft windows 帐户登录页面的情况下在 Azure AD 上再次进行身份验证?

我们在 WAAD (Windows Azure Active Directory) 实例中创建了一个具有自己用户群的独立 Web 应用程序

问题是,该系统的用户拥有只安装了一个浏览器 (IE9) 的公司笔记本电脑,并且也是 Office 365 的用户。

当尝试从 IE 访问我们的应用程序时,它说用户已经使用他们的 office 365 帐户登录,并且退出和切换帐户的过程需要 15 分钟点击多个重定向和错误页面。 (彻头彻尾的闹剧!)

作为一种快速解决方法,有没有一种方法可以让我们创建自己的登录页面(如良好的旧表单身份验证)来捕获凭据,并将它们发送到 WAAD 以通过 API 获取令牌,从而允许用户同时登录office365和我们的WAAD实例?

【问题讨论】:

标签: azure authentication active-directory


【解决方案1】:

请查看我的问题的答案:Using ADAL C# as Confidential User /Daemon Server /Server-to-Server - 401 Unauthorized 也许它也适用于您的场景:

为 Token 构造以下 HTTP-Reqest:

网址: https://login.windows.net/MyCompanyTenant.onmicrosoft.com/oauth2/token

标题:

  • 缓存控制:无缓存
  • 内容类型:application/x-www-form-urlencoded

正文:

  • client_id:YourClientIdFromAzureAd
  • 资源:https://myCompanyTenant.crm.dynamics.com
  • 用户名:yourUser@myCompanyTenant.onmicrosoft.com
  • 密码:你的用户密码
  • grant_type: 密码
  • client_secret:YourClientSecretFromAzureAd

构造以下 HTTP-Request 以访问 WebApi:

网址:https://MyCompanyTenant.api.crm.dynamics.com/api/data/v8.0/accounts

标题:

  • 缓存控制:无缓存
  • 接受:应用程序/json
  • OData 版本:4.0
  • 授权:Bearer TokenRetrievedFomRequestAbove

【讨论】:

    猜你喜欢
    • 2021-06-19
    • 2021-04-04
    • 1970-01-01
    • 2020-02-01
    • 2017-04-08
    • 2020-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多