Amazon SQS 액세스 정책 언어의 명시적 거부와 기본 거부 간의 관계 - Amazon Simple Queue Service

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

Amazon SQS 액세스 정책 언어의 명시적 거부와 기본 거부 간의 관계

Amazon SQS 정책이 요청에 직접 적용되지 않으면 요청 결과는 Default-deny입니다. 예를 들어, 한 사용자가 Amazon SQS 사용 권한을 요청했지만 해당 사용자에게 적용되는 유일한 정책에서 DynamoDB를 사용할 수 있으면, 요청 결과는 기본 거부가 됩니다.

설명의 조건이 충족되지 않을 경우에도 요청 결과는 기본 거부가 됩니다. 명령문의 모든 조건이 충족되면 요청은 정책의 효과 요소 값에 따라 허용 또는 Explicit-deny로 처리됩니다. 정책에서는 어떤 조건이 충족되지 않을 때 해야 할 일을 지정하지 않으므로, 이러한 경우 기본 결과는 기본 거부가 됩니다. 예를 들어 남극 대륙에서 오는 요청을 차단하고 싶다면 남극 대륙에서 오지 않은 요청만 허용하는 정책 A1을 작성하면 됩니다. 다음 다이어그램은 Amazon SQS 정책을 보여줍니다.

정책 A1은 허용과 동일한 효과와 남극 대륙에서 보낸 요청이 아닌 경우와 동일한 조건을 포함합니다.

사용자가 미국에서 요청을 보낼 경우 (남극 대륙에서 온 요청이 아니므로) 조건을 충족하고, 요청 결과는 허용이 됩니다. 그러나 사용자가 남극 대륙에서 요청을 보낸다면 조건이 충족되지 않으므로 요청 결과는 기본 거부가 됩니다. 이 결과를 명시적 거부로 변경하려면 남극 대륙에서 온 요청을 명시적으로 거부하는 정책 A2를 작성합니다. 다음 다이어그램은 이 정책을 보여줍니다.

정책 A2는 거부와 동일한 효과와 남극 대륙에서 보낸 요청이 있는 경우와 동일한 조건을 포함합니다.

사용자가 남극 대륙에서 요청을 보낸다면 조건이 충족되므로 요청 결과는 명시적 거부가 됩니다.

허용기본 거부를 덮어쓸 수 있지만 명시적 거부는 덮어쓸 수 없기 때문에 전자와 후자를 구분하는 것이 중요합니다. 예를 들어, 요청이 2010년 6월 1일에 도착하면 정책 B는 요청을 허용합니다. 다음 다이어그램은 이 정책을 정책 A1과 정책 A2 조합을 비교한 것입니다.

시나리오 1과 시나리오 2를 나란히 비교한 결과입니다.

시나리오 1에서 이 정책은 2010년 6월 1일에 들어오는 요청을 허용하기 때문에 정책 A1의 결과는 기본 거부가 되고 정책 B의 결과는 허용이 됩니다. 정책 B의 허용은 정책 A1의 기본 거부보다 우선하므로 이 요청은 허용됩니다.

시나리오 2에서 정책 B2의 결과는 명시적 거부이고 정책 B의 결과는 허용입니다. 정책 A2의 명시적 거부는 정책 B의 허용보다 우선하고 이 요청은 거부됩니다.