문서 메뉴
문서 홈
/ /
Atlas App Services
/

사용자 계정 관리

이 페이지의 내용

  • 개요
  • 사용자 삭제
  • 사용자 수동 삭제
  • SDK에서 사용자 삭제
  • 사용자 지정 함수로 사용자 삭제
  • 사용자 비활성화
  • 사용자 활성화

App Services UI, App Services CLI, Admin API 또는 Realm SDK를 사용하여 애플리케이션의 사용자 계정을 관리할 수 있습니다.

메타데이터 및 인증 제공자 ID를 포함하여 애플리케이션에서 사용자를 완전히 제거할 수 있습니다. 사용자를 삭제하면 해당 사용자와 연결된 모든 세션 도 즉시 종료됩니다.

If you don't want to delete the user's account, you can disable their account to temporarily suspend their access.

Realm UI, Atlas CLI 또는 Admin API를 사용하여 사용자 계정을 수동으로 제거할 수 있습니다.

  1. 왼쪽 탐색 메뉴에서 App Users 을 선택합니다.

  2. 삭제하려는 사용자의 현재 상태에 따라 Confirmed 또는 Pending 을 선택합니다.

  3. Users 탭 아래의 목록에서 사용자를 찾고 줄임표(...)를 클릭합니다.

  4. Delete User 를 클릭하고 선택을 확인합니다.

사용자를 삭제하려면 appservices users delete 을(를) 호출합니다. CLI는 애플리케이션 ID를 입력하라는 메시지를 표시하고 선택할 수 있도록 해당 애플리케이션의 사용자를 나열합니다.

appservices users delete

프로그램을 호출할 때 인수를 지정할 수도 있습니다.

appservices users delete \
--app=<Your App ID> \
--user=<User ID>

id 값을 쉼표로 구분된 목록으로 지정하여 단일 명령으로 여러 사용자를 삭제할 수 있습니다.

appservices users delete --user=6099694d5debcbcc873ff413,60996996b78eca4a8d615d3a

사용자를 삭제하려면 다음 형식으로 DELETE 요청을 생성합니다. 그룹, 앱 및 사용자 ID를 지정해야 합니다.

curl --request DELETE \
--header 'Authorization: Bearer <access_token>' \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users/<userId>

대기 중인 이메일/비밀번호 사용자를 삭제하려면 다음 형식으로 요청을 생성하세요.

curl --request DELETE \
--header 'Authorization: Bearer <access_token>' \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/user_registrations/by_email/<email>

다음도 참조하세요.

참고

App Services는 삭제된 사용자와 연결한 MongoDB Atlas cluster의 데이터를 자동으로 삭제하지 않습니다. 예를 들어 애플리케이션에서 사용자가 owner_id 필드에 자신의 ID를 포함하여 사용자에게 연결된 데이터를 생성할 수 있도록 허용하는 경우, 사용자 객체를 삭제해도 사용자가 생성한 연결된 데이터는 삭제되지 않습니다. 삭제된 사용자의 모든 추적을 제거하려면 해당 문서를 수동으로 삭제하거나 수정해야 합니다.

Realm SDK를 사용하여 사용자를 삭제할 때 사용자에게 클라이언트 애플리케이션에서 자신의 계정을 삭제할 수 있는 옵션을 제공할 수 있습니다.

사용자를 삭제하는 사용자 지정 함수를 작성할 수 있습니다. SDK가 아직 사용자 삭제 API를 지원하지 않는 경우 이 작업을 수행하는 것이 좋습니다.

Application Authentication 를 사용하는 아래 예와 유사한 함수를 만듭니다 . 함수가 성공적으로 인증되지 않거나 호출한 사용자를 삭제할 수 없는 경우 오류 처리를 통합할 수 있습니다.

이 예제 함수에서는 adminApiPublicKey 및 adminApiPrivateKey 에 대한 값과 비밀을 생성했습니다 . 그런 다음 프로젝트 및 애플리케이션 IDapiUrl 에 추가합니다.

그런 다음 SDK에서 이 함수를 호출 할 수 있습니다. 아래 예제 함수는 인수를 받지 않으며 함수를 호출한 사용자를 삭제합니다.

