시스템 할당 관리 ID
이 문서의 내용
적용 대상: Azure Database for PostgreSQL - 유연한 서버
이 문서에서는 Azure Database for PostgreSQL 유연한 서버에 대해 시스템 할당 관리 ID를 사용하거나 사용하지 않도록 설정하는 단계별 지침을 제공합니다.
기존 서버에 대해 사용하도록 설정하는 단계
Azure Portal 사용:
포털에서 서버를 찾습니다(열려 있지 않은 경우). 이 작업을 수행하는 한 가지 방법은 검색 창에 서버 이름을 입력하는 것입니다. 이름이 일치하는 리소스가 표시되면 해당 리소스를 선택합니다.
리소스 메뉴의 보안 아래에서 ID를 선택합니다 .
시스템 할당 관리 ID 섹션에서 켜기를 선택합니다 .
저장 을 선택합니다.
프로세스가 완료되면 시스템이 할당한 관리 ID를 사용하도록 설정되었다는 알림이 표시됩니다.
az postgres 유연한 서버 업데이트 명령은 시스템 할당 관리 ID를 사용하도록 설정하고 사용하지 않도록 설정하는 기본 제공 지원을 제공하지 않습니다. 해결 방법으로 az rest 명령을 사용하여 서버 - REST API 업데이트 를 직접 호출할 수 있습니다.
# Enable system assigned managed identity
subscriptionId=<subscription-id>
resourceGroup=<resource-group>
server=<server>
result=$(az postgres flexible-server show --resource-group $resourceGroup --name $server --query "identity.type" --output tsv)
if [ -z "$result" ]; then
az rest --method patch --url https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/$server?api-version=2024-08-01 --body '{"identity":{"type":"SystemAssigned"}}'
elif [ "$result" == "UserAssigned" ]; then
az rest --method patch --url https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/$server?api-version=2024-08-01 --body '{"identity":{"type":"SystemAssigned,UserAssigned"}}'
else
echo "System Assigned Managed identity is already enabled."
fi
기존 서버에 대해 사용하지 않도록 설정하는 단계
Azure Portal 사용:
포털에서 서버를 찾습니다(열려 있지 않은 경우). 이 작업을 수행하는 한 가지 방법은 검색 창에 서버 이름을 입력하는 것입니다. 이름이 일치하는 리소스가 표시되면 해당 리소스를 선택합니다.
리소스 메뉴의 보안 아래에서 ID를 선택합니다 .
시스템 할당 관리 ID 섹션에서 끄기를 선택합니다 .
저장 을 선택합니다.
프로세스가 완료되면 시스템이 할당한 관리 ID를 사용할 수 없음을 알리는 알림이 표시됩니다.
az postgres 유연한 서버 업데이트 명령은 시스템 할당 관리 ID를 사용하도록 설정하고 사용하지 않도록 설정하는 기본 제공 지원을 제공하지 않습니다. 해결 방법으로 az rest 명령을 사용하여 서버 - REST API 업데이트 를 직접 호출할 수 있습니다.
# Disable system assigned managed identity
subscriptionId=<subscription-id>
resourceGroup=<resource-group>
server=<server>
result=$(az postgres flexible-server show --resource-group $resourceGroup --name $server --query "identity.type" --output tsv)
if [ "$result" == "SystemAssigned" ]; then
az rest --method patch --url https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/$server?api-version=2024-08-01 --body '{"identity":{"type":"None"}}'
elif [ "$result" == "SystemAssigned,UserAssigned" ]; then
echo "System Assigned Managed identity cannot be disabled as the instance has User Assigned Managed identities assigned."
else
echo "System Assigned Managed identity is already disabled."
fi
현재 할당된 단계를 표시합니다.
Azure Portal 사용:
포털에서 서버를 찾습니다(열려 있지 않은 경우). 이 작업을 수행하는 한 가지 방법은 검색 창에 서버 이름을 입력하는 것입니다. 이름이 일치하는 리소스가 표시되면 해당 리소스를 선택합니다.
리소스 메뉴에서 개요를 선택합니다 .
JSON 보기 를 선택합니다.
열리는 Resource JSON 패널에서 ID 속성을 찾 은 다음, 그 안에서 시스템 할당 관리 ID에 대한 principalId 및 tenantId 를 찾을 수 있습니다.
# Show the system assigned managed identity
resourceGroup=<resource-group>
server=<server>
az postgres flexible-server identity list --resource-group $resourceGroup --server-name $server --query "{principalId:principalId, tenantId:tenantId}" --output table
Microsoft Entra ID에서 확인하는 단계
Azure Portal 사용:
열려 있지 않은 경우 포털에서 엔터프라이즈 애플리케이션 서비스를 찾습니다. 이를 수행하는 한 가지 방법은 검색 창에 이름을 입력하는 것입니다. 일치하는 이름을 가진 서비스가 표시되면 선택합니다.
애플리케이션 유형 == 관리 ID를 선택합니다 .
애플리케이션 이름 또는 개체 ID 텍스트 상자에 Azure Database for PostgreSQL 유연한 서버 인스턴스의 이름을 입력합니다.
# Verify the system assigned managed identity
server=<server>
az ad sp list --display-name $server
관련 콘텐츠