BookmarkSubscribeRSS Feed
sb_sas
Calcite | Level 5

Hello, I am new to SAS as well as SAS Viya. I am in the process of trying to add row-level security for a group of users. (SAS Viya 

Scenario:

I have 50 different users within a group, and this group has access to a caslib that consists of 50 tables (within db). 

I am trying to take advantage of the substitution variables within SAS, however, I need a variable called state_cd. (each user has access to 1 to many state_cds)

 

Question: Is it possible to create a metadata table with the needed data and utilize it to create a dynamic Identity Based Substitution filter? 

 

Similar to this: 

FacilityRegion In ('SUB::SAS.IdentityGroups')

 (but instead of SAS.IdentityGroups, change it to METADATA_TBL.StateCd)

 

Below is a link to the sas documentation. 

https://go.documentation.sas.com/?cdcId=calcdc&cdcVersion=3.4&docsetId=calauthzcas&docsetTarget=n1bf...

1 REPLY 1
gwootton
SAS Super FREQ
The only identity values available are SAS.IdentityGroups and SAS.Userid, so your table would need to include one of these values for row-level security. So if the table includes StateCd as your filtering value you would need a group for each StateCd, and grant memberships to those groups accordingly, then use SAS.IdentityGroups as the filter.
--
Greg Wootton | Principal Systems Technical Support Engineer

suga badge.PNGThe SAS Users Group for Administrators (SUGA) is open to all SAS administrators and architects who install, update, manage or maintain a SAS deployment. 

Join SUGA 

Get Started with SAS Information Catalog in SAS Viya

SAS technical trainer Erin Winters shows you how to explore assets, create new data discovery agents, schedule data discovery agents, and much more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 1 reply
  • 381 views
  • 0 likes
  • 2 in conversation