앱에서 이메일/비밀번호 인증 을 사용하는 경우 두 번째 엔드포인트와 관련된 대기 중인 사용자를 삭제할 수 있습니다.

const apiUrl = "https://services.cloud.mongodb.com/api/admin/v3.0/groups/{insert-your-project-id}/apps/{insert-your-app-id}";
exports = async function(){
// This function deletes the user who calls it. It gets this user's ID
// from the user in the function context. This is safer than accepting
// a passed-in user ID, as the user can never delete any other user's account.
const callersUserId = context.user.id
async function adminLogIn() {
const username = context.values.get("adminApiPublicKey");
const apiKey = context.values.get("adminApiPrivateKey");
const response = await context.http.post({
url: "https://services.cloud.mongodb.com/api/admin/v3.0/auth/providers/mongodb-cloud/login",
body: {username, apiKey},
encodeBodyAsJSON: true,
});
const body = EJSON.parse(response.body.text());
return body.access_token;
}
const token = await adminLogIn();
async function deleteUser(_id) {
await context.http.delete({
url: `${apiUrl}/users/${_id}`,
headers: {"Authorization": [`Bearer ${token}`]}
});
return _id;
}
return deleteUser(callersUserId);
};

사용자를 일시적으로 비활성화하여 사용자가 로그인할 수 없도록 하고 사용자의 기존 액세스 및 새로 고침 토큰을 무효화할 수 있습니다. 비활성화된 사용자가 다시 로그인할 수 있도록 설정할 수 있습니다.

  1. 왼쪽 탐색 메뉴에서 App Users 을 선택합니다.

  2. 비활성화하려는 사용자의 현재 상태에 따라 Confirmed 또는 Pending 을 선택합니다.

  3. Users 탭의 목록에서 사용자를 찾아 줄임표(...)를 클릭합니다.

  4. Disable User 를 클릭하고 선택을 확인합니다.

사용자를 비활성화하려면 appservices users disable 을(를) 호출합니다. CLI는 애플리케이션 ID를 입력하라는 메시지를 표시하고 선택할 수 있도록 해당 애플리케이션의 사용자를 나열합니다.

appservices users disable

프로그램을 호출할 때 인수를 지정할 수도 있습니다.

appservices users disable \
--app=<Your App ID> \
--user=<User ID>

여러 사용자의 id 값을 쉼표로 구분된 목록으로 지정하여 단일 명령으로 여러 사용자를 비활성화할 수 있습니다.

appservices users disable --user=6099694d5debcbcc873ff413,60996996b78eca4a8d615d3a

사용자를 비활성화하려면 다음 형식으로 PUT 요청을 생성합니다. 그룹, 앱 및 사용자 ID를 지정해야 합니다.

curl --request PUT \
--header 'Authorization: Bearer <access_token>' \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users/<userId>/disable

다음도 참조하세요.

비활성화된 사용자 가 다시 로그인할 수 있도록 설정할 수 있습니다.

  1. 왼쪽 탐색 메뉴에서 App Users 을 선택합니다.

  2. 활성화하려는 사용자의 현재 상태에 따라 Confirmed 또는 Pending 을 선택합니다.

  3. Users 탭의 목록에서 사용자를 찾아 줄임표(...)를 클릭합니다.

  4. Enable User 를 클릭하고 선택을 확인합니다.

사용자를 활성화하려면 appservices users enable 을(를) 호출합니다. CLI는 애플리케이션 ID를 입력하라는 메시지를 표시하고 선택할 수 있도록 해당 앱의 사용자를 나열합니다.

appservices users enable

프로그램을 호출할 때 인수를 지정할 수도 있습니다.

appservices users enable \
--app=<Your App ID> \
--user=<User ID>

여러 사용자의 id 값을 쉼표로 구분된 목록으로 지정하여 단일 명령으로 여러 사용자를 허용할 수 있습니다.

appservices users enable --user=6099694d5debcbcc873ff413,60996996b78eca4a8d615d3a

사용자를 활성화하려면 다음 형식으로 PUT 요청을 생성합니다. 그룹, 앱 및 사용자 ID를 지정해야 합니다.

curl --request PUT \
--header 'Authorization: Bearer <access_token>' \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users/<userId>/enable

다음도 참조하세요.

돌아가기

사용자 메타데이터 읽기

다음

사용자 세션 관리