ごった煮

色々な事を書いてます

Managed Identity に繋がったアプリをローカルデバッグしたい

Azure のサービスに繋ぎに行くとき、Managed Identity を使ってセキュアに接続する方法がありますが、ローカルで動かしたいときは、少しややこしいのでメモとして残します

ローカルで Managed Identity に繋ぐ

因みに今回は、Azure Appn Configuration を例に出します。

用意するもの

Azure のアカウントに Managed Identity での接続を許可する

まず Azure のアカウントに権限を付与します。 Managed Identity で接続したいサービスの IAM > Role Assaignments > Add role assaignment を選択します。 f:id:papemk2:20200129135658p:plain

次に設定するロールを選択します。 App Configuration の場合は、App Configuration Data Reader で大丈夫です

f:id:papemk2:20200129140521p:plain

Assign access to は、Azure AD User, group, or service principal を選択します。

Visual Studio を設定する

ローカルから Managed Identity で繋ぐ場合の認証情報は、Visual Studio に設定されている認証情報を使用します。 そのため Visual Studio でログインしている MSアカウント or 組織アカウント に Managed Identity でリソースにアクセスする権限が付与されていれば、そのまま接続されます。

先ほど権限を付与したアカウントで Visual Studio にログイン出来る場合は、これで繋がるようになるはずです。

権限を付与したアカウントと Visual Studio のライセンスを持っているアカウントが異なる場合は、別の方法で設定します。

Visual Studio の Tools > Options > Azure Service Authentication の項目に移動します。

f:id:papemk2:20200129140938p:plain

この部分は、デフォルトで Visual Studio のログインに使用しているアカウントが選択されます。 なのでここで先ほど権限付与を行ったアカウントを選択 or 登録すると Visual Studio のログイン用アカウントと Azure との接続に使用するアカウント情報を別々にすることが出来ます。

まとめ

Managed Identity は、かなり便利なので活用してみましょう