One of the nice enhancements in SAS® Management Console 9.4 is the addition of a point & click method for creating a Metadata Bound Library. Metadata Bound Libraries have been available since SAS 9.3 M2 but prior to SAS 9.4 you had to write proc authlib code to set one up (see this prior post for an example).
Many of the SAS platform administrators I meet have an IT admin background, not necessarily a SAS coding background, so this addition of a point & click method in SAS 9.4 will certainly make it easier for people to take advantage of metadata bound libraries. I find it makes it easier and I do have a SAS coding background. I don’t create metadata bound libraries every day, so I haven’t committed the syntax to memory yet :). Using the point & click method can be quicker than tracking down a code example.
Starting from the Folders tab in SAS Management Console 9.4, navigate to the /System/Secured Libraries folder. Right mouse click over the Secured Libraries folder and select the New and Secured Library menu items.
In the New Secured Library wizard, provide a name and description for the secured library, then click the Next button.
On the following page, pick a SAS application server, specify the file system path for the folder containing the SAS tables to be secured, provide a password to secure the library, and click the Finish button.
A status dialog appears once the secured library and table objects has been created and the physical tables appropriately modified.
As a bonus you can also view the SAS log, including the wizard-generated proc authlib code.
I think this is a great addition to SAS Management Console 9.4 and I imagine this new user interface will make metadata bound libraries accessible to a wider SAS admin audience.
6 thoughts on “Creating a Metadata Bound Library with SAS 9.4”
Paul, Thanks for this useful Post.
Can you also Post as to how one accesses the Metabound Library?
Thanks, I’ll keep that in mind for a future post.
For further info I’d suggest you have a read of the SAS 9.4 Guide to Metadata-Bound Libraries. Users of the metadata bound libraries don’t have to do much different – they can still code a libname statement or use a metadata based library as they did before – although they’ll need a connection to the metadata server to determine access. If they’re using a metadata aware application (such as EG, DI, AMO etc) then they should have that in place already. If they are running SAS DMS or batch jobs then they’ll need appropriate meta options set. As an administrator you’ll also need to make sure they have all the appropriate permissions too.
This is a great post, even if it’s a few years old!
I wanted to add one thing that I was struggling with for a couple of days. Metadata permissions. You kind of mentioned it in the reply above. If you are looking for permissions and are baffled, look here! You won’t find Create, Select, Alter, etc anywhere else. This drove me nuts until I discovered this.
Thanks for the feedback Matt!
When looking for permission applicability you might find our free Metacoda Public Types Explorer plug-in useful. I described it in another blog post at https://platformadmin.com/blogs/paul/2014/05/public-types-explorer/ … and the screenshot shows it sorted by the Select permission column to show all the objects to which it applies … which as you say, in SAS 9.4, are just the metadata objects for Metadata Bound Libraries – Secured data folder, Secured library and Secured table. :)
I need some help I didn’t work before on MBL.
One of my user has MBLibrary created with name xyz with “/apps/xyz”; physical path and yesterday he coded a libname statement with same path like libname abc “/apps/xyz”;
libname abc “/apps/xyz”;
ERROR: User does not have appropriate authorization level for library DFLDATA.
ERROR: Error in the LIBNAME statement
My question is same user but different libname abc to existing metdata-bounded Library name xyz.
Please advise where is the mistake to correct it.
Please reply my user is waiting.
I would suggest you check the effective permissions for the metadata identity to ensure they have the required minimum permissions to query the metadata and also check the permissions for the physical directories and files to ensure their host operating system identity has access (user or service account as appropriate for your environment).