我正在按照此页面上的示例使用powershell为我的Azure AD应用程序创建客户端密码:https://o365info.com/create-unlimited-client-secret/
它以这个命令开始:
第一个月
这给了我一个登录窗口,请求对所有应用程序的读写权限。
我没有权限(也不想拥有权限)使用我公司的所有应用程序。我只需要将客户端密码添加到我有权限的一个应用程序中。
所以我想,“好吧,我会找到只为我的一个应用程序请求作用域的方法。”但是当我查找help for my command(Add-MgApplicationPassword
)时,两个示例都请求Application.ReadWrite.All
。
我修改一个应用程序的唯一方法是授予我修改公司Azure Active Directory中所有应用程序的权限,这似乎很疯狂。
如何调用Add-MgApplicationPassword
,但只有一个应用程序的权限?
(NOTE:我可以通过UI添加这些,但我需要能够通过PowerShell自动化。
1条答案
按热度按时间fae0ux8s1#
注意:Microsoft Graph API权限不能限制为一个应用程序,因为它是为整个租户授予的。
我同意 @junnas 的说法,作为一种变通方法,您可以使用Application API权限“
Application.ReadWrite.OwnedBy
”连接到具有应用上下文的MgGraph。Application.ReadWrite.OwnedBy
权限,它允许管理此应用程序创建或拥有的应用程序。我创建了一个Azure AD应用程序和API权限,如下所示:
x1c 0d1x的数据
字符串
的
我成功创建了新应用程序:
型
的
我使用下面的PowerShell脚本将密码添加到应用程序中:
型
Client Secret已创建:
的
在Azure门户中:
x1c4d 1x的
现在,当我传递其他应用程序的ObjectID时,它不是所有者,我得到了如下错误:
型
参考文献:
作者:Hury Shen
Limit permissions to update a single Azure AD group via API - Microsoft Q&A通过ShivaniRai-MSFT