環境変数を使用すると、Azure Key Vault に格納されているシークレットを参照できます。 これで、これらのシークレットを、Power Automate フローやカスタム コネクタで使用できます。 シークレットは、他のカスタマイズに対してや、一般的に API 経由では使用できないことにご注意ください。
実際のシークレットは Azure Key Vault にのみ保存され、環境変数は Key Vault のシークレット場所を参照します。 環境変数で Azure Key Vault シークレットを使用するには、Azure Key Vault を、Power Platform が参照したい特定のシークレットを読むことができるように構成する必要があります。
Azure Key Vault シークレットの環境変数を使用する – Power Apps | Microsoft Learn
以前、Azure Key Vault のコネクタ経由での接続の関連説明です。
目次
前提条件
Microsoft.PowerPlatform
リソース プロバイダーをAzureサブスクリプションに登録されている必要があります。- Key Vault へのアクセス手段は、Azure ロールベースのセキュリティが推奨です。
- Azure Key Vault内でアクセス権限をアサートするために使用される セキュリティ ロール に最近変更がありました。 前の手順には、Key Vault 閲覧者 ロールの割り当てが含まれていました。 以前にKey Vault閲覧者 ロールを使用してキー コンテナーを設定している場合は、Key Vaultシークレット ユーザー ロールを追加して、ユーザーにシークレットを取得するための十分な権限があることを確認してください。
- Azure Key Vault には、 Key Vault Secrets ユーザー ロールが Dataverse サービス プリンシパルに付与されている必要があります。 付与されていないと以下のようなメッセージが表示されます。
Dataverse サービスプリンシパルへのアクセス付与
Key Vault を選択し、Dataverse に
Power Platform ソリューションを作成する
ソリューションを作成します。
作成後、新規から環境変数を追加します。
環境変数ではシークレットを選択し、更にストアはAzure Key Vault を選択します。
以下の情報を入力します。
環境変数に入力を求められている項目は、このようにAzure Portal から取得します。
これで保存します。
環境変数を作成することができました。
クラウドフローでのKey Vault の利用
この環境変数を利用して、Key Vault を利用してみます。ソリューション内でフローを作成します。
以下のように作成します。
新しいステップを選択し、Microsoft Dataverse コネクタを選択してから、行動タブでバインドされていないアクションを実行するを選択します。
ドロップダウン リストから RetrieveEnvironmentVariableSecretValue
という名前の付いたアクションを選択します。
前のセクションで追加した環境変数の一意の名前 (表示名ではない) を指定します。
このようにすると、実行専用のユーザーに接続作成時にKey Vault 名を入力させるという手間を省くことができます。
設定から
セキュリティで保護された出力をオンにします。
ここまでできれば環境変数を経由してフローを作詞制することができました。
テストを実行してみます。
出力に値は表示されませんが、問題なく実行することができました。
Power Automate フローの共有
このフローを実行専用のユーザーに共有してみます。
実行のみのユーザーを編集します。
以下のように設定します。
KVUser はKey Vault のシークレットユーザーの権限が与えられているEntra ID のセキュリティグループです。Dataverse のバインドされたアクションへのアクセス権がない場合があるため、所有者の接続を利用しています。
KVUserに所属するユーザーから実行してみます。
ユーザーは接続を作成することなく実行することができました。
Key Vault コネクタを利用するときよりも、Key Vault 名を入力する手間がなく便利です。
以上、ご参考になれば幸いです。