Organization 정책

Organization 정책 (Organization policies)

Organization 정책을 통해 접근 제어 관리를 관리자 수준으로 중앙화하는 방법을 알아볼게요.

출처: 문서

본문

여기서 설명하는 거버넌스는 로컬 샌드박스에 적용돼요. 클라우드 샌드박스는 별도의 네트워크 정책 구성을 사용해요. 클라우드 제어는 클라우드 네트워크 정책을 참고하세요.

Local 정책은 개별 개발자가 자기 샌드박스가 접근할 수 있는 대상을 제어하게 해줘요. Organization 정책은 그 제어를 관리자 수준으로 옮겨요: organization 정책은 조직 전체의 로컬 샌드박스에 적용되며, 모든 멤버 또는 특정 팀에 적용돼요. Organization 거버넌스가 활성화되면 organization의 allow 규칙만 접근을 허용해요: 로컬 sbx policy allow 규칙은 더 이상 평가되지 않고 조직이 허용하는 범위를 넓힐 수 없어요. Local 네트워크 deny 규칙은 여전히 활성이라 개발자는 더 제한할 수 있지만 완화할 수는 없어요.

관리자는 Docker Home UI에서 organization 정책을 관리할 수 있어요. 네트워크 및 파일시스템 정책을 프로그래밍 방식으로 관리하려면 Governance API를 사용하세요.

기본적으로 조직 소유자만 AI Governance 정책을 보고 관리할 수 있어요. 소유자가 아닌 사람이 정책을 관리하게 하려면 Governance 권한이 있는 사용자 정의 역할을 만들고 사용자나 팀에 할당하세요.

[!NOTE] 샌드박스 organization 거버넌스는 별도의 유료 구독에서 제공돼요. 접근을 요청하려면 Docker 영업팀에 문의하세요.

정책 생성 (Create a policy)

Docker Home 왼쪽 내비게이션의 AI Platform 섹션에서 정책을 관리해요.

정책을 만들려면:

  1. Docker Home에 로그인하고 조직을 선택하세요.
  2. 왼쪽 내비게이션에서 AI Platform을 펼치고 Network access, Filesystem access, 또는 MCP access를 선택하세요.
  3. Create policy를 선택하세요.
  4. Policy name을 입력하세요.
  5. Scope를 Organization 또는 Teams로 설정하세요. Teams를 선택하면 정책이 적용될 팀을 고르세요. 정책을 팀으로 범위 지정하기를 참고하세요.
  6. 정책 규칙을 정의하세요. 네트워크와 파일시스템 정책은 각 규칙에 Add rule을 선택하고, MCP 정책은 정책 에디터에 Cedar 문을 입력하세요. 문법과 예시는 정책 유형 선택의 관련 접근 제어 페이지를 사용하세요.

기존 정책은 이름, 스코프, 규칙 개수, 마지막 업데이트와 함께 나열돼요. 작업 메뉴(⋮)로 정책을 편집하거나 삭제할 수 있어요.

지원 메시지 구성 (Configure a support message)

관리자는 organization 거버넌스가 샌드박스 동작을 차단할 때 정책 거부 세부 정보 뒤에 표시되는 선택적 지원 메시지를 추가할 수 있어요. 내부 지원 채널, 티켓 큐, 보안 연락처로 멤버를 안내하는 데 사용하세요.

메시지를 설정하려면:

  1. Docker Home에 로그인하고 조직을 선택하세요.
  2. 왼쪽 내비게이션에서 AI Platform을 펼치고 Manage를 선택하세요.
  3. Support message에 최대 500자를 입력하세요.
  4. Save changes를 선택하세요.

Docker는 organization 거버넌스 정책으로 인한 거부에 대해서만 이 메시지를 표시해요. 비워두면 Docker는 추가 연락처 문구 없이 정책 거부만 표시해요.

정책 유형 선택 (Choose a policy type)

Organization 정책은 접근 표면(access surface)별로 관리돼요. 문법, 예시, 시행 세부 사항은 접근 제어 페이지를 사용하세요:

