기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
모범 사례
이 단원에서는이 안내서의 몇 가지 주요 내용을 나열합니다. 각 요점에 대한 자세한 내용은 해당 섹션 링크를 따르세요.
애플리케이션에 적합한 액세스 제어 모델 선택
이 안내서에서는 여러 액세스 제어 모델에 대해 설명합니다. 애플리케이션 및 비즈니스 요구 사항에 따라 자신에게 적합한 모델을 선택해야 합니다. 이러한 모델을 사용하여 액세스 제어 요구 사항을 충족하는 방법과 선택한 접근 방식을 변경해야 하는 액세스 제어 요구 사항이 어떻게 진화할 수 있는지 생각해 보세요.
PDP 구현
정책 결정 시점(PDP)은 정책 또는 규칙 엔진으로 특성화할 수 있습니다. 이 구성 요소는 정책 또는 규칙을 적용하고 특정 액세스 허용 여부에 대한 결정을 반환할 책임이 있습니다. PDP를 사용하면 애플리케이션 코드의 권한 부여 로직을 별도의 시스템으로 오프로드할 수 있습니다. 이렇게 하면 애플리케이션 코드가 간소화될 수 있습니다. 또한 APIs, 마이크로서비스, 프런트엔드용 백엔드(BFF) 계층 또는 기타 애플리케이션 구성 요소에 대한 권한 부여 결정을 내릴 수 있는 easy-to-use idempotent 인터페이스를 제공합니다. PDP를 사용하여 애플리케이션 전체에서 테넌시 요구 사항을 일관되게 적용할 수 있습니다.
애플리케이션의 모든 API에 대한 PEPs 구현
정책 적용 지점(PEP)을 구현하려면 애플리케이션에서 액세스 제어 적용이 발생할 위치를 결정해야 합니다. 첫 번째 단계로 애플리케이션에서 PEPs를 통합할 수 있는 지점을 찾습니다. PEPs.
애플리케이션이 API를 노출하는 경우 해당 API에 대한 권한 부여 및 액세스 제어가 있어야 합니다.
Amazon Verified Permissions 또는 OPA를 PDP의 정책 엔진으로 사용하는 것이 좋습니다.
Amazon Verified Permissions는 사용자 지정 정책 엔진보다 이점이 있습니다. 이는 빌드하는 애플리케이션을 위한 확장 가능하고 세분화된 권한 관리 및 권한 부여 서비스입니다. 상위 수준의 선언적 오픈 소스 언어 Cedar에서 정책 작성을 지원합니다. 따라서 Verified Permissions를 사용하여 정책 엔진을 구현하려면 자체 솔루션을 구현하는 것보다 개발 노력이 적게 필요합니다. 또한 Verified Permissions는 완전히 관리되므로 기본 인프라를 관리할 필요가 없습니다.
Open Policy Agent(OPA)는 사용자 지정 정책 엔진보다 이점이 있습니다. Rego를 사용한 OPA 및 해당 정책 평가는 높은 수준의 선언적 언어로 정책을 작성하는 것을 지원하는 유연한 사전 구축된 정책 엔진을 제공합니다. 이렇게 하면 자체 솔루션을 구축하는 것보다 정책 엔진을 구현하는 데 필요한 노력 수준이 크게 줄어듭니다. 또한 OPA는 빠르게 지원되는 권한 부여 표준이 되고 있습니다.
DevOps용 OPA, 모니터링 및 로깅을 위한 제어 영역 구현
OPA는 소스 제어를 통해 권한 부여 로직에 대한 변경 사항을 업데이트하고 추적할 수 있는 수단을 제공하지 않으므로 이러한 함수를 수행하기 위해 컨트롤 플레인을 구현하는 것이 좋습니다. 이렇게 하면 특히 OPA가 분산 시스템에서 작동하는 경우 업데이트가 OPA 에이전트에 더 쉽게 배포될 수 있으므로 OPA 사용의 관리 부담이 줄어듭니다. 또한 컨트롤 플레인을 사용하여 집계를 위한 로그를 수집하고 OPA 에이전트의 상태를 모니터링할 수 있습니다.
Verified Permissions에서 로깅 및 관찰 기능 구성
Verified Permissions는 관찰성 기능에 쉽게 액세스할 수 있습니다. Amazon CloudWatch 로그 그룹 AWS CloudTrail, S3 버킷 또는 Amazon Data Firehose 전송 스트림에 대한 모든 액세스 시도를 로깅하도록 서비스를 구성하여 보안 인시던트 및 감사 요청에 신속하게 대응할 수 있습니다. 또한를 통해 서비스의 상태를 모니터링할 수 있습니다 AWS Health Dashboard. Verified Permissions는 관리형 서비스이므로에서 상태를 유지 AWS하며 다른 AWS 관리형 서비스를 사용하여 관찰성 기능을 구성할 수 있습니다.
CI/CD 파이프라인을 사용하여 Verified Permissions에서 정책 스토어 및 정책 프로비저닝 및 업데이트
Verified Permissions는 관리형 서비스이므로 업데이트를 수행하기 위해 컨트롤 플레인 또는 에이전트를 관리, 구성 또는 유지 관리할 필요가 없습니다. 그러나 AWS SDK를 사용하여 Verified Permissions 정책 스토어 및 정책 업데이트의 배포를 관리하려면 지속적 통합 및 지속적 배포(CI/CD) 파이프라인을 사용하는 것이 좋습니다. 이러한 노력은 Verified Permissions 리소스를 변경할 때 수동 작업을 제거하고 운영자 오류 가능성을 줄일 수 있습니다.
권한 부여 결정에 외부 데이터가 필요한지 여부를 결정하고 이를 수용할 모델을 선택합니다.
PDP가 JSON 웹 토큰(JWT)에 포함된 데이터만을 기반으로 권한 부여 결정을 내릴 수 있는 경우 일반적으로 이러한 결정을 내리는 데 도움이 되도록 외부 데이터를 가져올 필요가 없습니다. Verified Permissions 또는 OPA를 PDP로 사용하는 경우이 데이터가 JWT에 포함되지 않더라도 요청의 일부로 전달되는 추가 입력을 수락할 수도 있습니다. Verified Permissions의 경우 추가 데이터에 컨텍스트 파라미터를 사용할 수 있습니다. OPA의 경우 JSON 데이터를 오버로드 입력으로 사용할 수 있습니다. JWT를 사용하는 경우 컨텍스트 또는 오버로드 입력 방법은 일반적으로 외부 데이터를 다른 소스에 유지하는 것보다 훨씬 쉽습니다. 권한 부여 결정을 내리는 데 더 복잡한 외부 데이터가 필요한 경우 OPA는 외부 데이터를 검색하기 위한 여러 모델을 제공하며 Verified Permissions는 외부 소스를 권한 부여 서비스와 참조함으로써 권한 부여 요청의 데이터를 보완할 수 있습니다.