Cuando realizo operaciones de lectura, escritura, lista o eliminación en mi servidor de AWS Transfer Family, aparece el error «Acceso denegado» o «Permiso denegado».
Resolución
Para solucionar problemas de configuración de Transfer Family, revise los permisos del servicio de AWS asociado.
Permisos de Amazon S3
Asegúrese de que el rol y la política de AWS Identity and Access Management (IAM) de su servidor de Transfer Family concedan acceso a sus recursos de AWS. Para conceder acceso de lectura y escritura a un bucket de Amazon Simple Storage Service (Amazon S3), utilice el siguiente ejemplo de política de IAM:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowListingOfUserFolder",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::amzn-s3-demo-bucket"
]
},
{
"Sid": "HomeDirObjectAccess",
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject",
"s3:DeleteObjectVersion",
"s3:GetObjectVersion",
"s3:GetObjectACL",
"s3:PutObjectACL"
],
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
}
]
}
Asegúrate de que la política de confianza de los roles permita el acceso a «transfer.amazonaws.com» y tenga un aspecto similar al siguiente:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "transfer.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
Para obtener más información, consulte Ejemplo de política de acceso de lectura/escritura.
Permisos de cifrado de AWS KMS
Para permitir el cifrado en Transfer Family, la política de roles de IAM adjunta al usuario debe conceder los permisos de AWS Key Management Service (AWS KMS) necesarios.
Para conceder permisos para usar Transfer Family con un bucket de Amazon S3 habilitado para el cifrado de AWS KMS, utilice el siguiente ejemplo:
{
"Sid": "Stmt1544140969635",
"Action": [
"kms:Decrypt",
"kms:Encrypt",
"kms:GenerateDataKey",
"kms:GetPublicKey",
"kms:ListKeyPolicies"
],
"Effect": "Allow",
"Resource": "arn:aws:kms:region:account-id:key/kms-key-id"
}
Para obtener más información, consulte Protección de datos y cifrado.
Permisos de Amazon EFS
Para usar Transfer Family con Amazon Elastic File System (Amazon EFS), la política de roles de IAM debe conceder acceso a su sistema de archivos.
Para conceder los permisos de lectura ClientMount y de escritura ClientWrite al rol de IAM EFS-role-for-transfer, utilice el siguiente ejemplo de política de IAM:
{
"Version": "2012-10-17",
"Id": "efs-policy-wizard-8698b356-4212-4d30-901e-ad2030b57762",
"Statement": [
{
"Sid": "Grant-transfer-role-access",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:role/EFS-role-for-transfer"
},
"Action": [
"elasticfilesystem:ClientWrite",
"elasticfilesystem:ClientMount"
]
}
]
}
Para obtener más información, consulte Uso de AWS Transfer Family para transferir datos.
Permisos entre cuentas
Para usar Transfer Family para acceder a su sistema de archivos con otra cuenta de AWS, debe conceder a la cuenta acceso a su sistema de archivos.
Para obtener más información, consulte ¿Cómo configuro mi servidor de AWS Transfer Family para usar un bucket de Amazon S3 que se encuentra en otra cuenta de AWS?