중요
각 Atlas 관리 API에는 고유한 리소스가 있으며 초기 설정이 필요합니다.
공용 인터넷을 통해서만 Atlas Administration API 서버에 액세스할 수 있습니다. 네트워크 피어링 또는 비공개 엔드포인트를 사용하는 연결에서는 Atlas Administration API를 사용할 수 없습니다.
자세히 보려면 Atlas Programmatic Access참조합니다.
Atlas 관리 API REST 아키텍처 스타일의 원칙을 따라 Atlas 의 관리 기능에 프로그래밍 방식으로 액세스 활성화 있는 여러 내부 리소스를 노출합니다. Atlas 관리 API 에 대해 자세히 학습 Atlas 관리 API 참조를 참조하세요.
Atlas 관리 API 클러스터에 저장된 데이터에 대한 액세스 제공하지 않습니다. 데이터베이스 의 데이터를 읽거나 쓰기 (write) 적절한 읽기 또는 쓰기 (write) 역할이 있는데이터베이스 사용자의 자격 증명 사용하여 클러스터 를 인증해야 합니다. Atlas 관리 API 사용하여 데이터베이스 사용자를 생성하고 관리 수 있습니다.
Atlas 관리 API 사용하여 Atlas 클러스터를 관리 하려면 다음 인증 방법 중 하나를 사용하여 API 요청을 인증해야 합니다.
서비스 계정 액세스 토큰(OAuth) 2.0
API 키(HTTP 다이제스트 인증)
이러한 방법에 대해 학습 Atlas 관리 API 인증 방법을 참조하세요.
다음 섹션에서는 서비스 계정과 API 키를 사용하여 Atlas 조직 및 프로젝트에 대한 프로그래밍 방식의 액세스 구성하는 방법을 설명합니다.
필요한 액세스 권한
조직 에 대한 서비스 계정 또는 API 키를 만들려면 Organization Owner 해당 조직 에 대한 액세스 있어야 합니다.
서비스 계정에 프로젝트 에 대한 Organization Owner 액세스 부여하려면 프로젝트 소유한 조직 에 대해 액세스 있어야 합니다.
API 키에 프로젝트 Project Owner 에 대한 액세스 부여하려면 해당 프로젝트 에 대한 액세스 있어야 합니다.
선택 사항은 다음과 같습니다. Atlas Administration API에 대한 IP 액세스 목록이 필요합니다.
Atlas UI를 사용하여 조직을 만들 때 Atlas는 기본적으로 API IP 액세스 목록 기능을 활성화합니다. 이 기능에 따라 API 요청은 IP 액세스 목록에 지정된 위치 기반 IP 또는 CIDR 주소만으로 제한됩니다. IP 액세스 목록 항목 없이 Atlas 관리 API에 요청하면 서버는 403 상태 코드로 응답합니다.
기능을 비활성화하면 IP 액세스 목록이 비어 있는 경우 인터넷의 모든 주소에서 API 요청을 보낼 수 있습니다. IP 액세스 목록 항목을 추가하면 해당 IP 주소에서 시작된 요청만 가능합니다.
조직을 만든 후 모든 Atlas Administration API 요청에 대해 IP 액세스 목록이 필요하도록 조직을 설정하려면 다음 단계를 따르세요.
Atlas에서 Organization Settings 페이지로 이동합니다.
아직 표시되지 않은 경우 다음 목록에서 원하는 조직 을 선택하세요. 탐색 표시줄의 Organizations 메뉴.
사이드바에서 Organization Settings를 클릭합니다.
조직 설정 페이지가 표시됩니다.
Atlas에 프로그래밍 방식 액세스 권한 부여
다음 두 가지 인증 방법 중 하나를 사용하여 조직 또는 프로젝트에 프로그래밍 방식으로 액세스할 수 있습니다.
중요
API 키 대신 서비스 계정을 사용하여 Atlas 관리 API 에 인증하는 것이좋습니다. API 키는 레거시 인증 방법입니다.
서비스 계정(권장) | API 키(레거시) |
|---|---|
HTTP 다이제스트 인증을 사용하는 Atlas에 대한 레거시 인증 방법입니다. | |
서비스 계정을 사용하면 권한을 관리 하고 액세스 토큰을 만들 수 있습니다. 서비스 계정에는 액세스 토큰을 생성하기 위한 사용자 이름 및 비밀번호 역할을 하는 클라이언트 ID 와 시크릿이 있습니다. 액세스 토큰을 사용하면 Atlas 에 API 요청을 할 수 있습니다. | API 키는 공개 키와 비공개 키의 두 부분으로 구성됩니다. 이 두 부분은 Atlas 에 API 요청을 할 때 사용자 이름 및 비밀번호와 동일한 기능을 제공 합니다. |
서비스 계정을 만든 후에는 클라이언트 ID와 비밀번호를 사용하여 API 요청을 인증하는 액세스 토큰을 생성합니다. 액세스 토큰은 OAuth 2.0 사양에 따라 1시간(3600 초) 동안만 유효합니다. 액세스 토큰이 만료되면 유출된 액세스 토큰을 시간 제한 없이 사용할 수 있는 리플레이 공격을 방지할 수 있습니다. | Atlas는 논스라고 하는 고유한 값을 사용하여 공개 키와 개인 키를 해시합니다. 논스는 HTTP Digest Authentication 사양에 따라 단시간 동안만 유효합니다. 이는 리플레이 공격을 방지하기 위한 것이므로 논스를 캐시하여 영구적으로 사용할 수 없습니다. |
Atlas 역할은 서비스 계정이 액세스 토큰으로 수행할 수 있는 작업을 제한합니다. 서비스 계정이 원하는 API 호출에 필요한 권한이 있는 액세스 토큰을 생성하도록 사용자와 마찬가지로 서비스 계정에 역할을 할당해야 합니다. | Atlas 역할은 API 키가 수행할 수 있는 작업을 제한합니다. API 키에 원하는 API 호출에 필요한 권한이 있는지 확인하려면 사용자와 마찬가지로 API 키에 역할을 할당해야 합니다. |
각 서비스 계정은 하나의 조직 에만 속하며, 해당 조직 의 프로젝트 수에 관계없이 액세스 을 부여할 수 있습니다. 조직 수준 서비스 계정에 프로젝트 에 대한 액세스 부여하려면 프로젝트에 기존 서비스 계정 액세스 권한 부여를 참조하세요. | 각 API 키 쌍은 하나의 조직 에만 속하며, 해당 조직 의 프로젝트 수에 관계없이 액세스 을 부여할 수 있습니다. 조직 수준 API 키에 프로젝트 에 대한 액세스 부여하려면 프로젝트에 기존 서비스 계정 액세스 권한 부여를 참조하세요. |
서비스 계정이나 해당 액세스 토큰을 사용하여 Atlas UI 통해 Atlas 에 로그 할 수 없습니다. 서비스 계정은 Atlas 관리 API 에 대한 액세스 권한만 부여하며, 여기에는 UI 액세스 또는 클러스터 데이터에 대한 액세스 포함되지 않습니다. | API 키를 사용하여 Atlas UI 통해 Atlas 에 로그 할 수 없습니다. API 키는 Atlas 관리 API 에 대한 액세스 권한만 부여하며, 여기에는 UI 액세스 또는 클러스터 데이터에 대한 액세스 포함되지 않습니다. |
조직에 프로그래밍 방식 액세스 권한 부여
서비스 계정 또는 API 키를 통해 조직 에 프로그래밍 방식의 액세스 부여하려면 다음 절차를 따르세요. 이 두 가지 인증 방법에 대해 자세히 학습 Atlas 관리 API 인증 방법을 참조하세요.
프로젝트에 프로그래밍 방식 액세스 권한 부여
서비스 계정 또는 API 키를 통해 프로젝트 에 프로그래밍 방식의 액세스 액세스 부여하려면 다음 절차를 따르세요. 이 두 가지 인증 방법에 대해 자세히 학습 Atlas 관리 API 인증 방법을 참조하세요.
프로젝트에서 프로젝트 액세스 추가
조직에 대한 서비스 계정이나 API 키를 아직 생성하지 않은 경우 프로젝트에 대해 이를 생성하여 Atlas 관리 API에 대한 액세스 권한을 부여할 수 있습니다. 프로젝트를 위해 생성한 서비스 계정 또는 API 키는 Organization Member 권한과 함께 상위 조직에 자동으로 추가됩니다.
API 요청하기
Atlas Administration API는 서비스 계정 또는 API 키라는 두 가지 인증 방법 중 하나를 사용하여 요청을 인증합니다. 다음 절차를 완료하려면 기본 인증 방법을 구성할 때 저장한 키나 시크릿이 필요합니다.
모든 Atlas Administration API의 기본 URL은 다음과 같습니다.
https://cloud.mongodb.com/api/atlas/<version>
중요
MongoDB는 HTTPS URL을 사용하여 보안을 강화합니다. HTTP URL을 사용하면 301 상태 코드가 반환됩니다.
또한 OpenAPI v3 사양을 지원하는 모든 도구를 사용해 코드 샘플 또는 모의 서버를 생성할 수 있습니다. 예를 들어, Atlas Admin API 사양을 Postman으로 가져와서 curl 명령을 생성할 수 있습니다.
경고
Postman에서 HTTP URL을 사용하면 예상대로 301 상태 코드가 반환됩니다. 그러나 이 시나리오의 경우 Postman은 요청을 HTTPS로 자동 재시도하는 동시에 재시도 요청에서 헤더와 본문을 제거할 수 있습니다. 그러면 301 대신 401 상태 코드가 반환되어 요청이 실패한 이유를 파악하기 어려워집니다.
Postman을 사용하여 curl 명령을 생성하려면 다음을 수행하세요.
MongoDB Atlas 관리 API 설명서에서 다운로드 버튼을 마우스 오른쪽 버튼으로 클릭하고 링크를 복사합니다.
다음 단계
Atlas 관리 API에 대해 자세히 알아보려면 Atlas 관리 API 참고 자료를 확인하세요.
Atlas 관리 API에 대한 프로그래밍 방식의 액세스를 관리하려면 다음 절차 중 하나를 참조하세요.