Azure创建servicePrincipal导致权限不足,无法完成操作

时间:2019-11-12 16:37:25

标签: azure-active-directory

我正在尝试使用azure cli v2.0使用以下命令创建新的服务主体。

az ad sp create-for-rbac --name ServicePrincipalName
Changing "ServicePrincipalName" to a valid URI of "http://ServicePrincipalName", which is the required format used for service principal names
Found an existing application instance of "abcd-8f27-47cf-9976-xkkfigif5e1de". We will patch it
Insufficient privileges to complete the operation.

我不确定承租人的Azure管理员应为我的用户分配哪些特权,以便我可以创建任何任何准则或文档指针的servicePrincipal

1 个答案:

答案 0 :(得分:0)

首先,您必须知道此命令将执行的操作。命令az ad sp create-for-rbac --name ServicePrincipalName将在您的租户中创建一个AD App(应用程序注册)以及服务主体,该AD App将具有一个名为Application ID URI的{​​{1}}和一个名为http://ServicePrincipalName的{ Display name。然后,该命令会将服务主体作为ServicePrincipalName添加到您的订阅中。

您得到的错误意味着您的租户中已经存在一个Contributor等于Application ID URI的AD应用程序。而且您不是AD App的http://ServicePrincipalName。 (请注意:在租户中,Owner不是唯一的,但Display name是唯一的。)

要解决此问题并成功使用此命令,请遵循以下提示。

1。将Application ID URI更改为其他值。 (或者,如果您的管理员允许您使用上面提到的现有AD App,请让他将您的用户帐户作为ServicePrincipalName添加到AD App中。-不推荐)

2。如果您帐户的Owner只是租户中的User type。确保在门户网站-> AAD-> Member-> User settings中是Users can register applications。如果您的帐户是Yes,除了Guest必须是Users can register applications,还需要Yes-> User settings-> External collaboration settings Guest users permissions are limited

3。您的用户帐户应为订阅的No。否则,您可以成功创建服务主体,但是不能将其添加到订阅中。