AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

보안, 거버넌스 및 감사 가능성

사용자 위임 액세스 사용하여 AI 클라이언트 Atlas 에 연결하면 AI 클라이언트 사용자의 Atlas ID를 사용하여 사용자를 대신합니다. 이 페이지에서는 해당 권한 부여 작동 방식, AI 클라이언트 액세스할 수 있는 것과 액세스 할 수 없는 것, 자격 증명 보호되는 방법에 대해 설명합니다.

조직 소유자가 액세스 허용하고, 액세스 모드를 구성하고, AI 클라이언트 활동을 감사하는 방법을 학습 조직에 대한 AI 클라이언트 액세스 관리를 참조하세요.

원격 MCP 서버 모델 컨텍스트 프로토콜 사양의 20251125 버전 - - 를 구현합니다. 프로토콜 의 일부로 사용자 위임 액세스 OAuth 2 를 사용합니다.1 코드 교환용 증명 키(PKCE)를 사용한 권한 부여 코드 흐름입니다.

AI 클라이언트 기존 Atlas 역할 사용하여 Atlas ID로 작동합니다. AI 클라이언트 이미 보유한 권한을 초과할 수 없습니다. 사용자의 역할 조치 허용하지 않는 경우 AI 클라이언트 사용자를 대신하여 해당 조치 수행할 수 없습니다.

권한의 하위 집합을 위임할 수 없습니다. AI 클라이언트 권한을 부여하면 조직 소유자가 구성한 액세스 모드 에 따라 기존의 전체 권한으로 작동합니다. 액세스 모드에 대해 학습 AI 클라이언트 액세스 모드를 참조하세요.

Atlas AI 클라이언트 수행하는 모든 작업을 감사 로그 에 기록합니다. 조직 감사 로그 이벤트는 사용자 ID 와 요청 한 AI 클라이언트 의 ID 를 모두 기록 . Atlas AI 클라이언트 활동을 감사 로그 에 기록하는 방법을 학습 조직에 대한 AI 클라이언트 액세스 관리를 참조하세요.

Atlas 사용자의 자격 증명 AI 클라이언트 와 공유하지 않습니다. 연결 흐름 중에 브라우저에서 Atlas 사용하여 직접 인증합니다. AI 클라이언트 사용자의 Atlas 비밀번호나 수명이 긴 자격 자격 증명 절대 수신하지 않습니다.

연결에 권한을 부여하면 Atlas 연결에 사용되는 토큰을 관리합니다. 토큰 새로 고침은 자동입니다. 연결 문자열 이나 암호를 관리 하지 않습니다.

Atlas 데이터에 연결하기 위해 개인 ID가 포함된 단기 자격 자격 증명 사용합니다. Atlas 데이터 영역 연결에 대해서만 이러한 자격 증명 생성합니다.

데이터베이스 연결 세부 정보는 AI 클라이언트 에 노출되지 않습니다. AI 클라이언트 구성된 액세스 모드 에서 사용할 수 있는 도구를 통해서만 데이터와 상호 작용합니다.

AI 클라이언트의 클러스터 연결 기능 사용자의 Atlas 권한에 따라 달라집니다. AI 클라이언트 통해 데이터베이스 액세스 받는 Atlas 역할을 학습 사용자 역할 및 데이터베이스 액세스를 참조하세요.

액세스 취소하면 동일한 타임라인에서 데이터 플레인 액세스 도 종료됩니다. AI 클라이언트 모든 도구를 호출하려면 유효한 액세스 토큰을 제시해야 합니다. 액세스 토큰이 만료되어 새로 고침 토큰이 더 이상 작동하지 않으면 데이터베이스 자격 증명 아직 만료되지 않았더라도 AI 클라이언트 데이터에 연결할 수 없습니다.

사용자를 대신하는 AI 클라이언트의 액세스 활동과 관계없이 7 일 동안 또는 액세스 부여한 시점으로부터 30 일 후에 종료됩니다. 액세스 종료되면 다시 인증해야 AI 클라이언트 에 다시 연결됩니다. 조직 소유자는 조직 의 최대 토큰 수명을 줄일 수 있습니다.

Atlas UI 에서 언제든지 AI 클라이언트의 액세스 취소할 수 있습니다. 액세스 취소하면 AI 클라이언트의 새로 고침 토큰이 무효화되지만 클라이언트의 현재 액세스 토큰은 최대 10 분 후 만료될 때까지 유효합니다. 조직 소유자가 해당 조직 에 대한 AI 클라이언트 액세스 비활성화하면 Atlas 모든 관리 API 호출에서 액세스 활성화되어 있는지 확인하기 때문에 컨트롤 플레인 액세스 즉시 종료됩니다.

