php - 从 PHP Web 应用程序连接到 Azure Active Directory

标签 php azure active-directory simplesamlphp

寻求有关该主题的指导,因为我真的对此很困惑,我有一个用 PHP 制作的应用程序的内部 URL,并且我想连接到 Azure Active Directory。

到目前为止,我已经审查了 example from Microsoft使用 SimpleSAML,但它确实已经过时了,而且我在将其适应较新的 SimpleSAMl 代码时遇到了麻烦。

是否有更好的方法将 Web 应用程序与 Azure AD 集成?我在某处读到我可以使用入门 Mobile Services但我想听听以前的经验,了解使用 Azure AD 登录 PHP 的最佳/当前方法是什么?。

-- 编辑--

通过集成,我的意思是允许人们从 Azure AD 进行身份验证并检索电子邮件地址或 EmployeeID,以提供 SSO 支持。

最佳答案

Azure AD 支持多种方案,具体取决于您使用 Azure AD 的目的。基本上,要从 PHP Web 应用程序通过 Azure AD 访问资源,您可以引用 Web Application to Web API部分来了解此场景并开始使用。

要将 Azure AD 集成到 PHP Web 应用程序中,我们需要遵循授权代码授予流程步骤来构建多个自定义 HTTP 请求。例如。要通过OAuth 2.0协议(protocol)获取访问 token ,我们应该引用Authorization Code Grant Flow上的步骤。 ,一般情况下,我们会构建2个HTTP请求来获取访问 token :

1,请求授权码 enter image description here

构建的URL将重定向到sso页面,登录后我们可以获取下一步使用的code值。

2、使用授权码请求Access Token: enter image description here

然后,我们可以使用访问 token 在资源 Web API 请求的授权 header 中添加带有“Bearer”名称的 JWT 字符串。

这是一个PHP test project由Azure提供供您引用。

关于php - 从 PHP Web 应用程序连接到 Azure Active Directory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33509761/

相关文章:

azure - 无法在 Azure 门户中创建 Power BI Embedded 资源

java - 从 MS Azure Active Directory 获取用户组

azure - MSAL idToken 没有 upn、个人资料或电子邮件数据?需要在 idToken 中进行 Passport-azure-ad 授权

javascript - 阻止 jQuery 将整个页面返回到我的 div 中

php - 使用 MySQL 数据填充 div,将行与编号 ID 匹配

spring - 是否可以从azure应用程序设置中覆盖application.properties值

ubuntu - Ubuntu已连接AD,但无法登录

php - SSL 仅适用于网站的一半

php - 正确使用 php PDOStatment::rowCount()

python - 如何使用 python SDK 过滤 Azure 表中的特定行