你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

New-AzKeyVaultRoleAssignment

在指定范围内将指定的 RBAC 角色分配给指定的主体。

语法

New-AzKeyVaultRoleAssignment
   [-HsmName] <String>
   [-Scope <String>]
   -RoleDefinitionName <String>
   -SignInName <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzKeyVaultRoleAssignment
   [-HsmName] <String>
   [-Scope <String>]
   -RoleDefinitionName <String>
   -ApplicationId <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzKeyVaultRoleAssignment
   [-HsmName] <String>
   [-Scope <String>]
   -RoleDefinitionName <String>
   -ObjectId <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzKeyVaultRoleAssignment
   [-HsmName] <String>
   [-Scope <String>]
   -RoleDefinitionId <String>
   -ApplicationId <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzKeyVaultRoleAssignment
   [-HsmName] <String>
   [-Scope <String>]
   -RoleDefinitionId <String>
   -ObjectId <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzKeyVaultRoleAssignment
   [-HsmName] <String>
   [-Scope <String>]
   -RoleDefinitionId <String>
   -SignInName <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

New-AzKeyVaultRoleAssignment使用命令授予访问权限。 通过将适当的 RBAC 角色分配到适当的范围授予访问权限。 必须指定工作分配的主题。 若要指定用户,请使用 SignInName 或 Microsoft Entra ObjectId 参数。 若要指定安全组,请使用 Microsoft Entra ObjectId 参数。 若要指定 Microsoft Entra 应用程序,请使用 ApplicationId 或 ObjectId 参数。 必须使用 RoleDefinitionName pr RoleDefinitionId 参数指定所分配的角色。 可以指定授予访问权限的范围。 默认为所选订阅。

cmdlet 可以根据输入参数调用以下Microsoft图形 API:

  • GET /directoryObjects/{id}
  • GET /users/{id}
  • GET /servicePrincipals/{id}
  • GET /servicePrincipals
  • GET /groups/{id}

示例

示例 1

New-AzKeyVaultRoleAssignment -HsmName bez-hsm -RoleDefinitionName "Managed Hsm Crypto User" -ObjectId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

本示例将角色“Managed Hsm Crypto User”分配给顶部范围内的用户“xxxxx-xxxx-xxxx-xxxx-xxxxxxxxx”。 如果用户想要对密钥执行操作。 该用户需要“托管 Hsm Crypto *”角色。

示例 2

New-AzKeyVaultRoleAssignment -HsmName myHsm -RoleDefinitionName "Managed HSM Policy Administrator" -SignInName user1@microsoft.com

RoleDefinitionName               DisplayName                    ObjectType Scope
------------------               -----------                    ---------- -----
Managed HSM Policy Administrator User 1 (user1@microsoft.com)   User       /

本示例将角色“托管 HSM 策略管理员”分配给顶部范围内的用户“user1@microsoft.com”。

参数

-ApplicationId

应用 SPN。

类型:String
别名:SPN, ServicePrincipalName
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

类型:IAzureContextContainer
别名:AzContext, AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-HsmName

HSM 的名称。

类型:String
Position:1
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-ObjectId

用户或组对象 ID。

类型:String
别名:Id, PrincipalId
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-RoleDefinitionId

将主体分配到的角色 ID。

类型:String
别名:RoleId
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-RoleDefinitionName

要为其分配主体的 RBAC 角色的名称。

类型:String
别名:RoleName
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Scope

角色分配或定义应用于的范围,例如“/”或“/keys”或“/keys/{keyName}”。 省略时使用“/”。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SignInName

用户 SignInName。

类型:String
别名:Email, UserPrincipalName
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

None

输出

PSKeyVaultRoleAssignment