Azure AD サービス プリンシパルを使用して、サブスクリプション内のクラスターを管理するためのアクセス許可を Azure CycleCloud に付与できます。 このアプローチは、 マネージド ID を使用する代わりに機能します。
一般に、サービス プリンシパルではなく 、システム割り当て ID または User-Assigned マネージド ID のいずれかを 使用してこれらのアクセス許可を付与することをお勧めします。
サービス プリンシパルを作成する
Azure CycleCloud には、Azure サブスクリプションを管理する権限を持つサービス プリンシパルが必要です。 サービス プリンシパルがない場合は、次の例に示すように、Azure CLI を使用してサービス プリンシパルを作成できます。
注
サービス プリンシパル名は一意である 必要があります 。 次の例では、 CycleCloudApp を 一意の名前に置き換える必要があります。 コマンドを既存の名前で実行すると、既存のサービス プリンシパルが置き換えられ、無効になります。
az ad sp create-for-rbac --name CycleCloudApp --years 1
出力には一連の情報が表示されます。 appId
、password
、tenant
の値を保存します。
"appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "CycleCloudApp",
"name": "http://CycleCloudApp",
"password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
権限
十分なアクセス権を持つ最も簡単なオプションは、サブスクリプションの共同作成者ロールを新しい CycleCloud サービス プリンシパルに割り当てることです。 ただし、共同作成者ロールの特権レベルは、CycleCloud が必要とするよりも高くなります。 代わりに、 カスタム ロール を作成して VM に割り当てることができます。
マネージド ID ガイドには、サービス プリンシパルに対する適切な低い特権の AD ロールの作成に関する詳細が記載されています。
サービス プリンシパルを使用して CycleCloud にアクセス許可を付与するには、必ず [アプリの登録 ] オプションを選択します。
サブスクリプションマネージド ID の追加