1개의 프로젝트에 할당된 모든 조직 API 키 가져오기
Cloud Manager는 2024년 8월 30일부터 더 이상 MongoDB 3.6 및 4.0에 대한 자동화, 백업 및 모니터링을 지원하지 않습니다. MongoDB 배포를 업그레이드하거나 Atlas로 마이그레이션하세요.
- Cloud Manager 에 대한 프로그래밍 방식의 액세스 를 위한 OAuth 2.0 인증 은 Preview 기능 으로 제공됩니다.
- 기능 및 해당 설명서는 미리 보기 기간에 언제든지 변경될 수 있습니다. OAuth 2.0 인증 을 사용하려면 Cloud Manager 공개 API 에 대한 요청에 사용할서비스 계정을 만듭니다.
기본 URL: https://cloud.mongodb.com/api/public/v1.0
Resource
GET /groups/{PROJECT-ID}/apiKeys
요청 경로 매개변수
이름 | 유형 | 설명 |
---|---|---|
PROJECT-ID | 문자열 | 할당된 조직 API 키를 조회하려는 프로젝트의 고유 식별자입니다. /groups 엔드포인트를 사용하여 인증된 사용자가 액세스할 수 있는 모든 프로젝트를 조회합니다. |
요청 쿼리 매개변수
다음 쿼리 매개변수는 선택 사항입니다.
이름 | 유형 | 설명 | 기본값 | ||||||
---|---|---|---|---|---|---|---|---|---|
pageNum | integer | 페이지 번호(1-인덱스 기준)입니다. | 1 | ||||||
itemsPerPage | integer | 페이지당 반환할 항목 수. 최대 500개까지 가능합니다. | 100 | ||||||
pretty | 부울 | false | |||||||
envelope | 부울 | 응답을 엔벨로프에 래핑할지 여부를 나타냅니다. 일부 API 클라이언트는 HTTP 응답 헤더 또는 상태 코드에 액세스할 수 없습니다. 이 문제를 해결하려면 쿼리에서 하나의 결과를 반환하는 엔드포인트의 경우 응답 본문에는 다음이 포함됩니다.
결과 목록을 반환하는 엔드포인트의 경우 | none |
요청 본문 매개변수
이 엔드포인트는 HTTP 요청 본문 매개변수를 사용하지 않습니다.
응답
응답 문서
응답 JSON 문서에는 result 객체 배열, link 객체 배열, 조회된 result 객체의 총 개수가 포함되어 있습니다.
이름 | 유형 | 설명 |
---|---|---|
results | 배열 | 배열에는 results 내장된 문서 섹션에 자세히 설명된 각 항목에 대해 하나의 객체가 포함됩니다. |
links | 배열 | 배열에 하위 리소스 및/또는 관련 리소스에 대한 링크가 하나 이상 포함되어 있습니다. URL간의 관계는 웹 링크 사양에설명되어 있습니다. |
totalCount | 숫자 | 결과 집합에 있는 총 항목 수의 정수 개수입니다. 전체 결과 집합이 페이지로 매겨진 경우 results 배열의 객체 수보다 클 수 있습니다. |
results
embeddedDocument
각 결과 는 하나의 프로젝트 API 키입니다.
이름 | 유형 | 설명 | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
desc | 문자열 | 이 프로젝트에 할당된 이 조직 API 키에 대한 설명입니다. | ||||||||||||||||||||||||||||||||||||
id | 문자열 | 이 프로젝트에 할당된 이 조직 API 키의 고유 식별자입니다. | ||||||||||||||||||||||||||||||||||||
privateKey | 문자열 | 이 프로젝트에 할당된 이 조직 API 키의 수정된 비공개 키입니다. 이 키는 처음 생성될 때 수정되지 않은 상태로 표시됩니다. | ||||||||||||||||||||||||||||||||||||
publicKey | 문자열 | 이 프로젝트에 할당된 이 조직 API 키의 공개 키입니다. | ||||||||||||||||||||||||||||||||||||
roles | 객체 배열 | 이 프로젝트에 할당된 조직 API 키가 갖는 역할입니다. 이 배열은 사용자가 Cloud Manager에서 가지고 있는 모든 조직 및 프로젝트 역할을 반환합니다. | ||||||||||||||||||||||||||||||||||||
roles.groupId | 문자열 | 이 역할이 속한 프로젝트의 고유 식별자입니다. | ||||||||||||||||||||||||||||||||||||
roles.orgId | 문자열 | 이 역할이 속한 조직의 고유 식별자입니다. | ||||||||||||||||||||||||||||||||||||
roles.roleName | 문자열 | 역할의 이름입니다. 이 리소스는 사용자가 Cloud Manager에서 가지고 있는 모든 역할을 반환합니다. 가능한 값은 다음과 같습니다. 조직 역할
프로젝트 역할
|
요청 예시
참고
요청 하는 사용자는 {PUBLIC-KEY}:{PRIVATE-KEY}
형식으로 지정할 수 있습니다.
1 curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ 2 --header "Accept: application/json" \ 3 --include \ 4 --request GET "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/apiKeys?pretty=true"
응답 예시
응답 헤더
401 Unauthorized Content-Type: application/json;charset=ISO-8859-1 Date: {dateInUnixFormat} WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false Content-Length: {requestLengthInBytes} Connection: keep-alive
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
응답 본문
1 { 2 "links" : [ { 3 "href" : "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/apiKeys?pretty=true&pageNum=1&itemsPerPage=100", 4 "rel" : "self" 5 } ], 6 "results" : [ { 7 "desc" : "Updated API Key description for DOCSP-6042", 8 "id" : "5d1cf1f980eef570c9fc87e5", 9 "links" : [ { 10 "href" : "https://cloud.mongodb.com/api/public/v1.0/orgs/5980cfe20b6d97029d82fa63/apiKeys/5d1cf1f980eef570c9fc87e5", 11 "rel" : "self" 12 } ], 13 "privateKey" : "********-****-****-9d4ae38e4ddd", 14 "publicKey" : "{PUBLIC-KEY}", 15 "roles" : [ { 16 "groupId" : "{PROJECT-ID}", 17 "roleName" : "GROUP_AUTOMATION_ADMIN" 18 }, { 19 "groupId" : "{PROJECT-ID}", 20 "roleName" : "GROUP_MONITORING_ADMIN" 21 }, { 22 "orgId" : "5980cfe20b6d97029d82fa63", 23 "roleName" : "ORG_MEMBER" 24 }, { 25 "orgId" : "5980cfe20b6d97029d82fa63", 26 "roleName" : "ORG_BILLING_ADMIN" 27 }, { 28 "groupId" : "{PROJECT-ID}", 29 "roleName" : "GROUP_DATA_ACCESS_ADMIN" 30 }, { 31 "groupId" : "{PROJECT-ID}", 32 "roleName" : "GROUP_USER_ADMIN" 33 }, { 34 "groupId" : "{PROJECT-ID}", 35 "roleName" : "GROUP_READ_ONLY" 36 }, { 37 "groupId" : "{PROJECT-ID}", 38 "roleName" : "GROUP_OWNER" 39 }, { 40 "orgId" : "5980cfe20b6d97029d82fa63", 41 "roleName" : "ORG_OWNER" 42 }, { 43 "groupId" : "{PROJECT-ID}", 44 "roleName" : "GROUP_DATA_ACCESS_READ_WRITE" 45 }, { 46 "orgId" : "5980cfe20b6d97029d82fa63", 47 "roleName" : "ORG_GROUP_CREATOR" 48 }, { 49 "orgId" : "5980cfe20b6d97029d82fa63", 50 "roleName" : "ORG_READ_ONLY" 51 }, { 52 "groupId" : "{PROJECT-ID}", 53 "roleName" : "GROUP_DATA_ACCESS_READ_ONLY" 54 }, { 55 "groupId" : "{PROJECT-ID}", 56 "roleName" : "GROUP_BACKUP_ADMIN" 57 }, { 58 "groupId" : "{PROJECT-ID}", 59 "roleName" : "GROUP_CLUSTER_MANAGER" 60 } ] 61 }, { 62 "desc" : "New API key for test purposes", 63 "id" : "5d1d12c087d9d63e6d682438", 64 "links" : [ { 65 "href" : "https://cloud.mongodb.com/api/public/v1.0/orgs/5980cfe20b6d97029d82fa63/apiKeys/5d1d12c087d9d63e6d682438", 66 "rel" : "self" 67 } ], 68 "privateKey" : "********-****-****-cb34f12aafdb", 69 "publicKey" : "oxhzytwb", 70 "roles" : [ { 71 "groupId" : "{PROJECT-ID}", 72 "roleName" : "GROUP_READ_ONLY" 73 }, { 74 "orgId" : "5980cfe20b6d97029d82fa63", 75 "roleName" : "ORG_MEMBER" 76 }, { 77 "orgId" : "5980cfe20b6d97029d82fa63", 78 "roleName" : "ORG_BILLING_ADMIN" 79 } ] 80 } ], 81 "totalCount" : 2 82 }