1개의 프로젝트에 조직 API 키 1개 생성 및 할당
이 엔드포인트에 대한 모든 요청은 IP MongoDB Ops Manager 사용자의 액세스 API 목록에 있는 주소 에서 시작되어야 합니다. API 액세스 목록 구성에 대한 전체 문서는 조직에 API 액세스 목록 필요를 참조하세요.
기본 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0
Resource
POST /groups/{PROJECT-ID}/apiKeys
요청 경로 매개변수
이름 | 유형 | 설명 |
---|---|---|
PROJECT-ID | 문자열 | API 키를 조회 하려는 프로젝트의 고유 식별자입니다. 인증된 사용자가 액세스 있는 모든 조직을 조회 하려면 /groups 엔드포인트를 사용합니다. |
요청 쿼리 매개변수
다음 쿼리 매개변수는 선택 사항입니다.
이름 | 유형 | 설명 | 기본값 | ||||
---|---|---|---|---|---|---|---|
pageNum | integer | 페이지 번호(1-인덱스 기준)입니다. | 1 | ||||
itemsPerPage | integer | 페이지당 반환할 항목 수. 최대 500개까지 가능합니다. | 100 | ||||
pretty | 부울 | false | |||||
envelope | 부울 | 응답을 엔벨로프에 래핑할지 여부를 나타냅니다. 일부 API 클라이언트는 HTTP 응답 헤더 또는 상태 코드에 액세스할 수 없습니다. 이 문제를 해결하려면 쿼리에서 하나의 결과를 반환하는 엔드포인트의 경우 응답 본문에는 다음이 포함됩니다.
결과 목록을 반환하는 엔드포인트의 경우 | none |
요청 본문 매개변수
두 개의 본문 매개변수 중 하나 이상은 필수입니다.
이름 | 유형 | 설명 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
desc | 문자열 | API 키에 대한 설명입니다. 길이는 1 ~ 250 자여야 합니다. | ||||||||||||||||||||
roles | 문자열 배열 | API 키가 보유해야 하는 역할 목록입니다.
프로젝트 역할에는 다음이 포함됩니다.
|
응답
이름 | 유형 | 설명 | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
desc | 문자열 | 이 프로젝트에 할당된 이 조직 API 키에 대한 설명입니다. | ||||||||||||||||||||||||||||||
id | 문자열 | 이 프로젝트에 할당된 이 조직 API 키의 고유 식별자입니다. | ||||||||||||||||||||||||||||||
privateKey | 문자열 | 이 프로젝트에 할당된 이 조직 API 키의 수정된 비공개 키입니다. 이 키는 처음 생성될 때 수정되지 않은 상태로 표시됩니다. | ||||||||||||||||||||||||||||||
publicKey | 문자열 | 이 프로젝트에 할당된 이 조직 API 키의 공개 키입니다. | ||||||||||||||||||||||||||||||
roles | 객체 배열 | 이 프로젝트에 할당된 조직 API 키가 갖는 역할입니다. 이 배열은 사용자가 Ops Manager에서 가지고 있는 모든 조직 및 프로젝트 역할을 반환합니다. | ||||||||||||||||||||||||||||||
roles.groupId | 문자열 | 이 역할이 속한 프로젝트의 고유 식별자입니다. | ||||||||||||||||||||||||||||||
roles.orgId | 문자열 | 이 역할이 속한 조직의 고유 식별자입니다. | ||||||||||||||||||||||||||||||
roles.roleName | 문자열 | 역할의 이름입니다. 이 리소스는 사용자가 Ops Manager에서 가지고 있는 모든 역할을 반환합니다. 가능한 값은 다음과 같습니다. 조직 역할
프로젝트 역할
|
요청 예시
참고
요청을 하는 사용자의 형식은 {USERNAME}:{APIKEY}
또는 {PUBLIC-KEY}:{PRIVATE-KEY}
로 지정할 수 있습니다.
1 curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ 2 --header "Accept: application/json" \ 3 --header "Content-Type: application/json" \ 4 --include \ 5 --request POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/apiKeys?pretty=true" \ 6 --data '{ 7 "desc" : "New API key for test purposes", 8 "roles": ["GROUP_READ_ONLY", "GROUP_DATA_ACCESS_ADMIN"] 9 }'
응답 예시
응답 헤더
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 "desc" : "New API key for test purposes", 3 "id" : "5d1d143c87d9d63e6d694746", 4 "links" : [ { 5 "href" : "https://<OpsManagerHost>:<Port>/api/public/v1.0/orgs/5980cfe20b6d97029d82fa63/apiKeys/5d1d143c87d9d63e6d694746", 6 "rel" : "self" 7 } ], 8 "privateKey" : "********-****-****-db2c132ca78d", 9 "publicKey" : "{PUBLIC-KEY}", 10 "roles" : [ { 11 "groupId" : "{PROJECT-ID}", 12 "roleName" : "GROUP_READ_ONLY" 13 }, { 14 "groupId" : "{PROJECT-ID}", 15 "roleName" : "GROUP_DATA_ACCESS_ADMIN" 16 } ] 17 }