Files
vpd-permission-poc/docs/design/617-dds-mcp-end-user-context/fn-get-database-access-token.md

932 B

함수 명세: getDatabaseAccessToken (#617)

상태: Implemented · 구현: DdsMcpDatabaseAccessTokenProvider

책임

OCI IAM Confidential Application의 client-credentials token을 database-access token으로 발급·캐시한다. 이 token은 local DDS Context attach의 서비스 승인용이며 MCP 업무 사용자를 식별하지 않는다.

규칙

  1. database resource scope로 /oauth2/v1/token을 호출한다.
  2. 만료 전 refresh skew를 두고 갱신한다.
  3. token 발급 실패 또는 응답 불완전 시 기존 만료 token을 사용하지 않고 DDS_CONTEXT_UNAVAILABLE로 fail-closed한다.
  4. token, client secret, Authorization header는 로그·DB·Git·Redmine에 기록하지 않는다.

운영 검증

발급 token의 resource_app_id/tenant_iss/audience/scope가 ADB OCI IAM 설정 및 database resource와 일치해야 한다. ADB의 OCI_IAM_DOMAIN_DB_CRED$도 필수다.