M

entra-app-registration

작성자 microsoft

Microsoft Entra ID 앱 등록, OAuth 2.0 플로우, API 권한, 콘솔 및 백엔드 앱용 MSAL 기반 인증 예제를 다루는 스킬 기반 가이드입니다.

Stars0
즐겨찾기0
댓글0
카테고리Access Control
설치 명령어
npx skills add https://github.com/microsoft/azure-skills --skill entra-app-registration
개요

개요

이 스킬이 하는 일

entra-app-registration 스킬은 Microsoft Entra ID(이전 Azure Active Directory) 앱 등록을 구성하려는 개발자를 위해 단계별 가이드를 제공합니다. 이 스킬은 다음 과정을 차근차근 안내합니다.

  • Microsoft Entra ID에서 앱 등록 생성
  • 핵심 인증 개념 이해(tenant, client ID, redirect URI, service principal)
  • OAuth 2.0 플로우 선택 및 구성
  • API 권한(위임 권한 vs 애플리케이션 권한) 추가 및 관리
  • secrets, certificates, service principal 설정
  • 여러 언어에서 MSAL 및 Azure Identity SDK 통합
  • 인증 및 구성 관련 공통 오류 문제 해결

콘텐츠는 microsoft/azure-skills 리포지토리의 skills/entra-app-registration 폴더에서 가져오며, references/first-app-registration.md, references/oauth-flows.md, references/api-permissions.md, references/console-app-example.md 같은 전용 가이드가 포함됩니다.

entra-app-registration이 필요한 사람

다음과 같은 경우 이 스킬 사용을 추천합니다.

  • Microsoft Entra ID를 사용해 웹 API나 서비스를 보호하려는 백엔드 또는 API 개발자
  • 사용자 로그인이 필요하거나 Microsoft Graph 또는 커스텀 API를 호출해야 하는 웹, SPA, 데스크톱, 콘솔 앱을 개발하는 개발자
  • 앱 등록 및 권한 구성을 반복 가능한 패턴으로 관리해야 하는 DevOps 또는 플랫폼 엔지니어
  • Entra ID 인증 및 API 권한에 대한 베스트 프랙티스를 문서화해 두고 싶은 팀

특히 다음 상황에서 유용합니다.

  • Microsoft Entra 앱 등록을 처음 만드는 경우
  • 기존 Azure AD 문서에서 Microsoft identity platform으로 마이그레이션하는 경우
  • 위임 권한과 애플리케이션 권한 중에서 선택해야 하는 경우
  • 앱 유형에 맞는 OAuth 2.0 플로우를 결정해야 하는 경우
  • 콘솔 또는 백엔드 애플리케이션에 MSAL을 연동해야 하는 경우

이 스킬이 적합하지 않은 경우

entra-app-registrationID와 앱 등록에 집중하며, 일반적인 Azure 보안이나 리소스 관리 전반을 다루지는 않습니다.

다음이 주된 필요라면 이 스킬을 기본 참고 자료로 사용하지 마세요.

  • Azure 리소스에 대한 역할 기반 액세스 제어 → azure-rbac 스킬 사용
  • Key Vault secret 수명 주기 및 만료 감사 → azure-keyvault-expiration-audit 스킬 사용
  • 더 넓은 범위의 Azure 리소스 보안 상태나 정책 가이드 → azure-security 스킬 사용

다만, 시나리오상 ID와 리소스 수준 권한 부여가 모두 필요한 경우 이들 스킬과 entra-app-registration을 함께 사용할 수 있습니다.

한눈에 보는 주요 기능

