기능 1. 개발자와 데이터 과학자에게 생성형 AIFMs(모델 추론)에 대한 보안 액세스 권한 제공 - AWS 규범적 지침

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

기능 1. 개발자와 데이터 과학자에게 생성형 AIFMs(모델 추론)에 대한 보안 액세스 권한 제공

다음 아키텍처 다이어그램은 이 기능을 위해 Generative AI 계정에 권장되는 AWS 서비스를 보여줍니다. 이 기능의 범위는 사용자에게 채팅 및 이미지 생성을 위한 파운데이션 모델(FMs)에 대한 액세스 권한을 부여하는 것입니다.

AWS 모델 추론을 위한 생성형 AI 계정에 권장되는 서비스

생성형 AI 계정은 Amazon Bedrock을 사용하여 생성형 AI 기능을 보호하는 데 전념합니다. 이 가이드 전체에서 기능을 사용하여 이 계정(및 아키텍처 다이어그램)을 구축할 것입니다. 계정에는 사용자에 대한 대화를 저장하고 프롬프트 스토어를 유지하기 위한 서비스가 포함됩니다. 또한 계정에는 보안 가드레일과 중앙 집중식 보안 거버넌스를 구현하는 보안 서비스가 포함되어 있습니다. 사용자는 ID 공급자(IdP )를 사용하여 Generative AI 계정의 가상 프라이빗 클라우드(VPC)에 안전하게 액세스하여 페더레이션 액세스를 얻을 수 있습니다. AWS PrivateLink 는 에서 Amazon Bedrock 엔드포인트 서비스로VPC의 프라이빗 연결을 지원합니다. VPC 환경이 액세스하도록 구성된 Amazon S3의 모델 호출 로그 및 프롬프트 스토어 버킷에 대한 Amazon S3 게이트웨이 엔드포인트를 생성해야 합니다. 또한 VPC 환경이 액세스하도록 구성된 CloudWatch 로그에 대해 Amazon CloudWatch Logs 게이트웨이 엔드포인트를 생성해야 합니다.

이론적 근거

생성형 AI에 대한 액세스 권한을 사용자에게 부여FMs하면 자연어 처리, 이미지 생성, 효율성 및 의사 결정 향상과 같은 작업에 고급 모델을 사용할 수 있습니다. 이러한 액세스는 직원들이 새로운 애플리케이션을 실험하고 최첨단 솔루션을 개발할 수 있기 때문에 조직 내에서 혁신을 촉진하여 궁극적으로 생산성을 개선하고 경쟁 우위를 제공합니다. 이 사용 사례는 Generative AI Security Scoping Matrix 의 범위 3에 해당합니다. 범위 3에서 조직은 Amazon Bedrock에서 제공되는 것과 같은 사전 훈련된 FM을 사용하여 생성형 AI 애플리케이션을 빌드합니다. 이 범위에서는 애플리케이션과 애플리케이션에서 사용하는 모든 고객 데이터를 제어하는 반면, FM 공급자는 사전 훈련된 모델과 해당 훈련 데이터를 제어합니다. 다양한 애플리케이션 범위와 관련된 데이터 흐름 및 사용자와 FM 공급자 간의 공동 책임에 대한 정보는 생성형 AI 보안: 관련 보안 제어 적용 AWS 블로그 게시물을 참조하세요. https://aws.amazon.com/blogs/security/securing-generative-ai-applying-relevant-security-controls/  

사용자에게 Amazon Bedrock의 생성형 AIFMs에 대한 액세스 권한을 부여할 때는 다음과 같은 주요 보안 고려 사항을 해결해야 합니다. 

  • 모델 호출, 대화 기록 및 프롬프트 스토어에 대한 보안 액세스 

  • 대화 및 프롬프트 스토어 암호화

  • 즉각적인 주입 또는 민감한 정보 공개와 같은 잠재적 보안 위험 모니터링    

다음 섹션에서는 이러한 보안 고려 사항과 생성형 AI 기능에 대해 설명합니다. 

보안 고려 사항

