메인 콘텐츠로 건너뛰기
Azure 구독을 연결하여 CloudThinker 에이전트가 Microsoft Azure 전반에서 비용을 분석하고, 컴플라이언스를 감사하고, 인프라를 관리할 수 있도록 합니다. Azure는 서비스 주체 (앱 등록 + 클라이언트 시크릿 + 테넌트 ID)로 인증합니다. 주체의 역할 할당이 각 에이전트가 읽을 수 있는 범위를 결정합니다.

사전 요구 사항

  • Owner 또는 User Access Administrator 권한이 있는 Azure 구독.
  • Azure Active Directory에서 앱 등록을 생성할 권한.
  • 대상 구독에서 역할을 할당할 권한.
Reader 역할은 비용 분석, 보안 감사, 리소스 검사에 충분합니다. 에이전트가 Azure 리소스에 대한 작업을 수행해야 하는 경우에만 쓰기 수준 역할을 부여하세요.

설정

1

애플리케이션 등록

Azure 포털로 이동하여 Azure Active Directory → App registrations → New registration으로 이동하세요:
  • Name: CloudThinker-ReadOnly
  • Supported account types: 이 조직 디렉터리의 계정만
  • Register 클릭
2

애플리케이션 세부 정보 기록

앱 개요에서 다음 값을 복사하여 저장하세요:
  • Application (client) ID
  • Directory (tenant) ID
3

클라이언트 시크릿 생성

앱 등록에서 Certificates & secrets → New client secret으로 이동하세요. 설명을 추가하고 만료 기간을 설정하여 (권장: 12개월) Add를 클릭하세요. 시크릿 값을 즉시 복사하세요 — 다시 표시되지 않습니다.
4

Reader 역할 할당

Subscriptions → Your Subscription → Access control (IAM) → Add → Add role assignment로 이동하세요. Reader 역할을 선택하고 앱 등록을 검색하여 선택한 후 Save를 클릭하세요.
5

CloudThinker에 연결 추가

Connections → Azure로 이동하여 다음을 입력하세요:
  • Client ID (Application ID)
  • Client Secret (복사한 시크릿 값)
  • Tenant ID (Directory ID)
  • Subscription ID
Connect를 클릭하세요. CloudThinker가 자격 증명을 확인하고 Connected 상태를 표시합니다.
생성 직후 클라이언트 시크릿을 복사하세요. Azure는 다시 표시하지 않으며, 분실 시 새 시크릿을 생성해야 합니다.

멀티 구독 설정

여러 Azure 구독이 있는 조직의 경우:
1

관리 그룹 접근 사용

관리 그룹 수준에서 Reader 역할을 할당하여 범위 내 모든 구독을 커버하세요.
2

Cost Management 접근 추가

구독 간 비용 분석을 위해 청구 계정 수준에서 Cost Management Reader를 부여하세요.
3

CloudThinker에서 설정

연결 설정에서 모든 구독 ID를 추가하거나 “All Subscriptions”를 선택하세요.

연결 세부 정보

필드설명예시
Client ID앱 등록의 Application (client) ID00000000-0000-0000-0000-000000000000
Client SecretCertificates & secrets에서 생성한 시크릿 값
Tenant IDAzure AD의 Directory (tenant) ID00000000-0000-0000-0000-000000000000
Subscription ID연결할 Azure 구독 ID00000000-0000-0000-0000-000000000000

필요 권한

최소 (읽기 전용 분석)

Reader                          # 리소스에 대한 기본 읽기 접근
Cost Management Reader          # 비용 및 청구 데이터

권장 (전체 분석)

# 위의 모든 권한에 추가:
Security Reader                 # Security Center 접근
Log Analytics Reader            # Log Analytics 워크스페이스 접근
Monitoring Reader               # Azure Monitor 접근
Contributor 대신 Reader 역할을 사용하세요. CloudThinker의 읽기 작업은 쓰기 접근이 필요하지 않습니다. 클라이언트 시크릿에 대한 교체 일정을 설정하고 “Never” 만료 옵션을 피하세요.

에이전트 기능

연결되면 에이전트가 Azure 리소스를 분석하고 최적화할 수 있습니다.
에이전트Azure 기능
Alex비용 분석, VM 적정 크기 조정, Reserved Instance 권장 사항, 리소스 최적화
OliverSecurity Center 결과, Azure AD 감사, 컴플라이언스 검사, 정책 위반
TonySQL Database 성능, Cosmos DB 최적화, PostgreSQL 튜닝
KaiAKS 클러스터 관리, 컨테이너 최적화, 워크로드 분석

연결 검증

@alex run an Azure account check and list the connected subscriptions and resource groups

예시 프롬프트

@alex analyze Azure VM costs over the last 30 days and #recommend right-sizing opportunities
@oliver audit Azure Security Center findings and flag high-severity policy violations
@kai check AKS cluster health and #report any failing pods or resource pressure

문제 해결

테넌트 ID, 클라이언트 ID, 클라이언트 시크릿이 올바른지 확인하세요. 클라이언트 시크릿이 만료되지 않았는지, 앱 등록이 올바른 Azure AD 테넌트에 있는지 확인하세요. 조건부 접근 정책이 인증을 차단하고 있지 않은지 확인하세요.
Azure AD → App registrations → Your app → Certificates & secrets로 이동하여 새 클라이언트 시크릿을 생성하고 CloudThinker 연결 설정에서 시크릿을 업데이트하세요.
Reader 역할이 올바른 구독에 할당되어 있는지 확인하세요. 리소스가 다른 구독에 있는지 확인하고 앱이 필요한 모든 구독에 접근할 수 있는지 확인하세요.
Cost Management Reader 역할이 할당되어 있는지 확인하세요. Cost Management + Billing 접근을 확인하고 해당되는 경우 EA/MCA 청구 계정 접근이 설정되어 있는지 확인하세요.

보안

  • 최소 권한 — 에이전트가 사용 사례에 필요한 권한만 부여하세요. 읽기 전용으로 시작한 후 필요에 따라 확장하세요.
  • 기본 읽기 전용 — 에이전트가 이 연결을 통해 변경 작업을 수행하게 할 것이 아니라면 읽기 전용 자격증명을 사용하세요.
  • 자격증명 교체 — 정기 일정에 따라 키와 토큰을 교체하세요. 연결을 업데이트하면 CloudThinker가 새 값을 자동으로 반영합니다.
  • 오프보딩 시 취소 — 연결을 삭제하거나 팀원이 퇴사할 때 프로바이더에서 자격증명을 제거하세요.
  • 시크릿 만료 설정 — 항상 클라이언트 시크릿에 만료 기간을 설정하고 (“Never” 피하기), 만료 전 교체를 위한 캘린더 알림을 설정하세요.
  • Reader 역할 사용 — Contributor 대신 Reader를 할당하세요. CloudThinker의 읽기 작업은 쓰기 접근이 필요하지 않습니다.

관련 문서

https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/aws.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=45d526a3e9345214c0345f277da2e829

AWS 연결

Amazon Web Services 연결

Oliver 에이전트

Azure 컴플라이언스를 위한 보안 중심 에이전트