이 스킬에는 다음을 도와주는 다양한 가이드가 포함되어 있습니다.

  • 앱 등록의 기본 구성 요소 이해(SKILL.mdreferences/first-app-registration.md)
  • authorization code, client credentials 등을 포함한 OAuth 2.0 플로우 구성(references/oauth-flows.md)
  • Microsoft Graph 및 커스텀 API용 API 권한 계획 및 할당(references/api-permissions.md)
  • managed identity와 권장 자격 증명 사용 등 Azure 인증 베스트 프랙티스 준수(references/auth-best-practices.md)
  • Azure CLI를 사용한 앱 등록 생성 및 업데이트 자동화(references/cli-commands.md)
  • C#, Python, Node.js로 구현된 MSAL 기반 콘솔 앱 예제(references/console-app-example.md)
  • .NET, Java, Python, Rust, TypeScript용 Azure Identity SDK 통합(references/sdk/*.md)
  • redirect URI, 토큰, 동의(consent) 관련 문제 진단(references/troubleshooting.md)

이 스킬은 Microsoft Entra ID에 의존하는 접근 제어, API 개발, 백엔드 개발 작업에 실용적인 도구로 활용될 수 있습니다.

사용 방법

entra-app-registration 스킬 설치하기

microsoft/azure-skills 리포지토리에서 entra-app-registration 스킬을 호환되는 에이전트 환경에 추가하려면 다음 명령을 실행하세요.

npx skills add https://github.com/microsoft/azure-skills --skill entra-app-registration

이렇게 하면 스킬의 문서(SKILL.mdreferences/ 폴더 포함)가 에이전트에 제공되어, Microsoft Entra 앱 등록, OAuth 플로우, 권한에 대한 상세 질문에 답할 수 있게 됩니다.

플랫폼에서 스킬을 위한 UI를 제공하는 경우 다음과 같이 사용할 수도 있습니다.

  1. 스킬 카탈로그에서 "entra-app-registration"을 검색합니다.
  2. GitHub 소스가 microsoft/azure-skills인지 확인합니다.
  3. Add 또는 Enable을 클릭해 워크스페이스나 프로젝트에 연결합니다.

권장 읽기 순서

설치 후, 이 스킬에 대한 Files 또는 Sources 뷰를 열고 다음 순서로 살펴보는 것이 좋습니다.

  1. SKILL.md – 스킬이 다루는 범위, 주요 내용, 사용/비사용 권장 사항 등 고수준 개요
  2. references/first-app-registration.md – Azure 포털에서 첫 Microsoft Entra 앱 등록을 만드는 실질적인 단계별 튜토리얼
  3. references/oauth-flows.md – Microsoft Entra ID에서 지원하는 OAuth 2.0 플로우 설명과 다이어그램, 구현 시 유의사항
  4. references/api-permissions.md – 위임 권한 vs 애플리케이션 권한 선택과 구성, scope 포맷, 자주 쓰는 Graph 권한 설명
  5. references/auth-best-practices.md – 환경별 적절한 자격 증명 유형 선택 방법(Managed identity, certificates, 로컬 개발용 DefaultAzureCredential 등)
  6. references/cli-commands.md – 스크립트나 CI/CD에서 앱 등록을 생성·관리하기 위한 Azure CLI 명령어
  7. references/console-app-example.md – Microsoft Entra ID와 MSAL로 인증하는 전체 동작 콘솔 앱 예제
  8. references/sdk/*.md – Azure Identity 및 관련 SDK를 사용하는 언어별 통합 가이드
  9. references/troubleshooting.md – AADSTS 오류, 동의 문제, redirect URI 불일치 등 발생 시 참조

이 순서를 따르면, 개념 이해 → 포털 기반 구성 → 자동화 및 코드 수준 통합 순으로 자연스럽게 학습을 확장할 수 있습니다.

이 스킬이 지원하는 대표 워크플로

1. 첫 번째 Microsoft Entra 앱 등록하기

Entra ID를 처음 사용하거나 새 앱을 등록할 때 활용하세요.

  • references/first-app-registration.md를 따라 다음을 수행합니다.
    • Azure 포털을 열고 Microsoft Entra ID → App registrations로 이동
    • 올바른 지원 계정 유형으로 새 앱 등록 생성
    • 웹 앱, SPA, 네이티브 클라이언트 여부에 따라 redirect URI 구성
    • 인증 옵션과 플랫폼 구성 설정
    • 필요한 API 권한 추가(예: Microsoft Graph User.Read)
    • 필요 시 client secret 또는 certificate 생성
    • 애플리케이션에서 인증 플로우 테스트

이 스킬의 단계별 구조는 redirect URI, tenant 선택, 계정 유형 선택에서 자주 발생하는 실수를 줄이는 데 도움이 됩니다.

2. 적절한 OAuth 2.0 플로우 선택하기

새 앱에서 어떤 인증 플로우를 사용해야 할지 확신이 서지 않을 때 활용하세요.

  • references/oauth-flows.md를 열어 다음과 같은 플로우를 비교합니다.
    • 서버 측 secret을 가진 웹 앱 및 서비스용 authorization code 플로우
    • 데몬 앱 및 백그라운드 서비스용 client credentials 플로우
    • 가이드에서 설명하는 기타 지원 플로우
  • 각 플로우 섹션에는 다음 내용이 포함됩니다.
    • 사용자, 앱, Microsoft Entra ID, API 간 상호작용의 번호 매긴 시퀀스
    • client_id, tenant, redirect_uri, scope와 같은 주요 매개변수
    • 해당 플로우의 권장 사용 시나리오

이 가이드를 참고하면 웹, SPA, 데몬, 콘솔 등 앱 유형에 맞는 OAuth 플로우를 선택하고 안전하게 구현할 수 있습니다.

3. 위임 권한 vs 애플리케이션 권한 구성하기

앱에서 Microsoft Graph 또는 커스텀 API를 호출해야 할 때 사용하세요.

  • references/api-permissions.md를 열어 다음을 학습합니다.
    • Delegated permissions(사용자 컨텍스트)와 application permissions(앱만의 컨텍스트)의 차이
    • 사용자 동의가 적절한 경우와 관리자 동의가 필요한 경우 구분
    • https://graph.microsoft.com/User.Read 같은 Graph scope, api://myapi-id/access_as_user 같은 커스텀 API scope 형식
    • client credentials 및 마이그레이션 시나리오에서 .default scope가 동작하는 방식
  • 이 가이드를 바탕으로 다음을 수행합니다.
    • 앱 등록에서 API 권한 구성
    • 애플리케이션 코드에서 적절한 scope 요청
    • 과도한 권한 부여 및 불필요한 관리자 동의 요청 방지

4. Azure CLI로 앱 등록 자동화하기

포털 대신 스크립트나 자동화를 통해 앱 등록을 관리하고 싶을 때 사용하세요.

  • references/cli-commands.md를 열어 다음을 확인합니다.
    • CLI 사전 준비(az 설치 및 az login)
    • 다음 유형의 앱 등록을 생성하는 샘플 명령어:
      • redirect URI가 있는 웹 애플리케이션
      • SPA redirect URI를 사용하는 Single Page Application(SPA)
      • 데스크톱/모바일용 public client 앱
      • 서로 다른 sign-in audience 설정을 가진 multi-tenant 앱
    • redirect URI 및 기타 구성을 업데이트하는 명령 스니펫

이 예제들은 셸 스크립트나 CI/CD 파이프라인에 쉽게 적용할 수 있어, 환경별로 일관된 앱 등록 구성을 보장합니다.

5. 콘솔 또는 백엔드 앱에서 MSAL 구현하기

인증 및 토큰 발급을 위한 동작하는 코드 예제가 필요할 때 사용하세요.

  • references/console-app-example.md를 열어 다음을 수행합니다.
    • 새 콘솔 프로젝트 생성(예: dotnet new console)
    • MSAL 패키지 설치(예: .NET용 Microsoft.Identity.Client)
    • 다음을 수행하는 전체 샘플 프로그램 사용:
      • ClientId, TenantId, Scopes 구성
      • public client application 인스턴스 생성
      • 대화형 또는 캐시를 통한 silent 토큰 획득
      • 오류 처리 및 토큰 결과 출력

샘플 코드를 그대로 프로젝트에 복사한 뒤 placeholder 값을 자신의 앱 등록 정보로 교체해 사용할 수 있습니다.

6. 다양한 언어에서 Azure Identity SDK 사용하기

MSAL을 직접 호출하는 대신 Azure Identity 라이브러리를 사용하고 싶을 때 활용하세요.

  • references/sdk/ 아래에서 사용하는 언어에 맞는 파일을 엽니다.
    • azure-identity-dotnet.md
    • azure-identity-java.md
    • azure-identity-py.md
    • azure-identity-rust.md
    • azure-identity-ts.md
  • 이 가이드는 references/auth-best-practices.md와 연계되어 다음을 설명합니다.
    • 로컬 개발 환경에서 DefaultAzureCredential 사용하는 방법
    • 프로덕션에서는 ManagedIdentityCredential 또는 workload identity를 우선적으로 사용하는 방법
    • 필요 시 환경 변수 기반 자격 증명 구성 방법

이를 통해 앱 등록을 최신 Azure SDK 인증 패턴과 자연스럽게 연결할 수 있습니다.

7. 일반적인 인증 문제 트러블슈팅

Microsoft Entra ID 관련 오류를 만났을 때 사용하세요.

  • references/troubleshooting.md를 열어 다음과 같은 문제를 진단합니다.
    • redirect URI 불일치(AADSTS50011 등)
    • 잘못되었거나 만료된 client secret
    • API 호출 시 권한 및 동의 관련 오류
    • 토큰 검증 및 구성 문제
  • 이 가이드에는 다음이 포함됩니다.
    • 오류 메시지 예시
    • 근본 원인 설명
    • Azure 포털 단계 및 Azure CLI 명령을 포함한 구체적인 해결 방법

이를 활용하면 개발·운영 환경에서 발생하는 인증·인가 실패를 빠르게 분석하고 해결할 수 있습니다.

베스트 프랙티스 및 다른 스킬과의 연계

references/auth-best-practices.md에서는 다음과 같은 원칙을 강조합니다.

  • Azure에서 호스팅되는 프로덕션 워크로드에는 managed identity와 Azure RBAC를 사용
  • DefaultAzureCredential은 주로 로컬 개발용으로 사용하고, 프로덕션에서는 지양
  • 환경별로 ManagedIdentityCredential, ClientCertificateCredential, workload identity와 같은 목표 지향 자격 증명을 선택해 예측 가능성과 성능 확보

entra-app-registration은 다음 스킬과 함께 사용하는 것이 좋습니다.

  • ID 구성이 끝난 후 Azure 리소스에 대한 권한 부여가 필요할 때는 azure-rbac
  • Key Vault에 저장된 client credentials secret의 관리 및 만료 감사를 해야 할 때는 azure-keyvault-expiration-audit
  • 더 넓은 보안 posture, 정책, 컴플라이언스를 다루려면 azure-security

자주 묻는 질문(FAQ)

entra-app-registration은 어떤 문제를 해결해 주나요?

entra-app-registration은 Microsoft Entra ID 앱 등록을 처음 다룰 때 자주 발생하는 실무적인 설정·구성 문제를 해결하는 데 초점을 맞춥니다. 구체적으로 다음과 같은 부분에 구조화된 가이드를 제공합니다.

  • 포털 또는 CLI에서 올바른 앱 등록 생성 방법
  • 앱에 적합한 계정 유형 및 OAuth 플로우 선택 방법
  • redirect URI, secrets, certificates, service principal 구성 방법
  • Microsoft Graph 및 커스텀 API용 적절한 API 권한 및 scope 추가 방법
  • 실제 애플리케이션에 MSAL 및 Azure Identity를 통합하는 방법
  • 공통 오류 코드 및 잘못된 구성 문제 트러블슈팅 방법

entra-app-registration 스킬은 어떻게 설치하나요?

이 스킬은 microsoft/azure-skills 리포지토리에서 설치합니다. 호환되는 환경에서 다음 명령을 실행하세요.

npx skills add https://github.com/microsoft/azure-skills --skill entra-app-registration

설치가 완료되면 SKILL.mdreferences/ 디렉터리를 포함한 스킬의 파일들이 에이전트에 제공되어, Microsoft Entra 앱 등록 및 인증 관련 질문에 답변하는 데 사용할 수 있습니다.

설치 후 어떤 파일부터 보는 게 좋나요?

다음 순서로 살펴보는 것을 추천합니다.

  • SKILL.md – 전체 범위와 가이드에 대한 개요
  • references/first-app-registration.md – 포털 기반 단계별 설정 가이드
  • references/oauth-flows.md – 시나리오에 맞는 OAuth 2.0 플로우 이해
  • references/api-permissions.md – API 권한 선택 및 구성 방법

그 다음 필요에 따라 자동화를 위해 references/cli-commands.md, 샘플 코드를 위해 references/console-app-example.md, 오류 해결을 위해 references/troubleshooting.md를 참고하면 됩니다.

이 스킬은 Azure RBAC이나 리소스 역할에도 도움이 되나요?

직접적으로 다루지는 않습니다. entra-app-registration은 앱 ID, OAuth 플로우, API 권한에 초점을 맞추며, Azure 리소스 역할 할당이나 RBAC 구성에 대해서는 심층적으로 다루지 않습니다. 해당 주제가 필요하다면 azure-rbac 스킬을 함께 사용해야 합니다.

Microsoft 이외의 클라우드에서도 entra-app-registration을 사용할 수 있나요?

이 스킬은 Microsoft Entra ID 및 Microsoft identity platform에 특화되어 있습니다. OAuth 2.0 개념 자체는 범용적이지만, 설정 단계, 명령어, 예제는 Azure 및 Microsoft Entra ID tenant를 대상으로 작성되어 있습니다.

여러 언어용 코드 예제가 포함되어 있나요?

네. references/console-app-example.md에는 C#, Python, Node.js로 작성된 MSAL 기반 콘솔 앱 예제가 포함되어 있습니다. 추가로, references/sdk/ 폴더에는 .NET, Java, Python, Rust, TypeScript용 Azure Identity 라이브러리에 대한 언어별 문서가 들어 있습니다.

이 스킬은 Azure Key Vault 사용과 어떤 관련이 있나요?

entra-app-registration은 인증 베스트 프랙티스를 다루면서 secret을 안전하게 저장하는 방법을 언급하지만, Key Vault secret 수명 주기 전체를 깊이 있게 설명하지는 않습니다. 만료 감사와 Key Vault secret 관리를 본격적으로 다루려면 azure-keyvault-expiration-audit 스킬을 함께 사용하는 것이 좋습니다.

이미 앱 등록이 있는데 잘못 구성된 것 같습니다. 이 스킬이 도움이 되나요?

도움이 됩니다. references/troubleshooting.md를 통해 오류를 진단한 다음 다음을 수행하세요.

  • 현재 앱 등록 설정을 references/first-app-registration.mdreferences/oauth-flows.md의 패턴과 비교
  • 가이드에 따라 redirect URI, 권한, secret 수정
  • references/console-app-example.md 및 SDK 문서의 예제 코드와 자신의 코드를 비교해 검증

이 스킬은 신규(그린필드) 구성뿐 아니라 기존 앱 등록을 바로잡는 데에도 유용합니다.

이 스킬에서 제공되는 문서는 어디에서 모두 확인할 수 있나요?

사용 중인 환경에서 entra-app-registration 스킬의 Files 또는 Sources 탭을 열면 다음을 탐색할 수 있습니다.

  • SKILL.md
  • API 권한, OAuth 플로우, CLI 명령, 콘솔 예제, 트러블슈팅 등 주제별 가이드가 있는 references/ 폴더
  • 언어별 Azure Identity 예제가 들어 있는 references/sdk/ 서브폴더

이 트리를 둘러보면 스킬에 포함된 모든 가이드를 한눈에 파악할 수 있습니다.

평점 및 리뷰

아직 평점이 없습니다
리뷰 남기기
이 스킬의 평점과 리뷰를 남기려면 로그인하세요.
G
0/10000
최신 리뷰
저장 중...