Die Beispiele verwenden fiktive oder standardmäßig vorhandene Caslib- und Gruppen-/Benutzernamen in der Viya-Umgebung. Es sind keine externen Daten erforderlich, da die Manipulation Metadaten der Sicherheit betrifft.
1 Codeblock
accessControl.updSomeAcsCaslib
Erklärung : Dieses grundlegende Beispiel zeigt, wie eine globale Caslib (hier 'myGlobalCaslib') einer Gruppe ('groupA') mit Lesezugriffsberechtigungen ('ReadInfo' und 'Select') zur Verfügung gestellt wird. Es beinhaltet die Erstellung einer fiktiven Caslib und die Überprüfung der Berechtigungen nach der Zuweisung.
Kopiert!
/* Établir une session CAS si ce n'est pas déjà fait */
cas casauto;
/* Définir une caslib globale si elle n'existe pas */
/* Remplacez 'myGlobalCaslib' par le nom de votre caslib et le chemin si nécessaire */
proc casutil;
addcaslib caslib='myGlobalCaslib' path='/cas/data/myGlobalCaslib' sessref=casauto;
quit;
/* Octroyer les permissions ReadInfo et Select au groupe 'groupA' sur 'myGlobalCaslib' */
accessControl.updSomeAcsCaslib /
acs={
{caslib="myGlobalCaslib",
identity="groupA",
identityType="Group",
permType="Grant",
permission="ReadInfo"},
{caslib="myGlobalCaslib",
identity="groupA",
identityType="Group",
permType="Grant",
permission="Select"}
};
run;
/* Vérifier les contrôles d'accès de la caslib */
accessControl.viewCaslibAcs / caslib="myGlobalCaslib";
run;
1
/* Établir une session CAS si ce n'est pas déjà fait */
2
cas casauto;
3
4
/* Définir une caslib globale si elle n'existe pas */
5
/* Remplacez 'myGlobalCaslib' par le nom de votre caslib et le chemin si nécessaire */
Erklärung : Dieses Zwischenbeispiel gewährt einem bestimmten Benutzer ('userB') die 'Write'-Berechtigung (Schreibzugriff) für eine vorhandene Caslib ('existingCaslib'). Die Überprüfung der Berechtigungen bestätigt die Anwendung der Änderungen.
Kopiert!
/* Établir une session CAS si ce n'est pas déjà fait */
cas casauto;
/* Supposons que 'existingCaslib' existe */
/* Octroyer la permission Write à l'utilisateur 'userB' sur 'existingCaslib' */
accessControl.updSomeAcsCaslib /
acs={
{caslib="existingCaslib",
identity="userB",
identityType="User",
permType="Grant",
permission="Write"}
};
run;
/* Vérifier les contrôles d'accès de la caslib 'existingCaslib' */
accessControl.viewCaslibAcs / caslib="existingCaslib";
run;
1
/* Établir une session CAS si ce n'est pas déjà fait */
2
cas casauto;
3
4
/* Supposons que 'existingCaslib' existe */
5
/* Octroyer la permission Write à l'utilisateur 'userB' sur 'existingCaslib' */
6
ACCESSCONTROL.updSomeAcsCaslib /
7
acs={
8
{caslib="existingCaslib",
9
identity="userB",
10
identityType="User",
11
permType="Grant",
12
permission="Write"}
13
};
14
RUN;
15
16
/* Vérifier les contrôles d'accès de la caslib 'existingCaslib' */
Erklärung : Dieses erweiterte Beispiel zeigt, wie mehrere Berechtigungen (ReadInfo, Select, Write, Delete) einer Gruppe ('groupA') für eine Caslib ('myGlobalCaslib') explizit widerrufen werden. Dies ist nützlich, um zuvor gewährte Zugriffe zu entfernen.
Kopiert!
/* Établir une session CAS si ce n'est pas déjà fait */
cas casauto;
/* Révoquer toutes les permissions du groupe 'groupA' sur 'myGlobalCaslib' */
accessControl.updSomeAcsCaslib /
acs={
{caslib="myGlobalCaslib",
identity="groupA",
identityType="Group",
permType="Revoke",
permission="ReadInfo"},
{caslib="myGlobalCaslib",
identity="groupA",
identityType="Group",
permType="Revoke",
permission="Select"},
{caslib="myGlobalCaslib",
identity="groupA",
identityType="Group",
permType="Revoke",
permission="Write"},
{caslib="myGlobalCaslib",
identity="groupA",
identityType="Group",
permType="Revoke",
permission="Delete"}
};
run;
/* Vérifier que le groupe 'groupA' n'a plus de permissions explicites sur 'myGlobalCaslib' */
accessControl.viewCaslibAcs / caslib="myGlobalCaslib";
run;
1
/* Établir une session CAS si ce n'est pas déjà fait */
2
cas casauto;
3
4
/* Révoquer toutes les permissions du groupe 'groupA' sur 'myGlobalCaslib' */
5
ACCESSCONTROL.updSomeAcsCaslib /
6
acs={
7
{caslib="myGlobalCaslib",
8
identity="groupA",
9
identityType="Group",
10
permType="Revoke",
11
permission="ReadInfo"},
12
{caslib="myGlobalCaslib",
13
identity="groupA",
14
identityType="Group",
15
permType="Revoke",
16
permission="Select"},
17
{caslib="myGlobalCaslib",
18
identity="groupA",
19
identityType="Group",
20
permType="Revoke",
21
permission="Write"},
22
{caslib="myGlobalCaslib",
23
identity="groupA",
24
identityType="Group",
25
permType="Revoke",
26
permission="Delete"}
27
};
28
RUN;
29
30
/* Vérifier que le groupe 'groupA' n'a plus de permissions explicites sur 'myGlobalCaslib' */
Erklärung : Dieses Viya/CAS-orientierte Beispiel veranschaulicht die Erstellung einer temporären Caslib ('tempCaslib') innerhalb der aktiven CAS-Sitzung, gefolgt von der Anwendung von Standard-Zugriffssteuerungen, die der Gruppe 'public' Leseberechtigungen ('ReadInfo' und 'Select') gewähren. Die Bereinigung der Caslib am Ende der Sitzung ist ebenfalls enthalten.
Kopiert!
/* Établir une session CAS si ce n'est pas déjà fait */
cas casauto;
/* Créer une caslib temporaire 'tempCaslib' pour la session actuelle */
session.addCaslib / caslib='tempCaslib' active=true;
run;
/* Définir des permissions par défaut sur 'tempCaslib' : octroyer ReadInfo/Select à 'public' */
accessControl.updSomeAcsCaslib /
acs={
{caslib="tempCaslib",
identity="public",
identityType="Group",
permType="Grant",
permission="ReadInfo"},
{caslib="tempCaslib",
identity="public",
identityType="Group",
permType="Grant",
permission="Select"}
};
run;
/* Vérifier les contrôles d'accès de la caslib temporaire */
accessControl.viewCaslibAcs / caslib="tempCaslib";
run;
/* Nettoyage : retirer la caslib temporaire à la fin de la session */
session.dropCaslib / caslib='tempCaslib';
run;
1
/* Établir une session CAS si ce n'est pas déjà fait */
2
cas casauto;
3
4
/* Créer une caslib temporaire 'tempCaslib' pour la session actuelle */
/* Nettoyage : retirer la caslib temporaire à la fin de la session */
29
SESSION.dropCaslib / caslib='tempCaslib';
30
RUN;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.