운영자 Nexus에서 관리 자격 증명 회전을 위한 Key Vault 설정

Azure 운영자 Nexus는 비밀 및 인증서를 활용하여 플랫폼 전체에서 구성 요소 보안을 관리합니다. 운영자 Nexus 플랫폼은 이러한 비밀 및 인증서의 회전을 처리합니다. 기본적으로 연산자 Nexus는 자격 증명을 관리되는 Key Vault에 저장합니다. 회전된 자격 증명을 자체 Key Vault에 유지하려면 사용자가 Azure 운영자 Nexus 인스턴스에 대한 Key Vault를 설정해야 합니다. 만든 후에는 운영자 Nexus 플랫폼이 업데이트된 자격 증명을 작성할 수 있도록 고객 Key Vault에 역할 할당을 추가하고 고객 키 자격 증명 모음을 Nexus 클러스터 리소스에 연결해야 합니다.

필수 조건

참고 항목

단일 Key Vault는 임의의 수의 클러스터에 사용할 수 있습니다.

클러스터 관리자에 대한 관리 ID 구성

2024-06-01-public-preview API부터 관리 ID는 클러스터 관리자에서 키 자격 증명 모음에 회전된 자격 증명에 대한 쓰기 액세스를 위해 사용됩니다. 클러스터 관리자 ID는 시스템 할당 또는 사용자 할당일 수 있으며 API 또는 CLI를 통해 직접 관리할 수 있습니다.

다음 예제에서는 클러스터 관리자에 대한 관리 ID를 구성하는 방법을 설명합니다.

  • 시스템 할당 ID를 사용하여 클러스터 관리자 만들기 또는 업데이트
        az networkcloud clustermanager create --name "clusterManagerName" --location "location" \
        --analytics-workspace-id "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName" \
        --fabric-controller-id "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName" \
        --managed-resource-group-configuration name="my-managed-rg" --tags key1="myvalue1" key2="myvalue2" --resource-group "resourceGroupName" --mi-system-assigned
  • 사용자 할당 ID를 사용하여 클러스터 관리자 만들기 또는 업데이트
        az networkcloud clustermanager create --name <Cluster Manager Name> --location <Location> \
        --analytics-workspace-id "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName" \
        --fabric-controller-id "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName" \
        --managed-resource-group-configuration name="my-managed-rg" --tags key1="myvalue1" key2="myvalue2" \
        --resource-group <Resource Group Name> --mi-user-assigned "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAI"
  • 클러스터 관리자에 시스템 할당 ID 추가
        az networkcloud clustermanager update --name <Cluster Manager Name> --resource-group <Resource Group Name> --mi-system-assigned
  • 클러스터 관리자에 사용자 할당 ID 추가
        az networkcloud clustermanager update --name <Cluster Manager Name> --resource-group <Resource Group Name> \
        --mi-user-assigned "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAI"

관리 ID의 보안 주체 ID 가져오기

관리 ID가 구성되면 CLI를 사용하여 클러스터 관리자 내에서 ID 및 관련 보안 주체 ID 데이터를 봅니다.

예시:

az networkcloud clustermanager show --ids /subscriptions/<Subscription ID>/resourceGroups/<Cluster Manager Resource Group Name>/providers/Microsoft.NetworkCloud/clusterManagers/<Cluster Manager Name>

시스템 할당 ID 예제:

    "identity": {
        "principalId": "2cb564c1-b4e5-4c71-bbc1-6ae259aa5f87",
        "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47",
        "type": "SystemAssigned"
    },

사용자 할당 ID 예제:

    "identity": {
        "type": "UserAssigned",
        "userAssignedIdentities": {
            "/subscriptions/<subscriptionID>/resourcegroups/<resourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<userAssignedIdentityName>": {
                "clientId": "e67dd610-99cf-4853-9fa0-d236b214e984",
                "principalId": "8e6d23d6-bb6b-4cf3-a00f-4cd640ab1a24"
            }
        }
    },

Key Vault 액세스에 앱 ID 사용

Important

고객 Key Vault 액세스에 대한 앱 ID 사용은 더 이상 사용되지 않으며 향후 버전에서 지원이 제거될 예정입니다. 관리 ID 보안 주체를 사용하는 것이 좋습니다.

다음 애플리케이션 ID는 관리 ID 대신 Key Vault에 대한 액세스 권한을 부여합니다.

  • Microsoft.NetworkCloud 리소스 공급자가 고객 구독에 등록되어 있는지 확인합니다.
az provider register --namespace 'Microsoft.NetworkCloud' --subscription <Subscription ID>
  • 키 자격 증명 모음에 대한 역할 액세스 권한이 할당된 경우 다음 앱 ID를 주 ID로 사용합니다.
Environment 앱 이름 앱 ID
생산 AFOI-NC-RP-PME-PROD 05cf5e27-931d-47ad-826d-cb9028d8bd7a
생산 AFOI-NC-MGMT-PME-PROD 3365d4ea-bb16-4bc9-86dd-f2c8cf6f1f56

Nexus 클러스터의 고객 Key Vault에 자격 증명 업데이트 작성

  • 운영자 Nexus Key Vault 기록기 서비스 역할을 할당합니다. Azure 역할 기반 액세스 제어가 Access 구성 보기에서 키 자격 증명 모음에 대한 권한 모델로 선택되어 있는지 확인합니다. 그런 다음 Access Control 보기에서 역할 할당을 추가하려면 선택합니다.
역할 이름 역할 정의 ID
운영자 Nexus Key Vault 기록기 서비스 역할(미리 보기) 44f0a1a8-6fea-4b35-980a-8ff50c487c97

예시:

az role assignment create --assignee <Managed Identity Principal Id> --role 44f0a1a8-6fea-4b35-980a-8ff50c487c97 --scope /subscriptions/<Subscription ID>/resourceGroups/<Resource Group Name>/providers/Microsoft.KeyVault/vaults/<Key Vault Name>
  • 사용자는 Customer Key Vault를 운영자 Nexus 클러스터와 연결합니다. 키 자격 증명 모음 리소스 ID는 클러스터에서 구성하고 클러스터의 비밀을 저장할 수 있도록 설정해야 합니다.

예시:

# Set and enable Customer Key Vault on Nexus cluster
az networkcloud cluster update --ids /subscriptions/<subscription ID>/resourceGroups/<Resource Group Name>/providers/Microsoft.NetworkCloud/clusters/<Nexus Cluster Name> --secret-archive "{key-vault-id:<Key Vault Resource ID>,use-key-vault:true}"

# Show Customer Key Vault setting (secretArchive) on the Nexus cluster
az networkcloud cluster show --ids /subscriptions/<subscription ID>/resourceGroups/<Resource Group Name>/providers/Microsoft.NetworkCloud/clusters/<Nexus Cluster Name> --query secretArchive

사용자 할당 ID에 권한 추가

사용자 할당 ID를 사용하는 경우 UAI 리소스에 다음 역할 할당을 추가합니다.

  1. Azure Portal을 열고 해당 사용자 할당 ID를 찾습니다.
  2. 액세스 제어(IAM)에서 역할 할당 추가를 클릭합니다.
  3. 역할 선택: 관리 ID 연산자입니다. (역할에서 관리 ID 연산자를 제공하는 사용 권한을 참조하세요).
  4. 사용자, 그룹 또는 서비스 주체에 대한 액세스 권한을 할당합니다.
  5. 멤버 선택: AFOI-NC-MGMT-PME-PROD 애플리케이션.
  6. 검토하고 할당합니다.

추가 도움말:

az networkcloud cluster update --secret-archive ?? --help