1

必要な操作/アクセス許可を見つける方法。これはcreating custom rolesで行うことができます。しかし、カスタムロールを定義する際に、どのタスクが特定のタスクに必要なのかをどのように知っていますか?たとえば、自動化アカウントでpowershellスクリプト(Get-AzureKeyVaultSecretNew-AzureRmContainerGroupGet-AzureRmContextなど)内のいくつかのコマンドレットを実行する必要がある場合、これらのコマンドが実行する「アクション」を知るにはどうすればよいでしょうか?私Azureのサービスプリンシパルは、私は最小限の権限で私Azureのサービスプリンシパルをロックダウンしようとしている

Get-AzureRMProviderOperation *リスト(現在は2969年のリストをレンダリングする - を通してソートするため、わずかに圧倒的な数)、利用可能なすべてのアクション。私が必要とするものをどのようにして決定するのですか?

答えて

2

あなたはランブックのコマンドを実行するためにAzureの自動アカウントを使用する場合たとえば、
Get-AzureKeyVaultSecret、我々はそのSPのパーミッションのように与える必要があります:

Microsoft Authorizationenter image description here Microsoft AutomationMicrosoft.Automation/automationAccounts/runbooks/read

Microsoft.KeyVault必要なもの権限:

Microsoft.KeyVault/vaults/read 
Microsoft.KeyVault/vaults/secrets/read 
Microsoft.KeyVault/vaults/accessPolicies/write 

通常、各プロバイダの役割を設定できます。例えば、Microsoft.KeyVaultは、我々はSPがキーボールトを更新したり、秘密を読み取ることができ、我々はMicrosoft.KeyVault/vaults/writeMicrosoft.KeyVault/vaults/secrets/readMicrosoft.KeyVault/vaults/readを追加することができますしたいです。

PS C:\Users\jason> Get-AzureRmProviderOperation * | ?{ $_.ProviderNamespace -eq 'Microsoft Key Vault' } | select Operation, OperationName 

Operation            OperationName 
---------            ------------- 
Microsoft.KeyVault/register/action      Register Subscription 
Microsoft.KeyVault/unregister/action     Unregister Subscription 
Microsoft.KeyVault/hsmPools/read      View HSM pool 
Microsoft.KeyVault/hsmPools/write      Create or Update HSM pool 
Microsoft.KeyVault/hsmPools/delete      Delete HSM pool 
Microsoft.KeyVault/hsmPools/joinVault/action   Join KeyVault to HSM pool 
Microsoft.KeyVault/checkNameAvailability/read   Check Name Availability 
Microsoft.KeyVault/vaults/read       View Key Vault 
Microsoft.KeyVault/vaults/write       Update Key Vault 
Microsoft.KeyVault/vaults/delete      Delete Key Vault 
Microsoft.KeyVault/vaults/deploy/action     Use Vault for Azure Deployments 
Microsoft.KeyVault/vaults/secrets/read     View Secret Properties 
Microsoft.KeyVault/vaults/secrets/write     Update Secret 
Microsoft.KeyVault/vaults/accessPolicies/write   Update Access Policy 
Microsoft.KeyVault/operations/read      Available Key Vault Operations 
Microsoft.KeyVault/deletedVaults/read     View Soft Deleted Vaults 
Microsoft.KeyVault/locations/operationResults/read  Check Operation Result 
Microsoft.KeyVault/locations/deletedVaults/read   View Soft Deleted Key Vault 
Microsoft.KeyVault/locations/deletedVaults/purge/action Purge Soft Deleted Key Vault 

これが完了したら、Get-AzureKeyVaultSecretにしたいこの役割をSPに割り当てることができます。 1つのSPに多くの役割を割り当てることができます。

すべてのサービスプリンシパルはMicrosoft Authorization許可を必要とする、またはこのSPはアズールにログインしません。

通常、Azure PowerShellコマンドGetは読み取り権限が必要です。New,およびUpdateには書き込み権限が必要です。

希望します。

+1

キーボルトアクセスポリシーにSPを割り当てる必要はありませんか? :) – juunas

+1

@ juunasありがとうございます、あなたは正しいです、私たちはまだSPにキーボールトのアクセスポリシーを関連付ける必要があります。 –

+0

ええ、IAMの役割はKeyVaultのARM API側にアクセスできますが、KeyVault APIにアクセスするにはアクセスポリシーが必要です。 – juunas

関連する問題