Organization 거버넌스가 활성화되면 local 및 kit 정의 allow 규칙은 평가되지 않고, 해당 출처의 deny 규칙은 여전히 적용돼요. Precedence(우선순위)를 참고하세요. 개발자 머신에서 어떤 규칙이 활성인지 보려면 Monitoring 정책을 사용하세요.

정책을 팀으로 범위 지정 (Scope policies to teams)

조직은 여러 정책을 가질 수 있고, 각 정책은 전체 조직 또는 특정 팀에 적용돼요. 범위 지정을 통해 조직의 여러 부분에 서로 다른 규칙을 적용할 수 있어요.

정책의 Scope가 적용 대상을 결정해요. Organization으로 설정하면 모든 멤버에게, Teams로 설정하면 선택한 팀의 멤버에게만 적용돼요.

시작하기 전에

팀 범위 지정은 조직의 기존 팀을 대상으로 하므로, 정책을 범위 지정하려면 팀이 먼저 존재해야 해요. 팀을 만들고 멤버를 관리하는 방법은 두 가지예요:

  • Docker Home에서 수동으로.
  • 그룹 매핑으로 IdP(identity provider)의 그룹을 조직의 팀과 자동으로 동기화. 그룹 매핑은 없는 팀을 만들고 멤버십을 IdP 그룹에 맞게 유지해요.

정책이 팀별로 적용되므로, 사용자의 팀 멤버십이 바뀌면(IdP에서 동기화된 변경 포함) 해당 사용자의 정책도 자동으로 업데이트돼요.

범위 지정 정책이 결합되는 방식

사용자는 모든 유효 정책에 의해 통제돼요: 모든 조직 전체 정책과, 사용자가 속한 팀에 대한 팀 범위 정책을 합친 것이에요. 모든 곳에 적용되어야 하는 가드레일에는 조직 전체 정책을, 일부 팀만 필요한 접근에는 팀 범위 정책을 사용하세요.

Local과 organization 정책 간의 우선순위, allow와 deny 규칙이 결합되는 방식은 Policy 개념을 참고하세요.

문제 해결 (Troubleshooting)

정책 변경이 적용되지 않음

organization 정책을 업데이트한 후 변경 사항이 개발자 머신에 전파되는 데 최대 5분이 걸려요. 즉시 적용하려면 사용자가 sbx policy reset을 실행하면 돼요. 이 명령은 데몬을 중지하고 다음 sbx 명령에서 최신 organization 정책을 가져오도록 강제해요.

[!WARNING] sbx policy reset은 로컬에 구성된 모든 정책 규칙을 삭제해요. 이 명령은 진행 전에 확인을 요구해요.

정책 유형별 시행 시점

정책 유형마다 개발자 머신에 도달한 후 변경이 적용되는 시점이 달라요:

  • 네트워크 정책은 모든 아웃바운드 요청마다 평가돼요. 정책 변경이 개발자 머신에 동기화되면(최대 5분) 이후 요청에 즉시 적용돼요.

  • 파일시스템 정책은 워크스페이스가 마운트될 때, 즉 샌드박스가 생성될 때만 검사돼요. 샌드박스가 실행 중이 되면 파일시스템 정책 변경은 그 샌드박스에 영향을 주지 않아요. 샌드박스는 제거되고 새로 생성될 때까지 이전에 허용된 경로에 계속 접근해요.

  • MCP 등록 정책은 sbx mcp add로 서버가 등록될 때 평가돼요. 등록 규칙을 변경해도 기존 등록이 제거되거나 이미 로드된 서버가 자체적으로 중지되지는 않아요.

  • MCP 사용 시점 정책은 샌드박스가 도구 호출, 리소스 읽기, 프롬프트 조회, 내장 게이트웨이 도구 호출 같은 통제 대상 MCP 요청을 할 때 MCP 게이트웨이가 평가해요. 정책 변경이 동기화되면 사용 시점 규칙은 게이트웨이를 통한 이후 통제 대상 MCP 요청에 적용돼요.

파일시스템 정책 변경을 즉시 적용하려면 실행 중인 샌드박스를 제거하고 새로 만드세요. 이미 등록되거나 로드된 MCP 서버의 사용을 막으려면 등록된 서버 이름에 사용 시점 규칙을 추가하세요. 예시는 서버 접근 철회를 참고하세요.

더 알아보기 (Learn more)