Creación de firmas de acceso compartido
Una firma de acceso compartido (SAS) es un identificador de recursos uniforme (URI) que concede derechos de acceso restringido a recursos de Azure Storage. Una SAS es una forma segura de compartir los recursos de almacenamiento sin poner en peligro las claves de cuenta.
Puede proporcionar una SAS a los clientes que no deben tener acceso a la clave de la cuenta de almacenamiento. Mediante la distribución de un URI de SAS entre estos clientes, les concede acceso a un recurso durante un período de tiempo específico.
UnaSAS normalmente se usaría para un servicio en el que los usuarios leyeran y escribieran sus datos en la cuenta de almacenamiento. Las cuentas que almacenan datos de usuario tienen dos diseños típicos:
- Los clientes pueden cargar y descargar datos mediante un servicio de proxy de front-end que realiza la autenticación. Este servicio de proxy de front-end tiene la ventaja de permitir la validación de reglas de negocio. Si controla grandes cantidades de datos o transacciones de gran volumen, puede ser difícil escalar este servicio
- Un servicio ligero autentica al cliente según necesidad. A continuación, genera una SAS. Los clientes que reciben la SAS pueden acceder directamente a los recursos de la cuenta de almacenamiento. La SAS define los permisos y el intervalo de acceso del cliente. Reduce la necesidad de enrutar todos los datos a través del servicio de proxy de front-end.
Aspectos que se deben saber sobre las firmas de acceso compartido
Vamos a revisar algunas características de una SAS.
Una SAS le ofrece control granular del tipo de acceso que se concede a los clientes que tienen la SAS.
Una SAS de nivel de cuenta puede delegar el acceso a varios servicios de Azure Storage, como blobs, archivos, colas y tablas.
Puede especificar el intervalo de tiempo para el que una SAS es válida, incluida la hora de inicio y la hora de expiración.
Especifique los permisos concedidos por la SAS. Una SAS para un blob podría conceder permisos de lectura y escritura a ese blob, pero no permisos de eliminación.
SAS proporciona control de nivel de cuenta y de nivel de servicio.
Nivel de cuenta. Use una SAS de nivel de cuenta para permitir el acceso a todo lo que puede permitir una SAS de nivel de servicio, además de a otros recursos y capacidades. Por ejemplo, puede usar una SAS de nivel de cuenta para permitir la creación de sistemas de archivos.
Nivel de servicio. Puede usar una SAS de nivel de servicio para permitir el acceso a recursos específicos de una cuenta de almacenamiento. Este tipo de SAS se usaría, por ejemplo, para permitir que una aplicación recuperara una lista de archivos de un sistema de archivos o para descargar un archivo.
Nota:
Una directiva de acceso almacenada puede proporcionar otro nivel de control cuando se utiliza una SAS de nivel de servicio en el lado servidor. Puede agrupar SAS y proporcionar otras restricciones mediante una directiva de acceso almacenada.
Hay opciones de configuración de SAS opcionales:
Direcciones IP. Puede identificar una dirección IP o un intervalo de direcciones IP de las que Azure Storage aceptará la SAS. Configure esta opción para especificar un intervalo de direcciones IP que pertenecen a su organización.
Protocolos Puede especificar el protocolo sobre el que Azure Storage acepta la SAS. Configure esta opción para restringir el acceso a los clientes mediante HTTPS.
Configuración de una firma de acceso compartido
En Azure Portal, se configuran varias opciones para crear una SAS. A medida que revise estos detalles, tenga en cuenta cómo puede implementar firmas de acceso compartido en la solución de seguridad de almacenamiento.
- Método de firma: elija el método de firma, como clave de cuenta o clave de delegación de usuarios.
- Clave de firma: seleccione la clave de firma de la lista de claves.
- Permisos: seleccione los permisos concedidos por la SAS, como lectura o escritura.
- Fecha y hora de inicio y expiración: especifique el intervalo de tiempo para el que la SAS es válida. Establezca la hora de inicio y la hora de expiración.
- Direcciones IP permitidas: (opcional) puede identificar una dirección IP o un intervalo de direcciones IP de las que Azure Storage aceptará la SAS.
- Protocolos permitidos: (opcional) seleccione el protocolo sobre el que Azure Storage acepta la SAS.