생성형 AI 워크로드는 고유한 위험에 직면합니다. 예를 들어 위협 행위자는 지속적인 출력을 강제하는 악성 쿼리를 생성하여 과도한 리소스 소비를 초래하거나 부적절한 모델 응답을 초래하는 프롬프트를 생성할 수 있습니다. 또한 최종 사용자는 프롬프트에 민감한 정보를 입력하여 이러한 시스템을 실수로 오용할 수 있습니다. Amazon Bedrock은 데이터 보호, 액세스 제어, 네트워크 보안, 로깅 및 모니터링, 입력/출력 검증을 위한 강력한 보안 제어를 제공하여 이러한 위험을 완화하는 데 도움이 될 수 있습니다. 다음 단원에서 각각에 대해 살펴 봅니다. 생성형 AI 워크로드와 관련된 위험에 대한 자세한 내용은 Open Worldwide Application Security Project(OWASP) 웹 사이트 및 MITRE 웹 사이트의 OWASP 대언어 모델 애플리케이션 상위 10위를 참조MITREATLAS하세요. 

수정

ID 및 액세스 관리

사용자 이름 및 암호와 같은 장기 보안 인증 정보가 있으므로 IAM 사용자를 사용하지 마세요. 대신 에 액세스할 때 임시 자격 증명을 사용합니다AWS. 자격 증명 공급자(IdP )를 사용하여 인간 사용자가 임시 자격 증명을 제공하는 IAM 역할을 수임하여 AWS 계정에 대한 페더레이션 액세스를 제공할 수 있습니다.

중앙 집중식 액세스 관리를 위해 AWS IAM Identity Center 를 사용합니다. IAM Identity Center 및 다양한 아키텍처 패턴에 대한 자세한 내용은 이 가이드의 IAM 심층 분석 섹션을 참조하세요. 

Amazon Bedrock에 액세스하려면 최소 권한 집합이 있어야 합니다. Amazon Bedrock에 대한 액세스FMs는 기본적으로 부여되지 않습니다. FM에 대한 액세스 권한을 얻으려면 충분한 권한을 가진 IAM 자격 증명이 Amazon Bedrock 콘솔을 통해 액세스를 요청해야 합니다. 모델 액세스 권한을 추가, 제거 및 제어하는 방법에 대한 자세한 내용은 Amazon Bedrock 설명서의 모델 액세스를 참조하세요. 

Amazon Bedrock에 대한 액세스를 안전하게 제공하려면 요구 사항에 따라 Amazon Bedrock 정책 예제를 사용자 지정하여 필요한 권한만 허용되는지 확인합니다. 

네트워크 보안

AWS PrivateLink 를 사용하면 에서 프라이빗 IP 주소를 사용하여 일부 AWS 서비스, 다른 AWS 계정에서 호스팅하는 서비스(엔드포인트 서비스라고 함) 및 지원되는 AWS Marketplace 파트너 서비스에 연결할 수 있습니다VPC. 인터페이스 엔드포인트는 VPC의 서브넷에 있는 탄력적 네트워크 인터페이스와 IP 주소를 VPC 사용하여 내부에서 직접 생성됩니다. 이 접근 방식은 Amazon VPC 보안 그룹을 사용하여 엔드포인트에 대한 액세스를 관리합니다. AWS 를 사용하여 PrivateLink 트래픽을 인터넷VPC에 노출하지 않고 에서 Amazon Bedrock 엔드포인트 서비스로 프라이빗 연결을 설정합니다. 는 Amazon Bedrock 서비스 계정의 API 엔드포인트에 프라이빗 연결을 PrivateLink 제공하므로 의 인스턴스는 Amazon Bedrock에 액세스하기 위해 퍼블릭 IP 주소가 필요하지 VPC 않습니다. 

로깅 및 모니터링

모델 호출 로깅을 활성화합니다. 모델 호출 로깅을 사용하여 AWS 계정의 모든 Amazon Bedrock 모델 호출에 대한 호출 로그, 모델 입력 데이터 및 모델 출력 데이터를 수집합니다. 기본적으로 로깅은 비활성화됩니다. 호출 로깅을 활성화하여 계정에서 수행되는 모든 호출과 연결된 전체 요청 데이터, 응답 데이터, IAM 호출 역할 및 메타데이터를 수집할 수 있습니다.

중요

