IAM 역할의 임시 보안 자격 증명 취소
주의
이 페이지의 단계대로 수행하면, 역할을 수임하여 만들어진 현재 세션의 모든 사용자는 모든 AWS 작업 및 리소스에 액세스할 수 없게 됩니다. 이로 인해 사용자가 저장하지 않은 작업이 사라질 수 있습니다.
세션 지속 시간을 길게 하여(예: 12시간) 사용자가 AWS Management Console에 액세스할 수 있도록 하면 사용자의 임시 자격 증명이 금방 만료되지 않습니다. 사용자가 허가 받지 않은 제3자에게 실수로 보안 인증 정보를 노출한 경우, 해당 제3자는 세션의 지속 기간 동안 액세스 권한을 가지게 됩니다. 그러나 필요하다면 특정 시점 이전에 발행된 역할의 자격 증명에 대한 모든 권한을 즉시 취소할 수 있습니다. 그러면 지정한 시점 이전에 발행된 해당 역할의 임시 자격 증명은 모두 무효가 됩니다. 이에 따라 모든 사용자는 다시 인증을 받고 새 보안 인증 정보를 요청해야 합니다.
참고
서비스 연결 역할에 대한 세션은 취소할 수 없습니다.
이 주제의 절차에 따라 역할의 권한을 취소하면 AWS는 모든 작업에 대한 모든 권한을 거부하는 새 인라인 정책을 만들어 해당 역할에 연결합니다. 여기에는 권한을 취소한 시점 이전에 역할을 위임한 사용자에게만 제한을 가하는 조건이 포함됩니다. 권한을 취소한 이후에 역할을 위임한 사용자에게는 거부 정책이 적용되지 않습니다.
액세스 거부에 대한 자세한 내용은 임시 보안 자격 증명에 대한 권한 비활성화 섹션을 참조하세요.
중요
이 거부 정책은 콘솔 세션의 지속 기간이 긴 사용자만이 아니라 지정된 역할의 모든 사용자에게 적용됩니다.
역할의 세션 권한을 취소하기 위한 최소 권한
역할의 세션 권한을 취소하려면 해당 역할에 대한 PutRolePolicy
권한이 있어야 합니다. 이렇게 하면 해당 역할에 AWSRevokeOlderSessions
인라인 정책을 연결할 수 있게 됩니다.
세션 권한 취소
역할에서 세션 권한을 취소하여 역할을 수임한 사용자에게 모든 권한을 거부할 수 있습니다.
참고
IAM Identity Center 권한 세트에서 생성된 역할은 IAM에서 편집할 수 없습니다. IAM Identity Center에서 사용자의 활성 권한 세트 세션을 취소해야 합니다. 자세한 내용은 IAM Identity Center 사용 설명서의 권한 세트에 의해 생성된 활성 IAM 역할 세션 취소를 참조하세요.
역할 자격 증명의 현재 사용자에 대해 모든 권한을 즉시 거부하려면
AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
탐색 창에서 역할(Roles)을 선택한 다음, 권한을 취소할 역할의 이름(확인란 아님)을 선택합니다.
-
선택한 역할의 요약 페이지에서 Revoke sessions(세션 취소) 탭을 선택합니다.
-
Revoke sessions(세션 취소) 탭에서 Revoke active sessions(활성 세션 취소)를 선택합니다.
-
AWS에 작업 확인 메시지가 나타납니다. 이 역할에 대한 모든 활성 세션을 취소함을 인정합니다.(I acknowledge that I am revoking all active sessions for this role.) 확인란을 선택하고 대화 상자에서 활성 세션 취소(Revoke active sessions)를 선택합니다.
그런 다음 IAM은 역할에
AWSRevokeOlderSessions
라는 정책을 연결합니다. Revoke active sessions(활성 세션 취소)를 선택하면 정책은 과거에 해당 역할이 부여된 사용자에 대한 모든 액세스를 거부하고 이후의 약 30초 동안에도 액세스를 거부합니다. 이 미래 시간 선택은 특정 리전에 업데이트된 정책이 시행되기 전에 획득되거나 갱신된 새 세션을 처리하기 위해 정책의 전파 지연을 고려합니다. Revoke active sessions(활성 세션 취소)를 선택한 후 약 30초 이후에 역할이 부여되는 사용자는 영향을 받지 않습니다. 변경 사항이 즉시 표시되지 않는 이유를 알아보려면 변경 사항이 매번 즉시 표시되는 것은 아닙니다 섹션을 참조하세요.
참고
나중에 Revoke active sessions(활성 세션 취소)를 다시 선택하는 경우, 정책의 날짜/시간 스탬프가 새로 고쳐지면서 새로 지정된 시간 이전에 역할을 부여된 모든 사용자의 모든 권한을 거부하게 됩니다.
이러한 식으로 세션이 취소된 유효한 사용자는 작업을 계속하려면 새 세션을 위한 임시 자격 증명을 가져와야 합니다. AWS CLI은(는) 보안 인증이 만료될 때까지 이를 캐시합니다. CLI가 더 이상 유효하지 않은 캐시된 자격 증명을 강제로 삭제하고 새로 고치게 하려면 다음 명령 중 하나를 실행합니다.
Linux, macOS 또는 Unix
$
rm -r ~/.aws/cli/cache
Windows
C:\>
del /s /q %UserProfile%\.aws\cli\cache
지정된 시간 전에 세션 권한 취소
또한 AWS CLI 또는 SDK를 사용하여 정책의 조건 요소에서 aws:TokenIssueTime
키 값을 지정하여 원하는 시간에 세션 권한을 취소할 수도 있습니다.
이 정책은 aws:TokenIssueTime
의 값이 지정된 날짜와 시각보다 이른 경우 모든 권한을 거부합니다. aws:TokenIssueTime
의 값은 임시 보안 자격 증명이 생성된 정확한 시간과 일치합니다. aws:TokenIssueTime
값은 임시 보안 인증으로 로그인된 AWS 요청의 컨텍스트에서만 존재하므로 정책의 Deny 문은 IAM 사용자의 장기 보안 인증으로 로그인한 요청에는 영향을 미치지 않습니다.
이 정책도 역할에 연결할 수 있습니다. 이 경우 정책은 지정된 시각 및 날짜 이전에 그 역할에 의해 생성된 임시 보안 자격 증명에만 영향을 미칩니다.
{ "Version": "2012-10-17", "Statement": { "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "DateLessThan": {"aws:TokenIssueTime": "2014-05-07T23:47:00Z"} } } }
이러한 식으로 세션이 취소된 유효한 사용자는 작업을 계속하려면 새 세션을 위한 임시 자격 증명을 가져와야 합니다. AWS CLI은(는) 보안 인증이 만료될 때까지 이를 캐시합니다. CLI가 더 이상 유효하지 않은 캐시된 자격 증명을 강제로 삭제하고 새로 고치게 하려면 다음 명령 중 하나를 실행합니다.
Linux, macOS 또는 Unix
$
rm -r ~/.aws/cli/cache
Windows
C:\>
del /s /q %UserProfile%\.aws\cli\cache