Microsoft を使用してプログラムで Azure KeyVault シークレットを作成しようとしています。Azure.KeyVault.KeyVaultClient. 私の目的のために、Azure AD アプリケーションとして証明書で認証する認証トークンを取得しています。Azure AD アプリケーションのマニフェストには、既に証明書情報が含まれています。
私のコードは、Azure AD アプリケーションのオブジェクト ID に対するシークレットとキーの両方に "すべて" のアクセス許可を与える Azure KeyVault を作成します。Powershell を使用して KeyVault を取得し、アクセス ポリシーを調べて、これが発生したことを確認しました。
KeyVaultClient.SetSecretAsync() を使用してこの KeyVault でシークレットを作成しようとすると、「Operation 'set' is not allowed.」という例外が発生します。ステータス コードは「禁止」です。
KeyVault に設定されたアクセス許可以外に、他のもの (Azure AD アプリケーションなど) に対する他のアクセス許可を確認する必要はありますか?