1개의 프로젝트에 기존 사용자 추가
- Cloud Manager 에 대한 프로그래밍 방식의 액세스 를 위한 OAuth 2.0 인증 은 Preview 기능 으로 제공됩니다.
- 기능 및 해당 설명서는 미리 보기 기간에 언제든지 변경될 수 있습니다. OAuth 2.0 인증 을 사용하려면 Cloud Manager 공개 API 에 대한 요청에 사용할서비스 계정을 만듭니다.
참고
그룹과 프로젝트는 동의어입니다. {PROJECT-ID}
는 프로젝트 ID와 동일합니다. 기존 그룹의 경우, 그룹/프로젝트 ID는 동일하게 유지됩니다. 이 페이지에서는 설명에 대해 얘기할 때 더욱 친숙한 용어 그룹을 사용합니다. 엔드포인트는 문서에 명시된 대로 유지됩니다.
이 리소스 는 Cloud Manager 에 있는 사용자를 다른 프로젝트 에 추가합니다. 새 사용자를 생성하여 프로젝트 에 추가하지는 않습니다. 기본값 으로 사용자는 먼저 프로젝트 에 대한 초대를 받습니다. mms.user.bypassInviteForExistingUsers
설정을 true
로 설정하다 한 경우에만 프로젝트 에 직접 사용자를 추가할 수 있습니다.
기본 URL: https://cloud.mongodb.com/api/public/v1.0
Resource
POST /groups/{PROJECT-ID}/users
요청 매개변수
요청 경로 매개변수
Parameter | 유형 | 설명 |
---|---|---|
프로젝트 ID | 문자열 | (필수 사항) 프로젝트의 고유 식별자입니다. |
요청 쿼리 매개변수
다음 쿼리 매개변수는 선택 사항입니다.
요청 본문 매개변수
이름 | 유형 | 설명 |
---|---|---|
id | 문자열 | 기존 사용자의 고유 식별자입니다. |
roles | 객체 배열 | 이 사용자에게 할당된 역할입니다. |
roles.groupId | 문자열 | 프로젝트 역할의 고유 식별자입니다. |
roles.roleName | 문자열 | 사용자 역할의 표시 이름입니다. |
응답
이름 | 유형 | 설명 |
---|---|---|
이메일 주소 | 문자열 | Cloud Manager 사용자의 이메일 주소 입니다. |
이름 | 문자열 | 반환된 Cloud Manager 사용자에 대해 표시되는 이름입니다. |
id | 문자열 | 사용자의 고유 식별자입니다. |
링크 | 객체 배열 | 하위 리소스 및/또는 관련 리소스에 대한 하나 이상의 링크입니다. 응답의 모든 |
성 | 문자열 | 반환된 Cloud Manager 사용자에 대해 표시되는 성입니다. |
roles | 객체 배열 | 이 사용자에게 할당된 역할입니다. |
roles.groupId | 문자열 | 프로젝트 역할의 고유 식별자입니다. |
roles.roleName | 문자열 | 사용자 역할의 표시 이름입니다. |
사용자 이름 | 문자열 | Cloud Manager 사용자 이름입니다. |
요청 예시
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --include \ --request POST "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/users?pretty=true" \ --data ' [ { "id": "{USER-ID}", "roles": [{ "roleName": "GROUP_OWNER" }] } ]'
참고
단일 사용자를 추가하는 경우에도 엔터티 배열을 보내야 합니다. 추가하려는 각 사용자에 대해 사용자 ID와 사용자가 보유해야 하는 역할을 지정합니다. 역할 값은 사용자 리소스의 roles.roleName
필드에 대한 설명을 참조하세요.
이미 프로젝트 멤버인 사용자를 지정하면 해당 사용자의 기존 역할을 지정된 권한으로 덮어씁니다.
응답 예시
응답 헤더
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}
응답 본문
{ "links" : [ { "href" : "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/users?pretty=true&pageNum=1&itemsPerPage=100", "rel" : "self" } ], "results" : [ { "emailAddress" : "joe.bloggs@example.com", "firstName" : "Joe", "id" : "{USER-ID}", "lastName" : "Bloggs", "links" : [ { "href" : "https://cloud.mongodb.com/api/public/v1.0/users/{USER-ID}", "rel" : "self" }, { "href" : "https://cloud.mongodb.com/api/public/v1.0/users/{USER-ID}/accessList", "rel" : "http://mms.mongodb.com/accessList" } ], "roles" : [ { "groupId" : "{PROJECT-ID}", "roleName" : "GROUP_OWNER" }, { "groupId" : "{OTHER-PROJECT-ID}", "roleName" : "GROUP_OWNER" } ... ], "username" : "joe.bloggs" }, { "emailAddress" : "jim.bloggs@example.com", "firstName" : "Jim", "id" : "{OTHER-USER-ID}", "lastName" : "Bloggs", "links" : [ { "href" : "https://cloud.mongodb.com/api/public/v1.0/users/{OTHER-USER-ID}", "rel" : "self" }, { "href" : "https://cloud.mongodb.com/api/public/v1.0/users/{OTHER-USER-ID}/accessList", "rel" : "http://mms.mongodb.com/accessList" } ], "roles" : [ { "roleName" : "GLOBAL_READ_ONLY" }, { "groupId" : "{PROJECT-ID}", "roleName" : "GROUP_OWNER" } ], "username" : "jim.bloggs" } ], "totalCount" : 2 }