호출 로깅 데이터에 대한 전체 소유권과 제어를 유지하며IAM, 정책 및 암호화를 사용하여 권한이 있는 직원만 액세스할 수 있도록 할 수 있습니다. AWS 또한 모델 공급자도 데이터에 대한 가시성이나 액세스 권한이 없습니다.

로그 데이터가 게시될 대상 리소스를 제공하도록 로깅을 구성합니다. Amazon Bedrock은 Amazon CloudWatch Logs 및 Amazon Simple Storage Service(Amazon S3)와 같은 대상에 대한 기본 지원을 제공합니다. 모델 호출 로그를 저장하도록 두 소스를 모두 구성하는 것이 좋습니다. 

신속한 주입 또는 민감한 정보 공개를 포함하여 잠재적 오용을 방지하는 데 도움이 되는 자동 남용 탐지 메커니즘을 구현합니다. 잠재적 오용이 감지되면 관리자에게 알리도록 알림을 구성합니다. 이는 지표를 기반으로 하는 사용자 지정 CloudWatch 지표 및 경보를 통해 달성할 수 있습니다. CloudWatch

를 사용하여 Amazon Bedrock API 활동을 모니터링합니다AWS CloudTrail. 최종 사용자를 위해 프롬프트 스토어에서 일반적으로 사용되는 프롬프트를 저장하고 관리하는 것을 고려해 보세요. 프롬프트 스토어에 Amazon S3를 사용하는 것이 좋습니다. 

설계 고려 사항

규정 준수 및 개인 정보 보호 요구 사항에 대해 이 접근 방식을 평가해야 합니다. 모델 호출 로그는 모델 입력 및 모델 입력의 일부로 민감한 데이터를 수집할 수 있으며, 이는 사용 사례에 적합하지 않을 수 있고, 경우에 따라 사용자가 보유한 위험 규정 준수 목표를 충족하지 못할 수 있습니다.

입력 및 출력 검증

Amazon Bedrock 모델과 상호 작용하는 사용자를 위해 Amazon Bedrock용Guardrails를 구현하려면 가드레일을 프로덕션에 배포하고 애플리케이션의 가드레일 버전을 호출해야 합니다. 이렇게 하려면 Amazon Bedrock 과 인터페이스하는 워크로드를 생성하고 보호해야 합니다API. 

권장 AWS 서비스

참고

이 섹션과 다른 기능에서 설명하는 AWS 서비스는 이 섹션에서 설명하는 사용 사례에 따라 다릅니다. 또한 모든 AWS 계정에 AWS Security Hub, Amazon GuardDuty, AWS Config, IAM Access Analyzer 및 AWS CloudTrail 조직 추적과 같은 공통 보안 서비스 세트가 있어야 일관된 가드레일을 활성화하고 조직 전체에 중앙 집중식 모니터링, 관리 및 거버넌스를 제공할 수 있습니다.  이 가이드 앞부분의 모든 AWS 계정에서 일반적인 보안 서비스 배포 섹션을 참조하여 이러한 서비스의 기능과 아키텍처 모범 사례를 이해하세요.

Amazon S3

Amazon S3는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스입니다. 권장되는 보안 모범 사례는 블로그 게시물의 Amazon S3 설명서, 온라인 기술 강연 및 심층 분석을 참조하세요.

모델 호출 로그일반적으로 사용되는 프롬프트를 S3 버킷의 프롬프트 스토어로 호스팅합니다. S3 버킷은 생성, 소유 및 관리하는 고객 관리형 키로 암호화해야 합니다. 추가 네트워크 보안 강화를 위해 VPC 환경이 액세스하도록 구성된 S3 버킷에 대한 게이트웨이 엔드포인트를 생성할 수 있습니다. 액세스를 로깅하고 모니터링해야 합니다.

백업에 버전 관리를 사용하고 Amazon S3 객체 잠금 을 사용하여 객체 수준의 변경 불가능성을 적용합니다. 객체 잠금이 활성화된 데이터가 개인 식별 정보(PII)로 간주되는 경우 개인 정보 보호 규정 준수 문제가 발생할 수 있습니다. 이 위험을 완화하고 안전망을 제공하려면 객체 잠금에 대한 규정 준수 모드 대신 거버넌스 모드를 사용합니다. 리소스 기반 정책을 사용하여 Amazon S3 파일에 대한 액세스를 더 엄격하게 제어할 수 있습니다. 

