Gordon의 권한 모델

Gordon의 권한 모델

Gordon이 시스템을 수정할 수 있는 도구나 작업을 사용하기 전에, 그 작업을 먼저 제안하고 사용자의 승인을 기다렸다가 실행해요.

출처: 문서

본문

요구 사항: Docker Desktop 4.74.0 이상

승인이 필요한 것

기본적으로 다음 작업은 Gordon이 사용하기 전에 승인이 필요해요:

  • 셸에서 실행되는 명령
  • 파일 쓰기나 변경
  • 인터넷에서 정보 가져오기

승인이 필요 없는 것

  • 파일 읽기, 디렉터리 나열하기(Gordon의 작업 디렉터리 밖이라도 가능)
  • Docker 문서 검색
  • 코드 분석이나 오류 설명

권한 설정 구성

Gordon의 기본 권한 설정을 바꾸려면:

  1. Docker Desktop을 엽니다.
  2. 사이드바에서 Gordon을 선택합니다.
  3. 텍스트 입력 하단의 설정 아이콘을 선택합니다.
  4. Basic 탭에서 Gordon이 도구를 사용하기 전에 권한을 요청할지 여부를 구성할 수 있어요.

권한 검사를 완전히 우회하려면 YOLO 모드를 활성화할 수도 있어요.

새 권한 설정은 모든 세션에 즉시 적용돼요.

세션 수준 권한

"Approve for this session"(Desktop) 또는 "A"(CLI)를 선택하면 Gordon은 현재 대화 동안 그 특정 도구를 다시 묻지 않고 사용할 수 있어요.

예시:

$ docker ai "check my containers and clean up stopped ones"
Gordon proposes:
docker ps -a
Approve? [Y/n/a]: a
[Gordon executes docker ps -a]
Gordon proposes:
docker container prune -f
[Executes automatically - you approved shell access for this session]

세션 권한은 다음 경우에 초기화돼요:

  • Gordon 뷰를 닫을 때(Desktop)
  • docker ai를 종료할 때(CLI)
  • 새 대화를 시작할 때

보안 고려 사항

작업 디렉터리: 작업 디렉터리는 파일 작업의 기본 컨텍스트를 정해줘요. 하지만 Gordon이 파일이나 디렉터리에 접근하는 범위를 제한하지는 않아요. Gordon은 이 디렉터리 밖의 파일도 읽을 수 있어요.

승인 전 확인: Gordon은 실수를 할 수 있어요. 승인하기 전에 다음을 확인하세요:

  • 명령이 의도와 일치하는지 확인
  • 컨테이너 이름과 이미지 태그가 올바른지 확인
  • 볼륨 마운트와 포트 매핑 확인
  • 중요한 로직에 대한 파일 변경 사항 검토

작업이 이해되지 않으면 Gordon에게 설명을 요청하거나, 거부하고 다른 접근 방식을 요청하세요.

파괴적 작업: Gordon은 파괴적인 작업에 대해 경고하지만 막지는 않아요. docker container rm, docker system prune, docker volume rm 같은 작업은 영구적인 데이터 손실을 일으킬 수 있어요. 중요한 데이터는 먼저 백업하세요.

중지와 되돌리기

실행 중에 Ctrl+C(CLI)를 누르거나 Cancel(Desktop)을 선택하면 Gordon을 중지할 수 있어요.

Docker 명령이나 버전 관리를 사용해 Gordon의 작업을 되돌릴 수 있어요:

  • Git에서 파일 복원
  • 중지된 컨테이너 다시 시작
  • 이미지 다시 빌드
  • 백업에서 볼륨 재생성
  • 작업 디렉터리의 모든 파일에 버전 관리 사용

조직 차원의 제어

관리자는 Settings Management를 사용해 조직 수준에서 Gordon의 기능을 제어할 수 있어요.

사용 가능한 제어:

  • Gordon을 완전히 비활성화
  • 도구 기능 제한
  • 작업 디렉터리 경계 설정

Business 구독에서는 사용자가 접근하기 전에 관리자가 Gordon을 반드시 활성화해야 해요.

자세한 내용은 Settings Management 문서를 참고해 주세요.

더 알아보기 (Learn more)