将laravel应用程序与MS Active Directory集成,但限制可以访问的用户
我有一个自定义应用程序,仅在当前用户由超级管理员创建的情况下供内部使用。有些用户来自企业内部,有些用户来自外部,例如供应商/客户 我正在寻找一种将MS Active Directory集成为登录选项的方法,但希望能够限制哪些业务用户可以实际使用此方法 我已经搜索了所有MS文档,并且有关于不同oauth方法的所有文档,但不确定哪一种适合我的需要 我在想,也许我需要给管理员一种方式来浏览广告,并选择可以登录的用户,然后在mysql数据库中创建具有某种MS用户ID的非活动用户帐户。然后提供一个“使用MS登录”按钮,该按钮执行到MS并返回站点的常规身份验证重定向过程。在这一点上,我可以检查一个ID,如果该ID与允许的用户帐户匹配,如果匹配,则同步其余数据,例如姓名、电子邮件、电话等 我已经找到了以下链接:将laravel应用程序与MS Active Directory集成,但限制可以访问的用户,laravel,azure,active-directory,azure-active-directory,office365,Laravel,Azure,Active Directory,Azure Active Directory,Office365,我有一个自定义应用程序,仅在当前用户由超级管理员创建的情况下供内部使用。有些用户来自企业内部,有些用户来自外部,例如供应商/客户 我正在寻找一种将MS Active Directory集成为登录选项的方法,但希望能够限制哪些业务用户可以实际使用此方法 我已经搜索了所有MS文档,并且有关于不同oauth方法的所有文档,但不确定哪一种适合我的需要 我在想,也许我需要给管理员一种方式来浏览广告,并选择可以登录的用户,然后在mysql数据库中创建具有某种MS用户ID的非活动用户帐户。然后提供一个“使用M
如果您想这样做,超级管理员必须在AAD中始终具有此权限。在我看来,这不太实际 我会在服务负责人的帮助下完成这样的应用程序分配。您将角色(查找应用程序角色)分配给用户,然后您的业务逻辑必须决定用户拥有哪些权限。如果要使用应用程序角色功能,则可以在其帮助下限制对角色的访问。所有用户都可以登录,但只有具有特定角色的用户才能查看应用程序的内容
我希望这些提示有助于找到正确的方向,但没有银弹解决方案…:/ 您的首要任务是让用户能够登录基于Laravel的应用程序。为此,我强烈建议不要尝试重新发明轮子(至少不完全),而是使用现有的Laravel软件包。可能是最好的开始,因为它有一个很长的现有列表,包括三个已经可以与Azure广告一起使用的:和。(注意:虽然我自己没有测试过其中任何一个,但前两个似乎最有希望,因为它们使用了较新的v2端点。) 在授权(控制访问)方面,您有两种选择:
实际上,您很可能会发现最好的方法是将两者结合使用,其中一部分授权由Azure AD强制执行,下一级授权由应用程序本身强制执行。您能否确认您正在寻找使用内部部署的Active Directory或Azure Active Directory(云服务)登录的用户?Azure Active Directory谢谢,这确实有助于澄清问题,我能够从MS github repo中获得示例代码。