El script no lee datos tabulares. Manipula objetos de metadatos de SAS Viya. Los datos necesarios para la creación del rol (nombre, atributos, capacidades, grupo objetivo) se definen directamente en el código SAS, sin depender de fuentes de datos externas o de SASHELP.
1 Bloque de código
DATA STEP
Explicación : Este bloque DATA step utiliza una serie de funciones SAS Metadata para realizar operaciones administrativas. Comienza inicializando variables. Luego, crea un nuevo objeto de metadatos de tipo 'IdentityGroup' (que representa un rol) con un nombre específico ('New Role Name'). Se definen atributos obligatorios y opcionales para este rol. El script luego recupera el URI de una capacidad ('Server Manager') en los metadatos y lo asocia al rol. Finalmente, añade el rol recién creado a un grupo de identidad existente llamado 'group1'. Todas estas operaciones son persistentes en el repositorio de metadatos de SAS Viya.
¡Copiado!
data _null_;
/**** Initialize Variables ****/
length uri $ 38 cap_uri $ 43;
call missing (of _character_);
/**** Create the object. ****/
rc=metadata_newobj("IdentityGroup",uri,"New Role Name");
/* Add some required attributes. */
rc=metadata_setattr(uri,"PublicType","Role");
rc=metadata_setattr(uri,"GroupType","ROLE");
rc=metadata_setattr(uri,"UsageVersion","1000000.0");
rc=metadata_setattr(uri,"IsHidden","0");
/* Add some optional attributes. */
rc=metadata_setattr(uri,"Desc","This is the description of the new role");
rc=metadata_setattr(uri,"DisplayName","This is the display name of the role");
/**** Add a capability. ****/
/* Define the search for the access control entry for the cability */
cap_obj="omsobj:AccessControlEntry?AccessControlEntry[Objects/ApplicationAction[ @Name='Server Manager']]";
/* Pull it's URI into the variable cap_uri */
rc=metadata_getnobj(cap_obj,1,cap_uri);
/* Add the capability association to the role. */
rc=metadata_setassn(uri,"AccessControlEntries","APPEND",cap_uri);
/**** Add the Role to a Group ****/
rc=metadata_setassn(uri,"MemberIdentities","APPEND","omsobj:IdentityGroup? @Name='group1'");
run;
1
DATA _null_;
2
/**** Initialize Variables ****/
3
LENGTH uri $ 38 cap_uri $ 43;
4
call missing (of _character_);
5
6
/**** Create the object. ****/
7
rc=metadata_newobj("IdentityGroup",uri,"New Role Name");
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
Información de copyright : Author: Greg Wootton Date: 09OCT2020
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.