Azure サービス プリンシパル
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-戻る
--[[SPN]]
--[[Azure]] > [[RBAC>Role Based Access Control (RBAC)]]
---Azure サービス プリンシパル
---[[Azure Managed ID]]
* 目次 [#b8b9698b]
#contents
*概要 [#l4b36e5e]
-≒ [[SPN]]のAzure版
-[[Active Directory]]ではなく、[[Azure AD>Microsoft Azure...
-[[RBAC>Role Based Access Control (RBAC)]]のアクセス権を...
*詳細 [#q10c5d5a]
-Azureのリソース操作用のID
-このID(appId)は、[[Azure AD>Microsoft Azure Active Dir...
-基本は、アプリケーション用として利用する。
**認証の種類 [#y62421eb]
サービス・プリンシパルでは 2 種類の認証を使用可能。
***パスワード・ベースの認証 [#z989738b]
***証明書ベースの認証 [#z4f274de]
***[[Azure Managed ID]] [#dbb7cc81]
ラッパとして機能し、[[パスワード>#be520860]]を使用しない...
**パスワードの失効とリフレッシュ [#be520860]
***失効 [#vda440d5]
-既定では一年でパスワード(シークレット)が失効する。
-無期限に設定することも出来る模様。
***リフレッシュ [#od2fb802]
-必要に応じリフレッシュが必要になる。
-リフレッシュはパスワード(シークレット)再作成し、
-アプリケーションにパスワード(シークレット)を再設定する。
*用例 [#h6bfa378]
***オートメーション・アカウント [#k7071566]
-Azure オートメーションを利用すると、Azure リソースへの操...
--主にインフラ系操作の自動化に利用する仕組み
--オートメーション・アカウントを作成し、複数のアカウント...
--Runbook と呼ばれる仕組みで、実際に行う自動化の作業を記...
-Azure インフラ操作だけでなく、オンプレミス側へのリソース...
--[[RBAC>Role Based Access Control (RBAC)]]には、サービス...
--これにより、Runbook が実際に実行できるインフラ操作内容...
-参考
--スタンドアロン Azure Automation アカウントを作成する | ...
https://docs.microsoft.com/ja-jp/azure/automation/automat...
***[[Azure CLI]]用 [#f0ba22b5]
[[Azure CLI]]用とすれば、操作者のSubscriptionが変更されて...
>az ad sp create-for-rbac --skip-assignment
{
"appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "azure-cli-2019-12-12-08-08-32",
"name": "http://azure-cli-2019-12-12-08-08-32",
"password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
>az role assignment create --assignee "<appId>" --role R...
>az login --service-principal --username "<appId>" --pas...
-参考
--[[コチラのチュートリアル>Azure Kubernetes Service (AKS)...
--Azure CLI で Azure サービス プリンシパルを使用する | Mi...
https://docs.microsoft.com/ja-jp/cli/azure/create-an-azur...
**ストレージ系 [#re662778]
***[[Key Vault]]用 [#qbef49c9]
[[Managed ID>Azure Managed ID]]方式で、[[Key Vault]]経由...
クレデンシャルを取り出し、任意のサービスを認証する。
-参考
--Azure Key Vault 開発者ガイド | Microsoft Docs~
https://docs.microsoft.com/ja-jp/azure/key-vault/general/...
***[[Azureのストレージ]] [#bbb5dd2f]
**AKS [#rd1447fb]
***AKS制御プレーン用 [#cab71a53]
-SPN方式~
前述の[[Azure CLI用のSPN>#f0ba22b5]]を使用する。
az aks create -n myAKSCluster -g myResourceGroup --node-...
-[[Managed ID>Azure Managed ID]]方式
az aks create -n myAKSCluster -g myResourceGroup --enabl...
-参考
--[[SPN方式:実行手順>AKSクラスタ作成・操作に必要な権限#c...
--[[Managed ID方式:実行手順>AKSクラスタ作成・操作に必要...
***AKS制御プレーンのAKS ARC Pull用 [#e9e4c0d9]
-SPN方式~
前述の[[Azure CLI用のSPN>#f0ba22b5]]を使用する。
az role assignment create --assignee "<appId>" --scope "...
-[[Managed ID>Azure Managed ID]]方式~
既存の AKS クラスターに対する [[ACR>Azure Container Regis...
az aks update -n myAKSCluster -g myResourceGroup --attac...
-参考
--[[実行手順>AKSクラスタ作成・操作に必要な権限#qc2c2db1]]
--Microsoft Docs
---サービス プリンシパルでの認証~
https://docs.microsoft.com/ja-jp/azure/container-registry...
---マネージド ID による認証~
https://docs.microsoft.com/ja-jp/azure/container-registry...
***AKS制御プレーンの既存のVNET操作用 [#w59a5f58]
-SPN方式
AKS_VNET_ID=$(az network vnet show --name $AKS_VNET_NAME...
az role assignment create --assignee $AKS_SP_ID --role "...
-[[Managed ID>Azure Managed ID]]方式
AKS_VNET_ID=$(az network vnet show --name $AKS_VNET_NAME...
AKS_MANAGED_ID=$(az aks show --name $AKS_CLUSTER_NAME --...
az role assignment create --assignee $AKS_MANAGED_ID --r...
-参考
--[[実行手順>AKSクラスタ作成・操作に必要な権限#db6b9d7e]]
--Qiita
---Azure Kubernetes Serviceを別の仮想ネットワークにデプロ...
https://qiita.com/yotan/items/75a54dc60761d5b6f866
*参考 [#i5b398d6]
-3分でわかるAzureでのService Principal~
https://www.slideshare.net/ToruMakabe/3azure-service-prin...
-Azure サービス プリンシパルの作成方法 - poke_dev’s blog~
https://poke-dev.hatenablog.com/entry/2019/11/24/213704
**Microsoft Docs [#fa8daec1]
-Azure CLI で Azure サービス プリンシパルを使用する~
https://docs.microsoft.com/ja-jp/cli/azure/create-an-azur...
-Microsoft identity platform
--ポータルで Azure AD アプリとサービス プリンシパルを作成...
https://docs.microsoft.com/ja-jp/azure/active-directory/d...
--Azure アプリ ID を作成する (PowerShell)~
https://docs.microsoft.com/ja-jp/azure/active-directory/d...
----
Tags: [[:セキュリティ]], [[:アカウント]], [[:クラウド]], ...
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-戻る
--[[SPN]]
--[[Azure]] > [[RBAC>Role Based Access Control (RBAC)]]
---Azure サービス プリンシパル
---[[Azure Managed ID]]
* 目次 [#b8b9698b]
#contents
*概要 [#l4b36e5e]
-≒ [[SPN]]のAzure版
-[[Active Directory]]ではなく、[[Azure AD>Microsoft Azure...
-[[RBAC>Role Based Access Control (RBAC)]]のアクセス権を...
*詳細 [#q10c5d5a]
-Azureのリソース操作用のID
-このID(appId)は、[[Azure AD>Microsoft Azure Active Dir...
-基本は、アプリケーション用として利用する。
**認証の種類 [#y62421eb]
サービス・プリンシパルでは 2 種類の認証を使用可能。
***パスワード・ベースの認証 [#z989738b]
***証明書ベースの認証 [#z4f274de]
***[[Azure Managed ID]] [#dbb7cc81]
ラッパとして機能し、[[パスワード>#be520860]]を使用しない...
**パスワードの失効とリフレッシュ [#be520860]
***失効 [#vda440d5]
-既定では一年でパスワード(シークレット)が失効する。
-無期限に設定することも出来る模様。
***リフレッシュ [#od2fb802]
-必要に応じリフレッシュが必要になる。
-リフレッシュはパスワード(シークレット)再作成し、
-アプリケーションにパスワード(シークレット)を再設定する。
*用例 [#h6bfa378]
***オートメーション・アカウント [#k7071566]
-Azure オートメーションを利用すると、Azure リソースへの操...
--主にインフラ系操作の自動化に利用する仕組み
--オートメーション・アカウントを作成し、複数のアカウント...
--Runbook と呼ばれる仕組みで、実際に行う自動化の作業を記...
-Azure インフラ操作だけでなく、オンプレミス側へのリソース...
--[[RBAC>Role Based Access Control (RBAC)]]には、サービス...
--これにより、Runbook が実際に実行できるインフラ操作内容...
-参考
--スタンドアロン Azure Automation アカウントを作成する | ...
https://docs.microsoft.com/ja-jp/azure/automation/automat...
***[[Azure CLI]]用 [#f0ba22b5]
[[Azure CLI]]用とすれば、操作者のSubscriptionが変更されて...
>az ad sp create-for-rbac --skip-assignment
{
"appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "azure-cli-2019-12-12-08-08-32",
"name": "http://azure-cli-2019-12-12-08-08-32",
"password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
>az role assignment create --assignee "<appId>" --role R...
>az login --service-principal --username "<appId>" --pas...
-参考
--[[コチラのチュートリアル>Azure Kubernetes Service (AKS)...
--Azure CLI で Azure サービス プリンシパルを使用する | Mi...
https://docs.microsoft.com/ja-jp/cli/azure/create-an-azur...
**ストレージ系 [#re662778]
***[[Key Vault]]用 [#qbef49c9]
[[Managed ID>Azure Managed ID]]方式で、[[Key Vault]]経由...
クレデンシャルを取り出し、任意のサービスを認証する。
-参考
--Azure Key Vault 開発者ガイド | Microsoft Docs~
https://docs.microsoft.com/ja-jp/azure/key-vault/general/...
***[[Azureのストレージ]] [#bbb5dd2f]
**AKS [#rd1447fb]
***AKS制御プレーン用 [#cab71a53]
-SPN方式~
前述の[[Azure CLI用のSPN>#f0ba22b5]]を使用する。
az aks create -n myAKSCluster -g myResourceGroup --node-...
-[[Managed ID>Azure Managed ID]]方式
az aks create -n myAKSCluster -g myResourceGroup --enabl...
-参考
--[[SPN方式:実行手順>AKSクラスタ作成・操作に必要な権限#c...
--[[Managed ID方式:実行手順>AKSクラスタ作成・操作に必要...
***AKS制御プレーンのAKS ARC Pull用 [#e9e4c0d9]
-SPN方式~
前述の[[Azure CLI用のSPN>#f0ba22b5]]を使用する。
az role assignment create --assignee "<appId>" --scope "...
-[[Managed ID>Azure Managed ID]]方式~
既存の AKS クラスターに対する [[ACR>Azure Container Regis...
az aks update -n myAKSCluster -g myResourceGroup --attac...
-参考
--[[実行手順>AKSクラスタ作成・操作に必要な権限#qc2c2db1]]
--Microsoft Docs
---サービス プリンシパルでの認証~
https://docs.microsoft.com/ja-jp/azure/container-registry...
---マネージド ID による認証~
https://docs.microsoft.com/ja-jp/azure/container-registry...
***AKS制御プレーンの既存のVNET操作用 [#w59a5f58]
-SPN方式
AKS_VNET_ID=$(az network vnet show --name $AKS_VNET_NAME...
az role assignment create --assignee $AKS_SP_ID --role "...
-[[Managed ID>Azure Managed ID]]方式
AKS_VNET_ID=$(az network vnet show --name $AKS_VNET_NAME...
AKS_MANAGED_ID=$(az aks show --name $AKS_CLUSTER_NAME --...
az role assignment create --assignee $AKS_MANAGED_ID --r...
-参考
--[[実行手順>AKSクラスタ作成・操作に必要な権限#db6b9d7e]]
--Qiita
---Azure Kubernetes Serviceを別の仮想ネットワークにデプロ...
https://qiita.com/yotan/items/75a54dc60761d5b6f866
*参考 [#i5b398d6]
-3分でわかるAzureでのService Principal~
https://www.slideshare.net/ToruMakabe/3azure-service-prin...
-Azure サービス プリンシパルの作成方法 - poke_dev’s blog~
https://poke-dev.hatenablog.com/entry/2019/11/24/213704
**Microsoft Docs [#fa8daec1]
-Azure CLI で Azure サービス プリンシパルを使用する~
https://docs.microsoft.com/ja-jp/cli/azure/create-an-azur...
-Microsoft identity platform
--ポータルで Azure AD アプリとサービス プリンシパルを作成...
https://docs.microsoft.com/ja-jp/azure/active-directory/d...
--Azure アプリ ID を作成する (PowerShell)~
https://docs.microsoft.com/ja-jp/azure/active-directory/d...
----
Tags: [[:セキュリティ]], [[:アカウント]], [[:クラウド]], ...
ページ名: