?> assumeRole - WeAreCAS
accessControl

assumeRole

Beschreibung

Ermöglicht einer Sitzung, vorübergehend eine administrative Rolle wie Superuser, Daten- oder Aktionsadministrator zu übernehmen, um Operationen mit erweiterten Berechtigungen durchzuführen. Dies ist entscheidend für administrative Aufgaben, die über die Standardberechtigungen eines Benutzers hinausgehen.

accessControl.assumeRole / adminRole="ACTION" | "DATA" | "SUPERUSER";
Einstellungen
ParameterBeschreibung
adminRoleGibt die zu übernehmende administrative Rolle an.
ACTIONGewährt uneingeschränkten (berechtigungsfreien) Zugriff auf Aktionssätze und Aktionen.
DATAGewährt uneingeschränkten (berechtigungsfreien) Zugriff auf Caslib-, Tabellen- und Spaltendefinitionen, einschließlich der Möglichkeit, Caslibs hinzuzufügen.
SUPERUSERBietet die Privilegien der Aktions- und Datenrollen sowie die Möglichkeit, Rollen und Pfade zu verwalten. Dies ist die umfassendste Rolle.
Datenaufbereitung
Datenvorbereitung nicht anwendbar

Die Aktion `assumeRole` erstellt keine Daten. Sie wird verwendet, um Berechtigungen zu erhöhen, oft bevor Datenverwaltungs- oder Analyseaktionen ausgeführt werden, die erweiterte Zugriffsrechte erfordern.

/* Für diese Aktion ist keine Datenerstellung erforderlich. Sie wird verwendet, um Berechtigungen für nachfolgende Schritte zu ändern. */

Beispiele

Dieses Beispiel zeigt, wie man die Rolle des Superusers in einer CAS-Sitzung übernimmt. Dies ist eine häufige Voraussetzung für administrative Aufgaben.

SAS® / CAS-Code
Kopiert!
1PROC CAS; ACCESSCONTROL.assumeRole / adminRole="SUPERUSER"; RUN;
Ergebnis :
Die Aktion gibt eine Erfolgsmeldung im Protokoll zurück, die anzeigt, dass die Sitzung nun über Superuser-Berechtigungen verfügt. Alle nachfolgenden Aktionen in dieser Sitzung werden mit diesen erhöhten Rechten ausgeführt, bis die Sitzung beendet wird.

In diesem Szenario muss ein Administrator eine neue globale Caslib hinzufügen, was Superuser-Rechte erfordert. Die Aktion `assumeRole` wird verwendet, um diese Rechte temporär zu erlangen, die Caslib hinzuzufügen und dann die ursprünglichen Rechte durch Beenden der Sitzung wiederherzustellen.

SAS® / CAS-Code
Kopiert!
1PROC CAS; SESSION casauto; /* Übernahme der Superuser-Rolle zur Durchführung administrativer Aufgaben */ ACCESSCONTROL.assumeRole / adminRole="SUPERUSER"; /* Hinzufügen einer neuen globalen Caslib (erfordert Superuser-Rechte) */ TABLE.addCaslib / name="new_global_caslib" dataSource={srcType="PATH"} path="/path/to/shared/data" SESSION=false; /* 'session=false' macht die Caslib global */ /* Überprüfung, ob die Caslib hinzugefügt wurde */ TABLE.caslibInfo / caslib="new_global_caslib"; /* Beenden der Sitzung, um die Superuser-Rolle aufzugeben */ endSession; RUN;
Ergebnis :
Die Sitzung übernimmt die Superuser-Rolle, fügt erfolgreich die globale Caslib 'new_global_caslib' hinzu, zeigt die Informationen zur neu erstellten Caslib an und wird dann beendet. Das Beenden der Sitzung ist ein sicherer Weg, um sicherzustellen, dass die erhöhten Berechtigungen widerrufen werden.