이 페이지에서는 통합을 통해 프로비저닝된 리소스 에 대한 데이터베이스 사용자 자격 증명 의 로테이션에 대해 설명합니다. OAuth client_secret 로테이션과는 관련이 없습니다. 자세한 내용은 Atlas 앱 연결과 앱 통합하기에서 토큰 및 비밀 저장소를 참조하세요.
Atlas 통합을 통해 프로비저닝된 리소스 와 연결된 데이터베이스 사용자에 대한 자격 증명 로테이션하면 Atlas 업데이트된 자격 자격 증명 사전 등록된 HTTPS 콜백 엔드포인트로 전송합니다. Atlas 일반적으로 보안 사고에 대응하여 독립적으로 자격 증명 순환을 시작합니다. 이 엔드포인트를 구현하는 것은 선택 사항이지만 프로비저닝된 데이터베이스 사용자를 의존하는 최종 사용자 애플리케이션이 업데이트된 자격 자격 증명 자동으로 받을 수 있으므로 권장됩니다. 엔드포인트는 통합과 Atlas 간의 OAuth 연결을 업데이트 하거나 대체하지 않습니다.
엔드포인트를 구현 하지 않으면 해당 최종 사용자 애플리케이션은 로테이션된 데이터베이스 사용자 자격 증명 자동으로 수신하지 않습니다. 애플리케이션이 데이터베이스 에 대한 인증을 계속할 수 있도록 다른 메커니즘을 통해 자격 증명 업데이트 해야 합니다.
엔드포인트 요구 사항
다음 구조를 사용하여 엔드포인트를 노출합니다.
PUT https://<your-registered-base-url>/v1/organizations/{organizationId}/projects/{projectId}/secrets
온보딩 중에 Atlas 에 기본 URL 등록합니다. organizationId 및 projectId 경로 매개변수는 통합과 관련된 Atlas 조직 및 프로젝트 식별합니다. 온보딩 중에 Atlas 와 동의하는 경우 다른 URL 구조를 사용할 수 있지만, 등록된 기본 URL 과 필수 식별자는 모호하지 않아야 합니다.
Atlas 프로비저닝 중에 설정된 설치 범위 베어러 토큰을 사용하여 각 요청 인증합니다.
Authorization: Bearer <installation-access-token> Content-Type: application/json
엔드포인트는 다음을 충족해야 합니다.
모든 요청 에서 베어러 토큰의 유효성을 검사하고
401 Unauthorized(으)로 유효하지 않거나 만료된 토큰을 거부합니다.토큰을 기밀로 취급하고 적절한 액세스 제어를 사용하여 저장 .
신뢰할 수 있는 인증 기관의 TLS 인증서로 HTTPS를 사용합니다. Atlas 일반 HTTP 통해 엔드포인트를 호출하지 않으며, 자체 서명된 인증서는 프로덕션에서 지원되지 않습니다.
요청 본문
요청 본문에는 업데이트 할 자격 증명 키-값 쌍이 포함되어 있습니다.
{ "secrets": [ { "name": "ATLAS_CONNECTION_STRING", "value": "mongodb+srv://user:pass@cluster.mongodb.net/" }, { "name": "ATLAS_DB_USERNAME", "value": "app_user" }, { "name": "ATLAS_DB_PASSWORD", "value": "rotated_password" } ], "partial": true }
필드 | 필수 사항 | 설명 |
|---|---|---|
| 필수 사항 | 업데이트 자격 증명 키-값 쌍의 배열 . |
| 필수 사항 | 온보딩 중에 Atlas 와 동의한 표준 자격 증명 이름입니다. 합의된 각 이름을 버전이 지정된 안정적인 계약으로 취급합니다. |
| 필수 사항 | 업데이트된 자격 증명 값입니다. 값에는 특수 문자가 포함될 수 있습니다. |
| 옵션 |
|
응답
상태 | 의미 | 예상 동작 |
|---|---|---|
| 자격 증명이 수락되고 성공적으로 저장되었습니다. | 응답 본문은 필요하지 않습니다. |
| 요청 본문의 형식이 잘못되었습니다. | 자격 증명 값을 노출하지 않는 오류 메시지를 반환합니다. |
| 토큰 유효성 검사 에 실패했습니다. | 요청 을 거부합니다. |
| 조직 또는 프로젝트 식별자를 인식할 수 없습니다. | 요청 을 거부합니다. |
| 일시적인 서버 측 오류가 발생했습니다. | Atlas 요청 다시 시도할 수 있도록 오류를 반환합니다. |
재시도 및 멱등성
Atlas 실패한 요청(5xx 응답 또는 네트워크 시간 초과)을 지수 백오프와 제한된 재시도 횟수로 재시도합니다.
엔드포인트는 멱등 있어야 합니다. 동일한 순환 이벤트 에 대해 중복 요청을 받을 수 있으며, 동일한 자격 증명 값을 두 번 이상 적용하면 오류 없이 동일한 결과가 생성되어야 합니다.
보안 요구 사항
위의 인증 요구 사항 외에도 엔드포인트는 다음을 충족해야 합니다.
미사용 자격 증명 암호화합니다.
애플리케이션 로그, 요청 로그, 오류 메시지, 원격 분석 또는 일반 텍스트 구성 파일에 자격 증명 값이 표시되지 않도록 합니다.
저장된 자격 증명 에 대한 액세스 필요한 시스템 및 담당자로 제한합니다.
10초 이내에 응답합니다. 새 자격 증명 유지하는 데 배경 처리 필요한 경우 요청 동기적으로 승인하고 비동기적으로 처리 완료합니다.
설치 액세스 토큰이 손상되었다고 의심되는 경우 동의한 Atlas 지원 프로세스 따르세요.
온보딩 체크리스트
Atlas 통합에 순환된 자격 자격 증명 전송하려면 먼저 다음을 수행해야 합니다.
온보딩 중에 콜백 기본 URL 등록합니다.
양쪽에 설치 액세스 토큰을 설정하고 안전하게 저장 .
자격 증명 이름 및 업데이트 시맨틱에 동의하고 문서 .
HTTPS를 통해 연결할 수 있도록 엔드포인트를 배포합니다.
엔드포인트가 예상 상태 코드를 반환하는지 확인합니다.
비프로덕션 설치가 있는 비프로덕션 환경에서 엔드 투 엔드 로테이션을 수동으로 테스트합니다.
중복 전송 및 재시도 동작을 테스트합니다.