1개의 프로젝트에 대한 기능 정책 업데이트
- Cloud Manager 에 대한 프로그래밍 방식의 액세스 를 위한 OAuth 2.0 인증 은 Preview 기능 으로 제공됩니다.
- 기능 및 해당 설명서는 미리 보기 기간에 언제든지 변경될 수 있습니다. OAuth 2.0 인증 을 사용하려면 Cloud Manager 공개 API 에 대한 요청에 사용할서비스 계정을 만듭니다.
기본 URL: https://cloud.mongodb.com/api/public/v1.0
필수 역할
이 리소스에는 Project Owner
이(가) 필요합니다.
Resource
PUT /groups/{PROJECT-ID}/controlledFeature
중요
포함하고 유지 관리하려는 모든 정책을 포함해야 합니다. 이 리소스는 기존 정책을 덮어씁니다. 이 리소스를 사용할 때 정책을 생략하면 업데이트 후 해당 정책이 적용되지 않습니다. 해당 정책은 삭제되었습니다.
요청 경로 매개변수
이름 | 유형 | 필요성 | 설명 |
---|---|---|---|
| 문자열 | 필수 사항 | 제어된 기능이 있는 프로젝트의 고유 식별자입니다. |
요청 쿼리 매개변수
다음 쿼리 매개변수는 선택 사항입니다.
이름 | 유형 | 설명 | 기본값 | ||||||
---|---|---|---|---|---|---|---|---|---|
pageNum | integer | 페이지 번호(1-인덱스 기준)입니다. |
| ||||||
itemsPerPage | integer | 페이지당 반환할 항목 수. 최대 500개까지 가능합니다. |
| ||||||
pretty | 부울 |
| |||||||
envelope | 부울 | 응답을 엔벨로프에 래핑할지 여부를 나타냅니다. 일부 API 클라이언트는 HTTP 응답 헤더 또는 상태 코드에 액세스할 수 없습니다. 이 문제를 해결하려면 쿼리에서 하나의 결과를 반환하는 엔드포인트의 경우 응답 본문에는 다음이 포함됩니다.
결과 목록을 반환하는 엔드포인트의 경우 | none |
요청 본문 매개변수
이름 | 유형 | 설명 | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 객체 | 이 Ops Manager 프로젝트를 managed하는 외부 시스템의 매개변수 식별. | ||||||||||||||||||||||
externalManagementSystem .name | 문자열 | 이 Ops Manager 프로젝트를 managed하는 외부 시스템의 식별 레이블입니다. | ||||||||||||||||||||||
externalManagementSystem .systemId | 문자열 | 이 Ops Manager 프로젝트를 managed하는 외부 시스템의 고유 식별자입니다. | ||||||||||||||||||||||
externalManagementSystem .version | 문자열 | 이 Ops Manager 프로젝트를 managed하는 외부 시스템의 활성 릴리스입니다. | ||||||||||||||||||||||
| 배열 | 외부 시스템이 이 Ops Manager 프로젝트에 적용하는 정책 목록입니다. | ||||||||||||||||||||||
policies .policy[n] | 객체 | 이 Ops Manager 프로젝트에 대해 설정된 단일 정책입니다. 이 매개변수는 허용되는 값은 다음과 같습니다.
| ||||||||||||||||||||||
policies[n] .disabledParams | 배열 |
|
응답
이름 | 유형 | 설명 | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 문자열 | 이 정책을 설정하는 프로젝트의 고유 식별자입니다. | ||||||||||||||||||||||
| 문자열 | ISO 8601 의 타임스탬프 이 기능 제어 정책이 생성된 시점의 UTC 날짜 및 시간 형식입니다. | ||||||||||||||||||||||
| 문자열 | ISO 8601 의 타임스탬프 이 기능 제어 정책이 업데이트된 날짜 및 시간 형식(UTC )입니다. | ||||||||||||||||||||||
| 객체 | 이 Cloud Manager 프로젝트를 managed하는 외부 시스템의 매개변수 식별. | ||||||||||||||||||||||
externalManagementSystem .name | 문자열 | 이 Cloud Manager 프로젝트를 managed하는 외부 시스템의 식별 레이블입니다. | ||||||||||||||||||||||
externalManagementSystem .systemId | 문자열 | 이 Cloud Manager 프로젝트를 managed하는 외부 시스템의 고유 식별자입니다. | ||||||||||||||||||||||
externalManagementSystem .version | 문자열 | 이 Cloud Manager 프로젝트를 managed하는 외부 시스템의 활성 릴리스입니다. | ||||||||||||||||||||||
| 배열 | 외부 시스템이 이 Cloud Manager 프로젝트에 적용하는 정책 목록입니다. | ||||||||||||||||||||||
policies .policy[n] | 객체 | 이 Cloud Manager 프로젝트에 대해 설정된 단일 정책입니다. 이 매개변수는 가능한 값은 다음과 같습니다.
| ||||||||||||||||||||||
policies[n] .disabledParams | 배열 |
|
요청 예시
1 curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ 2 --header "Accept: application/json" \ 3 --header "Content-Type: application/json" \ 4 --include \ 5 --request PUT "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/controlledFeature?pretty=true" \ 6 --data '{ 7 "externalManagementSystem": 8 { 9 "name": "Operator", 10 "systemId": "6d6c139ae5528707b6e8e3b2", 11 "version": "0.2.1" 12 }, 13 "policies": [ 14 {"policy": "ExternallyManagedLock"}, 15 {"policy": "DisableUserManagement"}, 16 {"policy": "DisableAuthenticationMechanisms"}, 17 {"policy": "DisableSetMongodVersion"}, 18 { 19 "policy": "DisableSetMongodConfig", 20 "disabledParams": ["net.tls.CAFile"] 21 } 22 ] 23 }'
응답 예시
응답 헤더
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 "_id": "{PROJECT-ID}", 3 "created": "2019-08-29T15:03:24Z", 4 "updated": "2019-08-29T15:03:24Z", 5 "externalManagementSystem": 6 { 7 "name": "Operator", 8 "systemId": "6d6c139ae5528707b6e8e3b2", 9 "version": "0.2.1" 10 }, 11 "policies": [ 12 {"policy": "ExternallyManagedLock"}, 13 {"policy": "DisableUserManagement"}, 14 {"policy": "DisableAuthenticationMechanisms"}, 15 {"policy": "DisableSetMongodVersion"}, 16 { 17 "policy": "DisableSetMongodConfig", 18 "disabledParams": ["net.tls.CAFile"] 19 } 20 ] 21 }