繁体   English   中英

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

[英]Connect to Azure Active Directory from PHP web application

为了获得关于这个主题的指导,因为我真的坚持这个,我有一个PHP的应用程序的内部URL,我想连接到Azure Active Directory。

到目前为止,我已经回顾了微软使用SimpleSAML的一个例子,但它确实已经过时了,我在为新的SimpleSAMl代码调整它时遇到了麻烦。

有没有更好的方法将Web应用程序与Azure AD集成? 我在某个地方读过我可以使用的入门移动服务,但我想听听之前的经验,了解使用Azure AD登录PHP的最佳/最新方法是什么?

- 编辑 -

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

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

要在PHP Web应用程序中集成Azure AD,我们需要遵循授权代码授予流程步骤来构建多个自定义HTTP请求。 EG要通过OAuth 2.0协议获取访问令牌,我们应该参考授权代码授权流程的步骤,通常,我们将构建2个HTTP请求来获取访问令牌:

1,申请授权码 在此输入图像描述

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

2,使用授权码来请求访问令牌: 在此输入图像描述

然后,我们可以使用访问令牌将请求的Authorization标头中带有“Bearer”标识的JWT字符串添加到资源Web API。

这是Azure提供的PHP测试项目供您参考。

我们正在将AD迁移到Azure AD,我们希望对内部Web应用程序提供SSO支持,这样当他们登录到他们的PC时,使用azure app proxy并在PHP Web应用程序上自动签名。 这可能吗?

@Vladimir,根据我的经验,这是可能的。 您可以参考一些场景 您可能需要使用Azure AD Connect将本地AD同步到Azure AD,并启用Azure AD SSO以在您的方案中与您的php应用程序集成。

首先,如果要在Azure AD上集成内部部署AD,则应使用Azure AD Connect工具,该工具用于将AD同步到Azure AD。 请参阅本教程视频 对于此操作,您需要具有IT管理员权限。

其次,您需要在Azure门户上使用联合单点登录和其他方法。 您可能需要像以下视频一样配置PHP应用程序: https//channel9.msdn.com/Blogs/Open/Using-SimpleSAML-to-authenticate-PHP-applications-with-Azure-AD 如果您想获取用户信息,您可能需要使用Azure Graph API作为Gary的帖子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM