이 참조를 사용하여 OIDC(OpenID Connect) 동작을 확장할 Microsoft ID 플랫폼 지원되는 모든 방법을 찾습니다. 각 행은 이 리포지토리의 개념 또는 방법 문서와 표면을 프로그래밍하는 Microsoft Graph API 리소스에 연결됩니다.
확장성은 Microsoft Entra 사용자가 소유한 앱에 대해 OIDC 토큰을 발급하거나 OIDC 요청을 처리하는 방법(예: 외부 저장소의 클레임 추가, 앱당 토큰 콘텐츠 사용자 지정 또는 외부 워크로드 ID의 토큰 신뢰)을 변경하는 것을 의미합니다. 로그인에 Microsoft Entra 사용하도록 기존 OIDC 앱(예: GitHub, Salesforce 또는 다른 SaaS 앱)을 구성하는 것은 확장성이 아닌 통합입니다. 앱 통합 지침은 Microsoft Entra 애플리케이션 갤러리를 참조하세요.
기본 엔드포인트 계약의 경우 Microsoft ID 플랫폼 OpenID Connect를 참조하세요.
확장성 화면 한눈에 보기
| Capability | 수행할 수 있는 기능 | 개념 및 방법 | Microsoft Graph API |
|---|---|---|---|
| 사용자 지정 클레임 공급자 | 토큰 발급 중에 외부 REST API를 호출하여 원격 저장소의 클레임으로 토큰을 보강합니다. | 사용자 지정 클레임 공급자 개요, 참조 | customAuthenticationExtension, onTokenIssuanceStartListener |
| 토큰 발급 시작 이벤트 | 토큰 발급 중에 사용자 지정 클레임 공급자를 트리거하는 이벤트 수신기를 구성합니다. | 토큰 발급 시작 이벤트 설정, 구성 | onTokenIssuanceStartCustomExtension, onTokenIssuanceStartHandler, onTokenIssuanceStartReturnClaim |
| 선택적 클레임 | ID, 액세스 및 SAML 토큰에 Microsoft Entra 소스 클레임(예: groups, idtyplogin_hint)을 추가합니다. |
앱에 선택적 클레임 제공, 참조 | optionalClaim, 애플리케이션의 optionalClaims |
| 사용자 지정 클레임 정책(앱당) | 변환을 포함하여 특정 앱에 대해 발급된 토큰의 클레임에 디렉터리 특성을 매핑합니다. | JWT 클레임 사용자 지정, SAML 클레임 사용자 지정, 사용자 지정 클레임 정책 | customClaimsPolicy, claimsMappingPolicy |
| 토큰 수명 정책 | 앱 또는 테넌트에 대한 액세스, 새로 고침 및 ID 토큰 수명을 구성합니다. | 구성 가능한 토큰 수명, 구성 | tokenLifetimePolicy |
| 토큰 발급 정책 | 발급 시 SAML 토큰 서명 및 암호화 동작을 구성합니다. | SAML 클레임 사용자 지정 | tokenIssuancePolicy |
| 페더레이션 ID 자격 증명 | 클라이언트 암호 또는 인증서를 사용하는 대신 외부 발급자(GitHub, Kubernetes, 기타 클라우드)의 토큰을 신뢰합니다. | 워크로드 ID 페더레이션 | federatedIdentityCredential, 페더레이션 ID 자격 증명 개요 |
| 애플리케이션 매니페스트. | 리디렉션 URI, 대상 그룹, 허용된 권한 부여 유형 및 토큰 설정을 선언적으로 구성합니다. | 애플리케이션 매니페스트 참조 | application, servicePrincipal |
| 위임된 권한 부여 | 사용자 또는 테넌트에 대해 위임된 범위에 권한을 부여합니다. | 사용 권한 및 동의 개요 | oAuth2PermissionGrant |
| 앱 역할 할당 | 토큰 기반 권한 부여를 위해 사용자, 그룹 또는 서비스 주체에 앱 역할을 할당합니다. | 앱 역할 개요 | appRoleAssignment |
| CAE(지속적인 액세스 권한 평가) | 사용자 로그아웃, 암호 변경 및 위험 검색과 같은 이벤트에 대해 토큰 해지를 거의 실시간으로 사용하도록 설정합니다. | 지속적인 액세스 평가 | conditionalAccessPolicy |
| 클레임 챌린지(단계별) | 세션 중간에 더 강력한 인증 또는 최신 클레임을 요청합니다. | 클레임 챌린지, 클레임 유효성 검사 | N/A(프로토콜 수준, 요청 매개 변수에서 claims 신호) |
확장성 화면 선택
다음 지침을 사용하여 시나리오에 적합한 표면을 결정합니다.
- Microsoft Entra ID 소스 클레임을 추가하려면 선택적 클레임 또는 사용자 지정 클레임 정책을 사용합니다.
- 외부 시스템에서 제공하는 클레임을 추가하려면 Azure Functions 엔드포인트 또는 기타 REST API에서 지원되는 사용자 지정 클레임 공급자를 사용합니다.
- 클라이언트 암호 또는 인증서를 사용하는 대신 외부 워크로드 ID를 신뢰 하려면 페더레이션 ID 자격 증명을 구성합니다.
- 기존 토큰 의 보안 이벤트 (해지된 세션, 위험 변경, 암호 재설정)에 대응하려면 지속적인 액세스 평가를 사용하도록 설정합니다.
- 세션 중에 최신 인증을 요청 하려면 클레임 챌린지를 실행합니다.
프로그래밍 모델
테이블의 대부분의 표면은 Microsoft Graph 애플리케이션 및 servicePrincipal 리소스 또는 엔드포인트를 policies 통해 구성됩니다. 인증 라이브러리는 이러한 표면을 구성하지 않습니다. Microsoft Graph SDK, Microsoft Graph PowerShell SDK 또는 직접 REST 호출을 사용합니다.
사용자 지정 인증 확장과 토큰 발급 시작 이벤트를 결합하는 엔드투엔드 예제는 토큰 발급 시작 이벤트를 사용하여 사용자 지정 클레임 공급자 구성을 참조하세요.