기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Azure 리소스 연결
Azure 리소스 통합을 통해 AWS DevOps Agent는 인시던트 조사 중에 Azure 구독의 리소스를 검색하고 조사할 수 있습니다. 에이전트는 리소스 검색에 Azure 리소스 그래프를 사용하며 Azure 환경 전반의 지표, 로그 및 구성 데이터에 액세스할 수 있습니다.
이 통합은 AWS 계정 수준에서 Azure를 등록한 다음 특정 Azure 구독을 개별 에이전트 스페이스와 연결하는 2단계 프로세스를 따릅니다.
사전 조건
Azure 리소스를 연결하기 전에 다음이 있는지 확인합니다.
AWS DevOps 에이전트 콘솔에 대한 액세스
대상 구독에 액세스할 수 있는 Azure 계정
관리자 동의 방법의 경우: Microsoft Entra ID에서 관리자 동의를 수행할 권한이 있는 계정
앱 등록 방법의 경우: 페더레이션 자격 증명을 구성할 수 있는 권한이 있는 Entra 애플리케이션 및 AWS 계정에서 활성화된 아웃바운드 자격 증명 페더레이션
관리자 동의를 통한 Azure 리소스 등록
관리자 동의 메서드는 AWS DevOps 에이전트 관리형 애플리케이션과 함께 동의 기반 흐름을 사용합니다.
1단계: 등록 시작
AWS Management Console에 로그인하고 AWS DevOps 에이전트 콘솔로 이동합니다.
기능 공급자 페이지로 이동
Azure 클라우드 섹션을 찾아 등록을 클릭합니다.
관리자 동의 등록 방법 선택
2단계: 관리자 동의 완료
요청 중인 권한 검토
계속하려면 클릭 - Microsoft Entra 관리자 동의 페이지로 리디렉션됩니다.
관리자 동의를 수행할 권한이 있는 사용자 보안 주체 계정으로 로그인
AWS DevOps 에이전트 애플리케이션 검토 및 동의 부여
3단계: 사용자 권한 부여 완료
관리자 동의 후 권한 있는 테넌트의 멤버 자격 증명을 확인하기 위한 사용자 권한 부여 메시지가 표시됩니다.
동일한 Azure 테넌트에 속한 계정으로 로그인
권한 부여 후 성공 상태의 AWS DevOps 에이전트 콘솔로 다시 리디렉션됩니다.
4단계: 역할 할당
아래 Azure 역할 할당을 참조하세요. 멤버를 선택할 때 AWS DevOps 에이전트를 검색합니다.
앱 등록을 통해 Azure 리소스 등록
앱 등록 메서드는 페더레이션 자격 증명이 있는 자체 Entra 애플리케이션을 사용합니다.
1단계: 등록 시작
AWS DevOps 에이전트 콘솔에서 기능 공급자 페이지로 이동합니다.
Azure 클라우드 섹션을 찾아 등록을 클릭합니다.
앱 등록 방법 선택
2단계: Entra 애플리케이션 생성 및 구성
콘솔에 표시된 지침에 따라 다음을 수행합니다.
AWS 계정에서 아웃바운드 자격 증명 연동 활성화(IAM 콘솔에서 계정 설정 → 아웃바운드 자격 증명 연동으로 이동)
Microsoft Entra ID에서 Entra 애플리케이션을 생성하거나 기존 애플리케이션을 사용합니다.
애플리케이션에서 페더레이션 자격 증명 구성
3단계: 등록 세부 정보 제공
등록 양식에 다음을 입력합니다.
테넌트 ID - Azure 테넌트 식별자
테넌트 이름 - 테넌트의 표시 이름입니다.
클라이언트 ID - 생성한 Entra 애플리케이션의 애플리케이션(클라이언트) ID입니다.
대상 - 페더레이션 자격 증명의 대상 식별자입니다.
4단계: IAM 역할 생성
콘솔을 통해 등록을 제출하면 IAM 역할이 자동으로 생성됩니다. 이를 통해 AWS DevOps 에이전트는 자격 증명을 수임하고를 호출할 수 있습니다sts:GetWebIdentityToken.
5단계: 역할 할당
아래 Azure 역할 할당을 참조하세요. 멤버를 선택할 때 생성한 Entra 애플리케이션을 검색합니다.
6단계: 등록 완료
AWS DevOps 에이전트 콘솔에서 구성 확인
제출을 클릭하여 등록을 완료합니다.
Azure 역할 할당
등록 후 애플리케이션에 Azure 구독에 대한 읽기 액세스 권한을 부여합니다. 이 단계는 관리자 동의 및 앱 등록 방법 모두에서 동일합니다.
Azure 포털에서 대상 구독으로 이동합니다.
액세스 제어(IAM)로 이동
추가 > 역할 할당 추가를 클릭합니다.
독자 역할을 선택하고 다음을 클릭합니다.
멤버 선택을 클릭하고 애플리케이션(관리자 동의용 AWS DevOps 에이전트 또는 앱 등록용 자체 Entra 애플리케이션)을 검색합니다.
애플리케이션을 선택하고 검토 + 할당을 클릭합니다.
(선택 사항) 에이전트가 Azure Kubernetes Service(AKS) 클러스터에 액세스할 수 있도록 하려면 다음 AKS 액세스 설정을 완료합니다.
AKS 액세스 설정(선택 사항)
1단계: Azure Resource Manager(ARM) 수준 액세스
Azure Kubernetes 서비스 클러스터 사용자 역할을 애플리케이션에 할당합니다.
Azure 포털에서 구독 → 구독 선택 → 액세스 제어(IAM) → 역할 할당 추가 → Azure Kubernetes 서비스 클러스터 사용자 역할 선택 → 애플리케이션에 할당(관리자 동의용 AWS DevOps 에이전트 또는 앱 등록용 자체 Entra 애플리케이션)으로 이동합니다.
여기에는 구독의 모든 AKS 클러스터가 포함됩니다. 특정 클러스터로 범위를 지정하려면 대신 리소스 그룹 또는 개별 클러스터 수준에서를 할당합니다.
2단계: Kubernetes API 액세스
클러스터의 인증 구성을 기반으로 한 가지 옵션을 선택합니다.
옵션 A: Kubernetes용 Azure 역할 기반 액세스 제어(RBAC)(권장)
아직 활성화되지 않은 경우 클러스터에서 Azure RBAC 활성화: Azure 포털 → AKS 클러스터 → 설정 → 보안 구성 → 인증 및 권한 부여 → Azure RBAC 선택
읽기 전용 역할 할당: Azure 포털 → 구독 → 구독 선택 → 액세스 제어(IAM) → 역할 할당 추가 → Azure Kubernetes Service RBAC Reader 선택 → 애플리케이션에 할당
여기에는 구독의 모든 AKS 클러스터가 포함됩니다.
옵션 B: Azure Active Directory(Azure AD) + Kubernetes RBAC
클러스터가 이미 기본 Azure AD 인증 구성을 사용하고 Azure RBAC를 활성화하지 않으려는 경우이 옵션을 사용합니다. 이를 위해서는 클러스터당 kubectl 설정이 필요합니다.
다음 매니페스트를 로 저장합니다
devops-agent-reader.yaml.
apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: devops-agent-reader rules: - apiGroups: [""] resources: ["namespaces", "pods", "pods/log", "services", "events", "nodes"] verbs: ["get", "list"] - apiGroups: ["apps"] resources: ["deployments", "replicasets", "statefulsets", "daemonsets"] verbs: ["get", "list"] - apiGroups: ["metrics.k8s.io"] resources: ["pods", "nodes"] verbs: ["get", "list"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: devops-agent-reader-binding subjects: - kind: User name: "<SERVICE_PRINCIPAL_OBJECT_ID>" apiGroup: rbac.authorization.k8s.io roleRef: kind: ClusterRole name: devops-agent-reader apiGroup: rbac.authorization.k8s.io
를 서비스 보안 주체의 객체 ID
<SERVICE_PRINCIPAL_OBJECT_ID>로 바꿉니다. 이를 찾으려면 Azure 포털 → Entra ID → 엔터프라이즈 애플리케이션 → 애플리케이션 이름(관리자 동의용 AWS DevOps 에이전트 또는 앱 등록용 자체 Entra 애플리케이션)을 검색합니다.각 클러스터에 적용:
az aks get-credentials --resource-group <rg> --name <cluster-name> kubectl apply -f devops-agent-reader.yaml
최소 권한 사용자 지정 역할(선택 사항)
더 엄격한 액세스 제어를 위해 광범위한 리더 역할 대신 AWS DevOps 에이전트가 사용하는 리소스 공급자로만 범위가 지정된 사용자 지정 Azure 역할을 생성할 수 있습니다.
{ "Name": "AWS DevOps Agent - Azure Reader", "Description": "Least-privilege read-only access for AWS DevOps Agent incident investigations.", "Actions": [ "Microsoft.AlertsManagement/*/read", "Microsoft.Compute/*/read", "Microsoft.ContainerRegistry/*/read", "Microsoft.ContainerService/*/read", "Microsoft.ContainerService/managedClusters/commandResults/read", "Microsoft.DocumentDB/*/read", "Microsoft.Insights/*/read", "Microsoft.KeyVault/vaults/read", "Microsoft.ManagedIdentity/*/read", "Microsoft.Monitor/*/read", "Microsoft.Network/*/read", "Microsoft.OperationalInsights/*/read", "Microsoft.ResourceGraph/resources/read", "Microsoft.ResourceHealth/*/read", "Microsoft.Resources/*/read", "Microsoft.Sql/*/read", "Microsoft.Storage/*/read", "Microsoft.Web/*/read" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/{your-subscription-id}" ] }
에이전트 스페이스와 구독 연결
계정 수준에서 Azure를 등록한 후 특정 구독을 에이전트 스페이스와 연결합니다.
AWS DevOps 에이전트 콘솔에서 에이전트 스페이스를 선택합니다.
기능 탭으로 이동
보조 소스 섹션에서 추가를 클릭합니다.
Azure 선택
연결할 Azure 구독의 구독 ID를 제공합니다.
추가를 클릭하여 연결을 완료합니다.
여러 구독을 동일한 에이전트 스페이스와 연결하여 Azure 환경 전체에서 에이전트에게 가시성을 제공할 수 있습니다.
Azure 리소스 연결 관리
연결된 구독 보기 - 기능 탭의 보조 소스 섹션에는 연결된 모든 Azure 구독이 나열됩니다.
구독 제거 - 에이전트 스페이스에서 구독을 연결 해제하려면 보조 소스 목록에서 구독을 선택하고 제거를 클릭합니다. 이는 계정 수준 등록에는 영향을 주지 않습니다.
등록 제거 - Azure 클라우드 등록을 완전히 제거하려면 기능 공급자 페이지로 이동하여 등록을 삭제합니다. 먼저 모든 에이전트 스페이스 연결을 제거해야 합니다.