Amazon CloudWatch

Amazon CloudWatch 은 애플리케이션을 모니터링하고, 성능 변화에 대응하고, 리소스 사용을 최적화하고, 운영 상태에 대한 통찰력을 제공합니다. AWS 리소스 CloudWatch 간 데이터를 수집하여 는 시스템 전체 성능에 대한 가시성을 제공하고 경보를 설정하고, 변경 사항에 자동으로 대응하고, 운영 상태를 통합적으로 파악할 수 있습니다. 

CloudWatch 를 사용하여 Amazon Bedrock 및 AmazonS3의 변경 사항을 설명하는 시스템 이벤트에 대한 경보를 모니터링하고 생성합니다. 프롬프트가 즉각적인 주입 또는 민감한 정보 공개를 나타낼 수 있는 경우 관리자에게 알리도록 알림을 구성합니다. 이는 로그 패턴에 기반한 사용자 지정 CloudWatch 지표 및 경보를 통해 달성할 수 있습니다. 생성, 소유 및 관리하는 고객 관리형 키를 사용하여 CloudWatch Logs의 로그 데이터를 암호화합니다. 추가 네트워크 보안 강화를 위해 VPC 환경이 액세스하도록 구성된 CloudWatch 로그에 대한 게이트웨이 엔드포인트를 생성할 수 있습니다. Security OU Security Tooling 계정에서 Amazon CloudWatch Observability Access Manager를 사용하여 모니터링을 중앙 집중화할 수 있습니다. 최소 권한 원칙을 사용하여 CloudWatch Logs 리소스에 대한 액세스 권한을 관리합니다. 

AWS CloudTrail 

AWS CloudTrail 는 AWS 계정 내 활동의 거버넌스, 규정 준수 및 감사를 지원합니다. 를 사용하면 AWS 인프라 전반의 작업과 관련된 계정 활동을 로깅, 지속적인 모니터링 및 유지할 CloudTrail수 있습니다. 

CloudTrail 를 사용하여 Amazon Bedrock 및 Amazon S3에 대한 모든 생성, 읽기, 업데이트 및 삭제(CRUD) 작업을 로깅하고 모니터링합니다. 자세한 내용은 Amazon Bedrock 설명서의 l을 사용하여 Amazon Bedrock API 호출 로깅 AWS CloudTrai Amazon S3 설명서의 를 사용하여 Amazon S3 API 호출 로깅AWS CloudTrail을 참조하세요. Amazon S3

CloudTrail Amazon Bedrock의 로그에는 프롬프트 및 완료 정보가 포함되지 않습니다. 조직의 모든 계정에 대한 모든 이벤트를 기록하는 조직 추적을 사용하는 것이 좋습니다. 생성형 AI 계정의 모든 CloudTrail 로그를 Security OU Log Archive 계정으로 전달합니다. 중앙 집중식 로그를 사용하면 Amazon S3 객체 액세스, 자격 증명별 무단 활동, IAM 정책 변경 및 민감한 리소스에서 수행되는 기타 중요한 활동에 대한 알림을 모니터링, 감사 및 생성할 수 있습니다. 자세한 내용은 AWS 의 보안 모범 사례를 참조하세요 CloudTrail.

Amazon Macie

Amazon Macie는 기계 학습 및 패턴 매칭을 사용하여 에서 민감한 데이터를 검색하고 보호하는 완전 관리형 데이터 보안 및 데이터 프라이버시 서비스입니다AWS. 워크로드가 처리하는 데이터의 유형과 분류를 식별하여 적절한 제어가 적용되도록 해야 합니다. Macie는 S3 버킷에 저장된 프롬프트 스토어 및 모델 호출 로그에서 민감한 데이터를 식별하는 데 도움이 될 수 있습니다. Macie를 사용하여 Amazon S3에서 민감한 데이터의 검색, 로깅 및 보고를 자동화할 수 있습니다. 이렇게 하려면 두 가지 방법, 즉 Macie가 민감한 데이터 자동 검색을 수행하도록 구성하고 민감한 데이터 검색 작업을 생성하고 실행합니다. 자세한 내용은 Macie 설명서의 Amazon Macie를 사용하여 민감한 데이터 검색을 참조하세요.