MongoDB MCP 서버 도구에는 도구의 기능을 설명하는 주석이 포함되어 있습니다. AI 클라이언트는 이러한 주석을 사용하여 도구를 실행 전에 요청할지 여부와 같이 도구를 제공하는 방법을 결정할 수 있습니다.

보안과 관련된 두 가지 주석은 다음과 같습니다.

  • readOnlyHint: true인 경우 도구가 데이터나 구성을 변경하지 않음을 나타냅니다.

  • destructiveHint: true인 경우 도구가 기존 데이터 또는 구성을 제거 하거나 덮어쓸 수 있음을 나타냅니다.

MCP 서버는 도구의 작업 유형에서 두 주석을 모두 파생합니다.

작업 유형
readOnlyHint
destructiveHint
예제 도구

read, metadata, connect

true

false

find, aggregate, list-databases

create

false

false

atlas-create-access-list, atlas-create-db-user

update, delete

false

true

update-many, drop-database, delete-many

경고

도구 주석은 보안 경계가 아닙니다.

destructiveHintreadOnlyHint과 같은 도구 주석은 MCP 서버가 AI 클라이언트 로 전송하는 자문 메타데이터 입니다. 어떤 작업도 승인, 제한 또는 차단 하지 않으며 AI 클라이언트 이를 무시할 수 있습니다. 의도하지 않은 변경을 방지하기 위해 주석에 의존하지 마세요.

AI 클라이언트 사용자를 대신하여 수행할 수 있는 작업을 제한하려면 AI 클라이언트의 작업 필요한 Atlas 권한만 부여하세요. Atlas 역할에 대해 학습 Atlas 사용자 역할을 참조하세요.

create 이러한 도구는 리소스를 제거하거나 덮어쓰는 대신 리소스를 추가하기 때문에 destructiveHintfalse로 보고합니다. 그러나 일부 create 도구는 여전히 보안 태세를 변경합니다. 예시 들면 다음과 같습니다.

  • atlas-create-access-list 프로젝트의 IP 액세스 목록 에 항목을 추가하여 클러스터의 노출을 높입니다. 0.0.0.0/0과 같은 항목은 클러스터 모든 IP 주소 에 노출합니다.

  • atlas-create-db-user 부여된 역할에 따라 데이터를 읽거나 쓰기 (write) 수 있는 데이터베이스 사용자를 생성합니다.

destructiveHint 값이 아닌 변경 사항을 기준으로 도구를 평가합니다.

일부 도구의 경우 MCP 서버에서 도구를 실행하기 전에 작업 확인을 요청합니다. MongoDB 이 프로세스 도출이라고 합니다. AI 클라이언트 확인 프롬프트를 표시하며, 거부할 경우 MCP 서버는 오류를 반환하고 작업을 수행하지 않습니다.

확인 여부는 MCP 추출 역량 지원하는 AI 클라이언트 에 따라 달라집니다. AI 클라이언트 도출을 지원 하지 않는 경우 MCP 서버는 확인을 요청하지 않고 도구를 실행합니다. 위험한 작업이 실행되기 전에 확인 메시지가 나타날 것이라고 가정하지 마세요.

주석이 아닌 권한에 따라 AI 클라이언트 도구를 사용하여 변경할 수 있는 항목이 결정됩니다. 권한은 다음에 의해 결정됩니다.

  • Atlas 역할

  • 조직의 AI 클라이언트 액세스 수준

도구 주석이나 확인 메시지에 관계없이 작업에 필요한 권한이 부족하면 도구가 실패합니다.

권한의 하위 집합을 위임할 수 없기 때문에 사용자를 대신하는 AI 클라이언트 역할 허용하는 모든 것에 도달할 수 있습니다. Project Database Access Admin 또는 Project IP Access List Admin와 같이 광범위한 권한을 가진 역할 맡은 경우 이를 고려하세요. 이러한 역할은 이전 섹션에서 설명한 도구를 허용합니다.

Atlas 역할에 대해 학습 Atlas 사용자 역할을 참조하세요.

대신 자동화된 에이전트 프로그래밍 방식 액세스 에 연결하면 에이전트 사용자가 아닌 서비스 계정 역할을 합니다. 각 MCP 구성의 범위를 에이전트의 워크플로에 필요한 역할로만 지정하고, 에이전트 쓰기 (write) 수행해야 하는 경우가 아니라면 구성을 읽기 전용으로 유지합니다. 읽기 전용 구성은 AI 에이전트가 쓰기 (write) 도구를 전혀 볼 수 없도록 하여 효과적인 액세스 제어가 됩니다.

