CPN 한국어 자습서 · 외부 문서 한국어 미러
MCP 문서 · Extensions
Enterprise-Managed Authorization · 원문: modelcontextprotocol.io/extensions/auth/enterprise-managed-authorization
아래는 원문을 한국어로 옮긴 미러입니다. 코드·명령은 원문 그대로이며, 가장 최신 정보는 하단 원문 링크에서 확인하세요.
ID 제공자를 통한 엔터프라이즈 환경의 MCP 중앙화 접근 제어
Enterprise-Managed Authorization 익스텐션(io.modelcontextprotocol/enterprise-managed-authorization)은 조직이 기존 ID 제공자(IdP)를 통해 MCP 서버 접근을 중앙에서 제어할 수 있게 합니다. 각 직원이 각 MCP 서버를 개별적으로 인가하는 대신, 조직의 IT 또는 보안팀이 한 곳에서 접근 정책을 관리합니다.
표준 MCP 배포에서는 각 사용자가 독립적으로 MCP 클라이언트에게 각 MCP 서버에 접근할 권한을 부여합니다. 소비자 애플리케이션에서는 이 사용자 중심 모델이 이상적입니다.
엔터프라이즈 환경에서 이 모델은 마찰과 보안 격차를 만듭니다:
Enterprise-Managed Authorization은 조직의 IdP(Okta, Azure AD, 기업 SSO 시스템 등)를 권위 있는 의사 결정자로 도입하여 이 문제를 해결합니다.
다음 경우에 Enterprise-Managed Authorization을 사용합니다:
익스텐션은 엔터프라이즈 IdP가 MCP 클라이언트와 MCP 서버 사이의 중재자 역할을 하는 위임 인가 흐름을 구성합니다. MCP 클라이언트는 엔터프라이즈 IdP에서 ID-JAG(Identity Assertion JWT Authorization Grant)라는 특수 토큰을 요청합니다. 그런 다음 MCP 클라이언트는 이 ID-JAG를 MCP 서버의 인가 서버에서 액세스 토큰으로 교환합니다:
sequenceDiagram
participant UA as Browser
participant C as MCP Client
participant IdP as Enterprise IdP
participant MAS as MCP Authorization Server
participant MRS as MCP Resource Server
C-->>UA: Redirect to IdP
UA->>IdP: Redirect to IdP
Note over IdP: User Logs In
IdP-->>UA: IdP Authorization Code
UA->>C: IdP Authorization Code
C->>IdP: Token Request with IdP Authorization Code
IdP-->>C: ID Token
note over C: 사용자가 MCP 클라이언트에 로그인됨. 클라이언트가 ID 토큰 저장.
C->>IdP: Exchange ID Token for ID-JAG
note over IdP: Evaluate Policy
IdP-->>C: Responds with ID-JAG
C->>MAS: Token Request with ID-JAG
note over MAS: Validate ID-JAG
MAS-->>C: MCP Access Token
loop
C->>MRS: Call MCP API with Access Token
MRS-->>C: MCP Response with Data
end
흐름의 핵심 측면:
중앙화된 정책: 엔터프라이즈 IdP는 승인된 MCP 서버와 각 서버에 대한 접근 정책 레지스트리를 유지합니다. 관리자는 기존 ID 관리 도구에서 이를 구성합니다.
싱글 사인온: 직원들은 한 번 기업 자격증명으로 인증합니다. IdP가 추가 서버별 인가 프롬프트 없이 승인된 MCP 서버에 대한 접근을 허용하는 토큰을 발행합니다.
정책 적용: IdP는 토큰을 발행하기 전에 접근 정책(그룹 멤버십, 역할 할당, 조건부 접근 규칙)을 평가합니다. 인가되지 않은 직원은 적절한 오류를 받으며, MCP 클라이언트는 미인가 서버에 대한 토큰을 받지 않습니다.
중앙화된 취소: 직원의 MCP 서버 접근 취소는 IdP 수준에서 이루어지며, 모든 MCP 클라이언트에 즉시 적용됩니다.
initialize 요청에서 지원 선언:{
"capabilities": {
"extensions": {
"io.modelcontextprotocol/enterprise-managed-authorization": {}
}
}
}
SSO 지원 — 사용자가 엔터프라이즈 IdP를 통해 MCP 클라이언트에 인증합니다. 로그인 중 발행된 ID Assertion(OpenID ID 토큰 또는 SAML assertion)을 저장하세요.
ID-JAG 처리 — 서버가 엔터프라이즈 관리형 인증이 필요하다고 표시하면, 이전에 획득한 ID Assertion을 사용하여 엔터프라이즈 IdP의 인가 엔드포인트에서 ID-JAG 토큰을 요청합니다. 이 ID-JAG를 MCP 인가 서버에서 액세스 토큰으로 교환합니다.
조직 구성 지원 — 관리자가 사용자별 설정이 아닌 조직 수준 설정에서 엔터프라이즈 IdP 엔드포인트를 구성할 수 있도록 허용합니다.
스코프 오류 처리 — 엔터프라이즈 IdP가 발행한 토큰은 표준 MCP 인가와 다른 스코프 제한이 있을 수 있습니다. 스코프 오류를 적절하게 처리하세요.
서버의 인가 메타데이터에 익스텐션을 선언하여 클라이언트가 엔터프라이즈 관리형 흐름을 사용해야 함을 나타냅니다.
IdP 관리 API와 통합(선택 사항) — 엔터프라이즈 관리자가 IdP 관리 콘솔에서 접근 정책을 구성할 수 있도록 서버의 리소스 설명자를 게시합니다.
IdP의 JWKS 엔드포인트를 통해 엔터프라이즈 IdP가 발행한 ID-JAG를 검증합니다.
IdP 클레임을 권한에 매핑합니다 — ID-JAG 토큰에는 직원 신원과 접근 가능한 항목을 결정하는 클레임(스코프, 리소스 정보)이 포함됩니다.
계정 연결 처리 — ID-JAG 토큰에는 항상 subject 클레임이 포함되며, 계정 연결에 사용할 수 있는 email 클레임이 추가로 포함될 수 있습니다.
참고: 이 익스텐션에 대한 지원은 클라이언트마다 다릅니다. 익스텐션은 옵트인 방식이며 기본적으로 활성화되지 않습니다.
현재 MCP 클라이언트의 구현 현황은 클라이언트 매트릭스를 확인하세요. Enterprise-Managed Authorization은 일반적으로 MCP 클라이언트 애플리케이션 외에 조직의 IT 팀의 클라이언트 수준 지원이 필요합니다.
원문(영어): https://modelcontextprotocol.io/extensions/auth/enterprise-managed-authorization · 본 문서는 학습용 한국어 번역이며 원본의 권리는 원저작자(Model Context Protocol)에게 있습니다.
원문(영어): https://modelcontextprotocol.io/extensions/auth/enterprise-managed-authorization