VENTAS: 1-800-867-1389

Establecer una directiva de acceso almacenada (API de REST)

Actualizado: mayo de 2013

Una directiva de acceso almacenada ofrece un nivel adicional de control sobre las firmas de acceso compartidas en el servidor. Establecer una directiva de acceso almacenada para agrupar firmas de acceso compartido y proporcionar restricciones adicionales para firmas sujetas a la directiva. Puede utilizar una directiva de acceso almacenada para cambiar la hora de inicio, la hora de expiración o los permisos para una firma o bien para revocarla después de haberse emitido.

Los recursos de almacenamiento siguientes admiten directivas de acceso almacenadas:

  • Contenedores. Tenga en cuenta que una directiva de acceso almacenada en un contenedor se puede asociar a una firma de acceso compartido que concede permisos al propio contenedor o a los blobs que contiene.

  • Colas

  • Tablas e intervalos de entidades de tabla

Para obtener más detalles sobre cómo trabajar con directivas de acceso almacenadas, vea Usar una directiva de acceso almacenada.

Para crear o modificar una directiva de acceso almacenada, llame a la operación Set ACL para el recurso (es decir, Set Container ACL, Set Queue ACL, Set Table ACL) con un cuerpo de solicitud que especifique las condiciones de la directiva de acceso. El cuerpo de la solicitud incluye un identificador único firmado de su elección, de hasta 64 caracteres, y los parámetros opcionales de la directiva de acceso, de la manera siguiente:

<?xml version="1.0" encoding="utf-8"?>
<SignedIdentifiers>
  <SignedIdentifier> 
    <Id>unique-64-char-value</Id>
    <AccessPolicy>
      <Start>start-time</Start>
      <Expiry>expiry-time</Expiry>
      <Permission>abbreviated-permission-list</Permission>
    </AccessPolicy>
  </SignedIdentifier>
</SignedIdentifiers>

noteNota
No se pueden especificar restricciones de intervalo de entidades de tabla (startpk, startrk, endpk y endrk) en una directiva de acceso almacenada.

Se puede establecer un máximo de cinco directivas de acceso en un contenedor, una tabla o una cola en un momento dado. Cada campo SignedIdentifier, con su campo Id único, corresponde a una directiva de acceso. Si se intenta establecer más de cinco directivas de acceso al mismo tiempo, el servicio devuelve el código de estado 400 (Solicitud incorrecta).

Para modificar los parámetros de la directiva de acceso almacenada, puede llamar a la operación de lista de control de acceso para el tipo de recurso con el fin de reemplazar la directiva existente, especificando una hora de inicio, una hora de expiración o un conjunto de permisos nuevos. Por ejemplo, si la directiva existente concede permisos de lectura y escritura a un recurso, puede modificarla para conceder únicamente permisos de lectura para todas las solicitudes futuras. En este caso, el identificador firmado de la nueva directiva, según se especifica en el campo ID, sería idéntico al identificador firmado de la directiva que se va a reemplazar.

Para revocar una directiva de acceso almacenada, puede eliminarla o puede cambiar su nombre cambiando el identificador firmado. Al cambiar el identificador firmado se interrumpen las asociaciones entre las firmas existentes y la directiva de acceso almacenada. La eliminación o el cambio de nombre de la directiva de acceso almacenada afecta inmediatamente a todas las firmas de acceso compartido asociadas a ella.

Para quitar una sola directiva de acceso, llame a la operación Set ACL del recurso, pasando el conjunto de identificadores firmados que desea conservar en el contenedor. Para quitar todas las directivas de acceso del recurso, llame a la operación Set ACL con un cuerpo de solicitud vacío.

Vea también

¿Te ha resultado útil?
(Caracteres restantes: 1500)
Gracias por sus comentarios
Mostrar:
© 2014 Microsoft