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

New-AzKeyVaultRoleDefinition

在 HSM 上创建自定义角色定义。

语法

New-AzKeyVaultRoleDefinition
   [-HsmName] <String>
   [-Scope <String>]
   [-Role] <PSKeyVaultRoleDefinition>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzKeyVaultRoleDefinition
   [-HsmName] <String>
   [-Scope <String>]
   [-InputFile] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

New-AzKeyVaultRoleDefinition cmdlet 在 Azure KeyVault 托管 HSM 的 Azure 基于角色访问控制创建自定义角色。

提供 JSON 角色定义文件或 PSKeyVaultRoleDefinition 对象作为输入。 首先,使用 Get-AzKeyVaultRoleDefinition 命令生成基线角色定义对象。 然后,根据需要修改其属性。 最后,使用此命令使用角色定义创建自定义角色。

示例

示例 1

$role = Get-AzKeyVaultRoleDefinition -HsmName myHsm -RoleDefinitionName 'Managed HSM Crypto User'
$role.Name = $null
$role.RoleName = "my custom role"
$role.Description = "description for my role"
$role.Permissions[0].DataActions = @("Microsoft.KeyVault/managedHsm/roleAssignments/write/action", "Microsoft.KeyVault/managedHsm/roleAssignments/delete/action") # todo
New-AzKeyVaultRoleDefinition -HsmName myHsm -Role $role

此示例使用预定义的“托管 HSM 加密用户”角色作为模板创建自定义角色。

示例 2

Get-AzKeyVaultRoleDefinition -HsmName myHsm -RoleDefinitionName 'Managed HSM Crypto User' | ConvertTo-Json -Depth 9 > C:\Temp\roleDefinition.json
# Edit roleDefinition.json. Make sure to clear "Name" so as not to overwrite an existing role.
New-AzKeyVaultRoleDefinition -HsmName myHsm -InputFile C:\Temp\roleDefinition.json

此示例使用 JSON 文件作为自定义角色的输入。

参数

-Confirm

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

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

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

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HsmName

HSM 的名称。

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-InputFile

包含单个角色定义的文件名。

Type:String
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Role

角色定义对象。

Type:PSKeyVaultRoleDefinition
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Scope

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

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

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

None

输出

PSKeyVaultRoleDefinition