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