보안 지침
Bob은 코딩 및 시스템 상호작용 기능을 갖추고 있어요. 안전하게 사용하려면 다음 지침을 따르세요.
보안 체크리스트
- 프로젝트 액세스를 제어하려면 신뢰 폴더를 사용하세요
- 파일 액세스를 제한하려면
.bobignore를 구성하세요 - 자동 승인 설정을 검토하고 제한하세요
- 시크릿을 안전하게 관리하세요
- 적절한 인증 및 암호화와 함께 MCP를 사용하세요
- 구현하기 전에 Bob의 출력을 검토하세요
파일 액세스 제한
Bob이 상호작용할 수 있는 디렉터리와 파일 유형을 구성하여 Bob의 파일 액세스를 제어할 수 있어요. .bobignore 파일은 .gitignore와 동일한 구문을 사용하며, Bob을 설정할 때 가장 먼저 구현해야 할 보안 조치 중 하나예요.
.bobignore 설정하기
.bobignore 파일을 만드세요민감한 파일 및 디렉터리에 대한 패턴을 추가하세요. 승인되지 않은 데이터 유형에 대한 패턴도 포함하세요.
# Example .bobignore patterns
.env
secrets/
*.key
config/credentials.jsonBob은 .bobignore 파일을 지속적으로 모니터링하며, 변경 사항은 자동으로 적용돼요. 자세한 내용은 .bobignore를 사용하여 파일 액세스 제어하기를 참고하세요.
제한 사항 이해하기
.bobignore는 도구를 통한 Bob의 액세스를 효과적으로 제어하지만, 몇 가지 중요한 제한 사항이 있어요:
- 현재 워크스페이스 내의 파일에만 적용돼요
- 일부 쓰기 작업은 제한을 우회할 수 있어요
- 시스템 수준의 샌드박스는 생성하지 않아요
.bobignore가 파일을 어떻게 보호하는지 이해하려면 주요 제한 사항과 전체 범위를 검토하세요.
신뢰 폴더
Bob Shell은 신뢰 폴더를 사용하여 액세스할 수 있는 프로젝트를 제어해요. Bob Shell이 프로젝트별 구성을 로드하기 전에 폴더를 명시적으로 승인해야 해요. 이를 통해 잠재적으로 악의적인 코드로부터 보호받을 수 있어요.
처음으로 폴더에서 Bob Shell을 실행하면 다음 중 하나를 선택할 수 있어요:
- 폴더 신뢰: 현재 폴더에 완전한 신뢰 권한 부여
- 상위 폴더 신뢰: 상위 디렉터리와 모든 하위 디렉터리에 신뢰 권한 부여
- 신뢰 안 함: 제한된 안전 모드에서 Bob Shell 실행
신뢰받지 못한 폴더는 상당한 제한이 있는 안전 모드로 작동해요:
- 프로젝트 설정 및 환경 변수가 무시돼요
- 도구 자동 승인이 비활성화돼요
- MCP 서버가 연결되지 않아요
- 사용자 정의 명령이 로드되지 않아요
신뢰 폴더의 작동 방식, 신뢰 설정 관리 및 모범 사례에 대한 자세한 내용은 신뢰 폴더를 참고하세요.
자동 승인 설정
Bob을 사용하면 확인 프롬프트 없이 다양한 작업을 자동으로 승인할 수 있어요. 이렇게 하면 워크플로우가 빨라지지만 보안 위험이 크게 높아져요.
자동 승인 설정은 확인 프롬프트를 건너뛰고 Bob에게 시스템에 대한 직접 액세스를 부여해요. 이로 인해 데이터 손실, 파일 손상 또는 더 심각한 결과가 발생할 수 있어요. 명령줄 액세스는 유해한 작업을 실행할 가능성이 있어 특히 위험해요.
고위험 자동 승인 설정
| 설정 | 위험도 | 권장 사항 |
|---|---|---|
| 파일 편집 | 높음 | 통제된 환경에서만 활성화 |
| 명령 실행 | 높음 | 허용 목록을 사용하고 와일드카드 사용 지양 |
| MCP 서버 사용 | 중-높음 | 신뢰할 수 있는 서버에서만 사용 |
| 파일 읽기 | 중간 | 민감한 데이터 노출 가능성 고려 |
Bob의 출력이 정확하고 생성된 코드가 의도한 대로 동작하는지 확인하기 위해 항상 출력을 검토하세요. 어떤 AI 시스템의 출력도 무조건 신뢰하지 마세요.
각 설정과 보안에 미치는 영향에 대한 자세한 내용은 Bob Shell 구성하기를 참고하세요.
시크릿 안전하게 관리하기
Bob을 포함한 어떤 AI 시스템에도 시크릿을 직접 제공하지 마세요. 코드에 일시적으로 시크릿을 포함하더라도 의도치 않은 노출로 이어질 수 있어요.
시크릿 관리 모범 사례
- 시크릿을 환경 변수 파일에 저장하세요
.gitignore와.bobignore모두 시크릿을 저장하는 파일에 대한 액세스를 제한하는지 확인하세요- 가능하면 시크릿 관리 도구를 사용하세요
- 자격 증명을 할당할 때 최소 권한 원칙을 따르세요. 각 작업에 필요한 최소한의 권한만 부여하세요.
권한 위임
AI 시스템은 사용자의 개입 및 검토 없이 대신 행동할 수 있는 자격 증명을 활용해서는 안 돼요. AI 시스템이 대신 행동해야 할 경우:
- OAuth와 같은 위임 메커니즘을 사용하세요
- 시간 제한 토큰을 구현하세요
- 모든 작업을 모니터링하고 감사하세요
MCP 안전하게 사용하기
Model Context Protocol (MCP)은 외부 도구 및 서비스에 연결하여 Bob의 기능을 확장해요. 강력하지만, MCP 연결에는 신중한 보안 고려가 필요해요.
MCP 아키텍처 개요
MCP는 클라이언트-서버 아키텍처를 사용해요:
- Bob은 MCP 클라이언트를 포함하는 호스트 역할을 해요
- 클라이언트는 MCP 서버(로컬 또는 원격)에 연결돼요
- 서버는 추가 도구와 기능을 제공해요
MCP 서버 보안 요구 사항
MCP 서버를 사용할 때 다음 지침을 따르세요:
- 인증: 서버에 액세스하는 사용자의 신원을 확인하세요
- 암호화: Bob과 서버 간 전송 중인 데이터를 보호하세요
- 액세스 제어: 서버가 수행할 수 있는 작업을 제한하세요
- 감사: 책임 추적을 위해 모든 작업을 기록하세요
원격 MCP 서버는 엔드포인트 보호, 네트워크 제한, 적절한 액세스 제어 등 기존 서버 인프라와 동일한 보안 요구 사항을 준수해야 해요.
공유 MCP 서버의 경우 작업을 추적할 수 있도록 적절한 감사 가능성과 책임을 확보하세요.
추가 보안 고려 사항
- 생성된 콘텐츠 검토: 구현 전에 항상 Bob의 출력을 확인하세요
- 정기적인 업데이트: Bob 및 해당 종속성을 최신 상태로 유지하세요
- 보안 교육: 팀원들이 AI 보안 위험을 이해하는지 확인하세요
- 인시던트 대응: 잠재적인 보안 인시던트에 대처하기 위한 계획을 마련하세요
- 워크스페이스 격리: 민감한 프로젝트에는 전용 워크스페이스 사용을 고려하세요
- 권한 범위 지정: Bob의 액세스를 특정 작업에 필요한 것으로만 제한하세요
이러한 보안 모범 사례를 따르면 안전한 개발 환경을 유지하면서 Bob의 강력한 기능을 활용할 수 있어요.