경고

읽기 레이블이 지정된 일부 도구는 쓰기 (write) 수 있습니다.

aggregate, aggregate-dbexportreadOnlyHint: true을(를) 보고하는 read 도구입니다. 이러한 도구는 $out 또는 $merge 단계를 포함할 수 있는 집계 파이프라인을 실행 , 두 단계 모두 파이프라인 결과를 컬렉션 에 쓰기 (write) . operationType: "read"는 도구가 데이터를 변경하지 않는다는 것을 보장하지 않습니다.

집계 파이프라인의 $merge 단계는 파이프라인 읽는 데이터베이스 또는 컬렉션과 다른 데이터베이스 또는 컬렉션 에 쓰기 (write) 수 있습니다. $merge 단계의 into 옵션은 {db: <database>, coll: <collection>}을 허용합니다. 이 쓰기 (write) AI 클라이언트 쿼리하는 것으로 보이는 범위 외에 AI 클라이언트의 Atlas ID가 액세스 할 수 있는 모든 데이터베이스 또는 컬렉션 대상으로 할 수 있습니다.

대상 컬렉션 이미 존재하는 경우 $out 단계에서 대상 컬렉션 의 내용을 완전히 덮어씁니다.

모든 집계 파이프라인 쓰기 (write) 수행하는 것은 아닙니다. 쓰기를 생성하는 집계 파이프라인 실행하려면 다음이 필요합니다.

  • 인증된 세션: user-delegated 액세스 하에 있는 자체 세션 또는 프로그래밍 방식 액세스 하에 있는 서비스 계정의 자격 증명 하나입니다.

  • 프로젝트 액세스: AI 클라이언트의 Atlas ID는 대상 프로젝트 에 대한 쓰기 (write) 액세스 을 부여해야 합니다. 사용자 위임 액세스 의 경우 이는 사용자의 Atlas 역할 입니다. 프로그래밍 방식 액세스 의 경우 이는 서비스 계정에 할당된 Atlas 역할입니다.

이러한 조건은 위험을 줄이지 만 제거 하지는 마십시오. read 레이블만 기준으로 aggregate, aggregate-db 또는 export에 대한 액세스 부여하는 정책은 의도치 않게 AI 클라이언트 쓰기 (write) 액세스 부여할 수 있습니다.

aggregate AI 클라이언트의 액세스 모드 또는 서비스 계정의 역할 읽기 전용인 경우에도 계속 사용할 수 있습니다. 그러나 쓰기 (write) 는 여전히 실패합니다. 서비스 계정의 역할 읽기 전용이거나 조직의 액세스 모드 사용자 위임 액세스 에 대해 읽기 전용으로 설정하다 경우 파이프라인 의 $out 또는 $merge 단계를 완료할 수 없습니다. 연결 쓰기 (write) 권한이 없기 때문입니다.

MCP 서버는 집계 파이프라인 또는 단계가 포함된 경우에도 확인 프롬프트를 $out $merge 트리거합니다. AI 클라이언트 프롬프트를 표시하고 파이프라인 실행되기 전에 쓰기 (write) 확인하라는 메시지를 표시합니다. 이 확인은 도출을 지원하는 AI 클라이언트 에 따라 달라집니다. AI 클라이언트 도출을 지원 하지 않는 경우 MCP 서버는 확인을 요청하지 않고 파이프라인 실행합니다.

  • AI 클라이언트와 서비스 계정에 워크플로에 필요한 Atlas 역할만 부여하세요. 읽기 전용 역할 aggregate$out 또는 $merge 단계를 통해 쓰기를 방지합니다.

  • 추출을 지원하는 AI 클라이언트 사용하면 MCP 서버가 쓰기를 생성하는 집계 파이프라인 실행하기 전에 사용자의 동의를 구할 수 있습니다.

  • 사용자 위임 액세스 의 경우, 조직 소유자는 조직의 액세스 모드 읽기-쓰기 대신 읽기 전용으로 설정하다 수 있습니다. 이렇게 하면 조직 의 모든 AI 클라이언트 에 대해 aggregate를 통한 쓰기가 방지됩니다.

  • 프로그래밍 방식 액세스 의 경우 에이전트의 워크플로에 쓰기가 필요한 경우가 아니라면 서비스 계정의 MCP 구성을 읽기 전용으로 유지합니다. 이렇게 하면 동일한 방식으로 aggregate를 통한 쓰기가 방지됩니다.

보존된 보안 아티팩트 및 페더레이션 사용자를 위한 지침 에 대해 학습 Atlas 앱 연결 개요를 참조하세요.