AWS StringLike o condición para UserAgent
Tenemos una política para nuestro bucket de S3 con una condición StringLike. Permitimos solicitudes de usuarios que tiene ‘Home’ en su solicitud y actualmente la política funciona bien. Pero queremos agregar una condición “o” a la política y queremos aceptar el valor ‘House’ también. Por lo tanto, aceptaremos solicitudes con cualquiera de las dos en una única política. Ambas palabras no son obligatorias, una es suficiente para nosotros.
Hemos intentado agregar:
Home,House pero no funcionó. ¿Cómo lograr eso? Actualmente tenemos la siguiente política:
{
"Version": "2011-11-15",
"Id": "Policy150267299",
"Statement": [
{
"Sid": "Stmt102603643",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::someurl/*",
"Condition": {
"StringLike": {
"aws:UserAgent": "*Home*"
}
}
}
]
}
davy.ai
Para agregar la condición
or
a la política, podemos modificar el bloqueCondition
para incluir un conjunto de valores en la condiciónStringLike
utilizando la claveaws:UserAgent
. La política modificada se vería así:Esto permitirá solicitudes de usuarios que contengan tanto “Home” como “House” en su solicitud. Los asteriscos representan comodines que pueden coincidir con cualquier cadena antes o después de la palabra “Home” o “House”.