accessControl commitTransaction

Actualización Masiva de Políticas de Retención de Datos

Scénario de test & Cas d'usage

Contexto empresarial

Una auditoría de TI requiere actualizar los permisos de escritura en múltiples librerías departamentales (Finanzas, Ventas, Logística) simultáneamente para imponer un modo de 'Solo Lectura' durante el cierre del año fiscal. Se debe garantizar que todas las librerías se actualicen en bloque; si una falla, ninguna debe cambiar (aunque este escenario prueba el éxito del commit masivo).
Sobre el conjunto : accessControl

Gestión de derechos de acceso y seguridad de datos.

Descubrir todas las acciones de accessControl
Preparación de datos

Creación de múltiples caslibs para simular diferentes departamentos.

¡Copiado!
1PROC CAS;
2 caslib finanzas datasource=(srctype="path") path="/tmp/fin";
3 caslib ventas datasource=(srctype="path") path="/tmp/ven";
4 caslib logistica datasource=(srctype="path") path="/tmp/log";
5 RUN;
6 QUIT;

Étapes de réalisation

1
Inicio de transacción y bloqueo (Check-out) de múltiples objetos (caslibs).
¡Copiado!
1PROC CAS;
2 ACCESSCONTROL.assumeRole / adminRole="superuser";
3 ACCESSCONTROL.startTransaction;
4 ACCESSCONTROL.checkOutObject / objectUri="/cas/caslibs/finanzas";
5 ACCESSCONTROL.checkOutObject / objectUri="/cas/caslibs/ventas";
6 ACCESSCONTROL.checkOutObject / objectUri="/cas/caslibs/logistica";
7 RUN;
2
Modificación de permisos para revocar escritura a usuarios estándar en todas las caslibs.
¡Copiado!
1ACCESSCONTROL.updSomeAcsCaslib / caslib="finanzas" acs={{principal="sasusers", perm="Write", grant=FALSE}};
2 ACCESSCONTROL.updSomeAcsCaslib / caslib="ventas" acs={{principal="sasusers", perm="Write", grant=FALSE}};
3 ACCESSCONTROL.updSomeAcsCaslib / caslib="logistica" acs={{principal="sasusers", perm="Write", grant=FALSE}};
4 RUN;
3
Commit de la transacción para liberar todos los bloqueos y guardar cambios.
¡Copiado!
1ACCESSCONTROL.commitTransaction;
2 RUN;
3 QUIT;

Resultado esperado


Al ejecutar commitTransaction, los cambios se aplican a las tres librerías simultáneamente. Crucialmente, los tres objetos (finanzas, ventas, logística) que estaban en estado 'checked-out' son liberados inmediatamente, permitiendo futuras administraciones.