amazon web services - servidores - Política de acceso a los archivos de Amazon S3 en función de la dirección IP
servicios de amazon (2)
¿Hay alguna manera de limitar el acceso de un archivo almacenado en Amazon S3 en función de la dirección IP del cliente?
Tengo un archivo almacenado allí, que debe tener acceso solo por una dirección IP específica. ¿Como hacer esto?
Amazon describe esto en sus documentos S3 en "Ejemplos de política de contenedores", al restringir el acceso a direcciones IP específicas :
La condición en esta declaración identifica el rango 54.240.143. * De direcciones IP permitidas, con una excepción: 54.240.143.188.
{
"Version": "2012-10-17",
"Id": "S3PolicyId1",
"Statement": [
{
"Sid": "IPAllow",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::examplebucket/*",
"Condition": {
"IpAddress": {"aws:SourceIp": ["54.240.143.0/24", "1.2.3.4/32" ]},
"NotIpAddress": {"aws:SourceIp": "54.240.143.188/32"}
}
}
]
}
Puede agregar algo así en la consola AWS S3. Seleccione su categoría, haga clic en la pestaña Propiedades y luego en Permisos. Haga clic en "Agregar política de cubos" y péguela en el formulario del diálogo emergente.
Modifiqué el ejemplo de Amazon para mostrar cómo se pueden incluir múltiples rangos de IP en la política al proporcionar una matriz JSON en lugar de una cadena. La entrada "aws: SourceIp" de "1.2.3.4/32" significa que la dirección IP única, 1.2.3.4, también tiene acceso.
Sí, lo hay, aunque yo no he usado esto yo mismo.
S3 admite control granular de cubos y objetos en ellos utilizando "Idioma de política de acceso". Existe una lista blanca específica y declaraciones de IP de lista negra disponibles. Sin embargo, tendrá que escribir las declaraciones APL y cargarlas.
http://docs.amazonwebservices.com/AmazonS3/latest/dev/AccessPolicyLanguage.html
Aquí hay 2 ejemplos de sección de condición:
Lista blanca
"Condition" : {
"IpAddress" : {
"aws:SourceIp" : ["192.168.176.0/24","192.168.143.0/24"]
}
}
Lista negra
"Condition" : {
"NotIpAddress" : {
"aws:SourceIp" : ["192.168.176.0/24","192.168.143.0/24"]
}
}