我正在尝试使用bash脚本在Microsoft AD中使用Microsoft /beta/applications
端点在Azure AD中注册应用程序。
要调用/applications
,我需要获取访问令牌。
是否可以仅使用电子邮件地址/密码获取Microsoft Graph的访问令牌(没有client-id
)?我正在寻找OAUTH2规范中提到的“资源所有者密码凭证授权流程”。
我可以研究其他任何替代方案。我想编写一个简单的脚本来管理应用程序注册以及将来对应用程序的任何更新。
答案 0 :(得分:1)
是的,有几种方法可以在没有用户存在的情况下针对Microsoft Graph API运行脚本:
您在问题中描述的AD supports the resource owner credential grant。此流程不支持某些新的身份验证功能,例如multifactor auth,您必须非常小心安全地存储凭据。
另一种选择是使用V2 auth client credential flow。在这种情况下,租户管理员代表租户同意该申请。之后,应用程序可以在没有用户在场的情况下运行。与V1 资源所有者凭据授予相反,此流程的一个好处是您传递了一个客户端凭据,如果需要可以撤销并重新生成(而不是处理原始用户凭据)。