AWS Backup을 사용하여 Amazon Elastic File System(Amazon EFS) 복원을 수행하려고 할 때 “Insufficient privileges to perform this action” 또는 “Access Denied” 오류가 발생합니다.
간략한 설명
AWS Backup을 사용하여 Amazon EFS 복구 지점을 복원하려면 다음 권한이 있어야 합니다.
- 복원 작업을 생성하는 AWS Identity and Access Management(IAM)에 backup:StartRestoreJob 권한이 있어야 합니다.
- 복원하는 데 사용되는 IAM 역할에 EFS 권한이 있어야 합니다.
- 암호화가 설정된 새 파일 시스템으로 EFS를 복원할 수 있습니다. 이 경우 복원 요청에 전달되는 IAM 역할에 AWS Key Management Service(AWS KMS) 권한이 있어야 합니다.
해결 방법
"Insufficient privileges to perform this action" 또는 "Access Denied" 오류 문제를 해결하려면 다음 단계를 따르세요.
-
복원 작업을 생성하는 IAM ID에 backup:StartRestoreJob AWS Backup 작업이 있는지 확인합니다. 이 권한은 첨부된 IAM 정책을 통해 허용되어야 합니다.
-
복원 요청에 전달된 IAM 역할에 첨부된 IAM 정책을 통해 허용된 다음 EFS 작업이 있는지 확인합니다.
EFS 작업:
"elasticfilesystem:Restore"
"elasticfilesystem:CreateFilesystem"
"elasticfilesystem:DescribeFilesystems"
"elasticfilesystem:DeleteFilesystem"
3. 암호화가 설정된 새 파일 시스템으로 복원하는 경우 IAM 역할에 다음과 같은 AWS KMS 권한도 있는지 확인합니다. 이러한 권한은 AWS KMS 키 정책에서 허용되거나 첨부된 IAM 정책을 통해 허용되어야 합니다.
AWS KMS 작업:
"kms:DescribeKey"
"kms:GenerateDataKeyWithoutPlaintext"
"kms:CreateGrant"
4. 볼트 액세스 정책에서 backup:StartRestoreJob 작업에 대한 명시적 거부가 없는지 확인합니다. 예를 들어, 기본 EFS 볼트 aws/efs/automatic-backup-vault는 생성 시 backup:StartRestoreJob 작업을 거부하는 다음과 같은 액세스 정책을 받습니다.
{
"Version": "2012-10-17",
"Statement": \[{
"Effect": "Deny",
"Principal": {
"AWS": "\*"
},
"Action": \[
"backup:DeleteBackupVault",
"backup:DeleteBackupVaultAccessPolicy",
"backup:DeleteRecoveryPoint",
"backup:StartCopyJob",
"backup:StartRestoreJob", <--- This action restricts restore
"backup:UpdateRecoveryPointLifecycle"
\],
"Resource": "\*"
}\]
}
5. IAM 정책 및 AWS 조직 SCP에 필요한 백업, EFS 및 AWS KMS 동작을 거부하는 거부 문이 없는지 확인합니다.
참고:
- 새 파일 시스템 또는 기존 파일 시스템으로 EFS를 복원할 수 있습니다. 전체 파일 시스템을 복원하는 전체 복원을 수행할 수 있습니다. 또는 특정 파일 및 디렉터리를 복원하는 항목 수준 복원을 수행할 수 있습니다. 어느 쪽을 선택하든 AWS Backup은 복구 지점을 복원 디렉터리 aws-backup-restore_timestamp-of-restore로 복원합니다.
- 복원이 완료되면 파일 시스템의 루트에서 복원 디렉터리를 볼 수 있습니다. 복원이 완료되지 않은 경우 aws-backup-failed-restore_timestamp-of-restore 디렉터리를 볼 수 있습니다.
- 복원 디렉터리로 복원할 수 없는 데이터 조각은 aws-backup-lost+found 디렉터리에 배치됩니다. 백업이 진행되는 동안 파일 시스템을 수정하면 조각이 이 디렉터리로 이동할 수 있습니다.
- 항목 수준 복원을 수행할 때는 마운트 지점과 관련된 상대 경로를 지정해야 합니다. 예를 들어, 파일 시스템이 /user/home/myname/efs에 마운트되어 있고 파일 경로가 user/home/myname/efs/file1인 경우, /file1을 입력하면 됩니다. 경로는 대소문자를 구분하며 특수 문자, 와일드카드 문자 또는 정규 표현식(regex) 문자열을 포함할 수 없습니다.