Scénario de test & Cas d'usage
Gestion des droits d'accès et de la sécurité des données.
Découvrir toutes les actions de accessControlAucune préparation de données n'est exécutée par l'utilisateur. On suppose qu'une caslib 'HumanResources' contenant une table 'SALAIRES_CONFIDENTIELS' existe et est hautement restreinte.
| 1 | /* Pré-requis (exécuté par un Super-Utilisateur) : |
| 2 | proc cas; |
| 3 | table.addCaslib / caslib='HumanResources' dataSource={srcType='PATH'} path='/path/to/hr_data/'; |
| 4 | table.loadTable / caslib='HumanResources' path='salaires.sashdat' casOut={name='SALAIRES_CONFIDENTIELS', caslib='HumanResources'}; |
| 5 | accessControl.addAcs / table={caslib='HumanResources', name='SALAIRES_CONFIDENTIELS'} principals={'public'} grant='NONE'; |
| 6 | run; */ |
| 1 | |
| 2 | PROC CAS; |
| 3 | ACCESSCONTROL.assumeRole / adminRole='ACTION'; |
| 4 | RUN; |
| 5 |
| 1 | PROC CAS; |
| 2 | BUILTINS.addRoutines / |
| 3 | from='/path/to/actionsets/customAnalytics.acst'; |
| 4 | RUN; |
| 1 | PROC CAS; |
| 2 | TABLE.fetch / |
| 3 | TABLE={caslib='HumanResources', name='SALAIRES_CONFIDENTIELS'}; |
| 4 | RUN; |
L'utilisateur réussit à installer le nouvel ensemble d'actions grâce au rôle 'ACTION'. Cependant, la tentative de lecture de la table 'SALAIRES_CONFIDENTIELS' échoue avec un message d'erreur lié aux permissions. Ce scénario valide que le rôle 'ACTION' est bien limité à la gestion des actions et ne donne aucun droit sur les données, démontrant la ségrégation des privilèges.