gpt4 book ai didi

Azure AD - 以编程方式创建新的服务主体

转载 作者:行者123 更新时间:2023-12-02 23:43:33 25 4
gpt4 key购买 nike

我正在编写一个 python 脚本来预配和配置 Azure 服务。我想提供一个新的服务主体作为我的脚本的一部分,但存在权限问题。如果我在终端中运行此命令(在 azure 登录之后),它将创建服务主体:

az ad sp create-for-rbac --name Testapp

我想实现相同的目标,但是在我的 python 脚本中,我使用现有的服务主体进行资源配置。我正在调用的电话如下:

call("az login --service-principal -u '%s' -p '%s' --tenant '%s'" % (args.client_id, args.client_sec, args.tenant_id), shell=True)
call("az ad sp create-for-rbac --name TestServicePrincipal", shell=True)

参数是现有服务主体的凭据。此服务主体已经是该订阅的所有者,如您在此处看到的:

enter image description here

运行我的 python 脚本时,我确实可以正常登录(也可以使用这些凭据通过脚本提供大量其他资源),但在创建 SP 帐户时我会收到权限错误,如下所示:

synergies git:(master) ✗ python test.py -c 'testcustomer' -l 'eastus' -sid '1234' -cs '1234' -cid '1234' -tid '1234'
[
{
"cloudName": "AzureCloud",
"id": "1234",
"isDefault": true,
"name": "Free Trial",
"state": "Enabled",
"tenantId": "1234",
"user": {
"name": "1234",
"type": "servicePrincipal"
}
}
]
Changing "TestServicePrincipal" to a valid URI of "http://TestServicePrincipal", which is the required format used for service principal names
Insufficient privileges to complete the operation.

任何建议都将受到高度赞赏!

最佳答案

我已经解决了。您需要为您的 sp 分配全局管理员 角色。 注意:这需要几分钟才能生效

enter image description here

关于Azure AD - 以编程方式创建新的服务主体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56408340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com