AI 서비스 보안 평가
이 단원에서는 Azure Open AI 보안을 위한 Well Architected Framework 권장 사항을 요약해서 소개합니다.
자세한 내용은 Azure OpenAI Service에 대한 Azure Well-Architected Framework의 관점을 참조하세요.
보안 핵심 요소의 목적은 워크로드에 대해 기밀성, 무결성 및 가용성을 보증하는 데 있습니다.
보안 디자인 원칙은 Azure OpenAI를 중심으로 기술 디자인에 접근 방식을 적용하여 이러한 목표를 달성하기 위한 높은 수준의 디자인 전략을 제공할 수 있습니다.
디자인 검사 목록
보안에 대한 디자인 검토 체크리스트를 기반으로 디자인 전략을 시작하고 취약성 및 컨트롤을 식별하여 보안 태세를 개선합니다. 그런 다음 Azure OpenAI에 대한 Azure 보안 기준을 검토합니다. 마지막으로, 필요에 따라 더 많은 접근 방식을 포함하도록 전략을 확장합니다.
기밀성 보호: Azure OpenAI에 학습 데이터를 업로드하는 경우 데이터 암호화에 고객 관리형 키를 사용하고, 키 순환 전략을 구현하고, 학습, 유효성 검사 및 학습 결과 데이터를 삭제합니다. 학습 데이터에 외부 데이터 저장소를 사용하는 경우 해당 저장소에 대한 보안 모범 사례를 따릅니다. 예를 들어 Azure Blob Storage의 경우 암호화에 고객 관리형 키를 사용하고 키 순환 전략을 구현합니다. 관리 ID 기반 액세스를 사용하고, 프라이빗 엔드포인트를 사용하여 네트워크 경계를 구현하고, 액세스 로그를 사용하도록 설정합니다.
기밀성 보호: Azure OpenAI 리소스에서 액세스할 수 있는 아웃바운드 URL을 제한하여 데이터 반출을 방지합니다.
무결성 보호: 최소 권한 원칙을 사용하고 키 대신 개별 ID를 사용하여 시스템에 대한 사용자 액세스를 인증하고 권한을 부여하는 액세스 제어를 구현합니다.
무결성 보호: 탈옥 위험 감지를 구현하여 프롬프트 삽입 공격으로부터 언어 모델 배포를 보호합니다.
가용성 보호: 보안 컨트롤을 사용하여 모델 사용 할당량이 소진될 수 있는 공격을 방지합니다. 네트워크에서 서비스를 격리하도록 컨트롤을 구성할 수 있습니다. 인터넷에서 서비스에 액세스할 수 있어야 하는 경우 게이트웨이를 사용하여 라우팅 또는 제한을 사용하여 의심되는 남용을 차단하는 것이 좋습니다.
권장 사항
추천 | 장점 |
---|---|
보안 키: 아키텍처에 Azure OpenAI 키 기반 인증이 필요한 경우 애플리케이션 코드가 아닌 Azure Key Vault에 해당 키를 저장합니다. | 비밀을 Key Vault에 저장하여 코드에서 분리하면 비밀이 유출될 가능성이 줄어듭니다. 또한 분리는 비밀의 중앙 관리를 용이하게 하여 키 순환과 같은 책임을 완화합니다. |
액세스 제한: 워크로드에 필요한 경우가 아니면 Azure OpenAI에 대한 공용 액세스를 사용하지 않도록 설정합니다. Azure 가상 네트워크의 소비자로부터 연결하는 경우 프라이빗 엔드포인트를 만듭니다. | Azure OpenAI에 대한 액세스를 제어하면 권한이 없는 사용자의 공격을 방지할 수 있습니다. 프라이빗 엔드포인트를 사용하면 네트워크 트래픽이 애플리케이션과 플랫폼 간에 비공개로 유지됩니다. |
Microsoft Entra ID: 인증에 Microsoft Entra ID를 사용하고 RBAC(역할 기반 액세스 제어)를 사용하여 Azure OpenAI에 대한 액세스 권한을 부여합니다. Azure AI 서비스에서 로컬 인증을 사용하지 않도록 설정하고 disableLocalAuth 를 true 로 설정합니다. 완료 또는 이미지 생성을 수행하는 ID에 Cognitive Services OpenAI 사용자 역할을 부여합니다. 모델 자동화 파이프라인 및 임시 데이터 과학 액세스 권한에 Cognitive Services OpenAI 기여자 같은 역할을 부여합니다. |
Microsoft Entra ID를 사용하면 ID 관리 구성 요소가 중앙 집중화되고 API 키를 사용할 필요가 없어집니다. Microsoft Entra ID와 함께 RBAC를 사용하면 사용자 또는 그룹이 작업을 수행하는 데 필요한 권한을 정확하게 갖출 수 있습니다. 이러한 종류의 세분화된 액세스 제어는 Azure OpenAI API 키를 사용할 수 없습니다. |
고객 관리형 키 사용: Azure OpenAI에 업로드된 미세 조정된 모델 및 학습 데이터에 대해 고객 관리형 키를 사용합니다. | 고객 관리형 키를 사용하면 훨씬 더 유연하게 액세스 제어를 만들고, 순환하고, 사용하지 않도록 설정하고, 철회할 수 있습니다. |
탈옥 공격으로부터 보호: Azure AI 콘텐츠 보안 스튜디오를 사용하여 탈옥 위험을 감지합니다. | Azure OpenAI 배포의 안전 메커니즘을 우회하려는 프롬프트를 식별하고 차단하려는 탈옥 시도를 감지합니다. |