Gordon의 권한 모델
Gordon의 권한 모델
Gordon이 시스템을 수정할 수 있는 도구나 작업을 사용하기 전에, 그 작업을 먼저 제안하고 사용자의 승인을 기다렸다가 실행해요.
출처: 문서
본문
요구 사항: Docker Desktop 4.74.0 이상
승인이 필요한 것
기본적으로 다음 작업은 Gordon이 사용하기 전에 승인이 필요해요:
- 셸에서 실행되는 명령
- 파일 쓰기나 변경
- 인터넷에서 정보 가져오기
승인이 필요 없는 것
- 파일 읽기, 디렉터리 나열하기(Gordon의 작업 디렉터리 밖이라도 가능)
- Docker 문서 검색
- 코드 분석이나 오류 설명
권한 설정 구성
Gordon의 기본 권한 설정을 바꾸려면:
- Docker Desktop을 엽니다.
- 사이드바에서 Gordon을 선택합니다.
- 텍스트 입력 하단의 설정 아이콘을 선택합니다.
- 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 문서를 참고해 주세요.