3分でわかるAzureでのService Principal

Preview:

Citation preview

1. よく理解している。それをネタに3杯呑める。

2. よく分からないけど、自動化ツールを動かすとき

に作った。やらされた感ある。

3. 何それ。食べられるの?

1

2

3

玄人

経験者

でもモヤモヤ

これからの人

Service Principal

○サービスプリンシパル

✖サービスプリンシプル

• リソースへのアクセスを必要とするアプリケーションやスクリプトがあるとき、そのプロセスを特定のユーザーの資格情報で実行すると高い確率で不都合が生じます。

• ユーザーの権限がプロセスに割り当てるべき権限と異なっていたり、ユーザーの職責が変わったりする可能性があります。

• そのような場合は、認証の資格情報とロールの割り当てを含んだアプリケーションの ID を作成します。

• アプリケーションは、その実行時に都度、この ID でログインすることになります。

リソースにアクセスするためのサービス プリンシパルを Azure CLI で作成する

API

Endpoint

MARS

API

Endpoint

JUPITER

MARS

API

Endpoint

JUPITER

MARS

• サービスプリンシパル作成時、パスワードと証明書、どちらかの認証方式を選びます

• どちらかひとつです

• サービスプリンシパルを割り当てるアプリケーションによって判断します• Azure Automation + PowerShell -> 証明書

• Terraform -> パスワード

• 多くの場合はパスワード認証(参考 https://azure.microsoft.com/ja-jp/documentation/articles/resource-group-authenticate-service-principal-cli/#-2 )

• サービスプリンシパルに対するロール、権限付与は慎重に• 「なんとなくOwner」とかしない

• 最小権限の原則

• クラウド時代、セキュリティの最優先事項はネットワークでなくID管理になりつつあります

https://azure.microsoft.com/ja-jp/documentation/articles/resource-group-

authenticate-service-principal/

Recommended