14. SAS® Management Console Guide to Users and Permissions
14. SAS® Management Console Guide to Users and Permissions
3
®
Management Console
Guide to Users and Permissions
SAS® Documentation
The correct bibliographic citation for this manual is as follows: SAS Institute Inc 2011. SAS® 9.3 Management Console: Guide to Users and
Permissions. Cary, NC: SAS Institute Inc.
SAS ® 9.3 Management Console: Guide to Users and Permissions
Copyright © 2011, SAS Institute Inc., Cary, NC, USA
All rights reserved. Produced in the United States of America.
For a hardcopy book: No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means,
electronic, mechanical, photocopying, or otherwise, without the prior written permission of the publisher, SAS Institute Inc.
For a Web download or e-book:Your use of this publication shall be governed by the terms established by the vendor at the time you acquire this
publication.
U.S. Government Restricted Rights Notice: Use, duplication, or disclosure of this software and related documentation by the U.S. government is
subject to the Agreement with SAS Institute and the restrictions set forth in FAR 52.227–19, Commercial Computer Software-Restricted Rights
(June 1987).
SAS Institute Inc., SAS Campus Drive, Cary, North Carolina 27513.
1st electronic book, July 2011
2nd electronic book, August 2012
SAS® Publishing provides a complete selection of books and electronic products to help customers use SAS software to its fullest potential. For
more information about our e-books, e-learning products, CDs, and hard-copy books, visit the SAS Publishing Web site at
support.sas.com/publishing or call 1-800-727-3228.
SAS ® and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other
countries. ® indicates USA registration.
Other brand and product names are registered trademarks or trademarks of their respective companies.
Contents
Chapter 1 • Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
About This Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Introduction to User Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Introduction to Access Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
iv Contents
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
1
Chapter 1
Concepts
each connecting user. All of a user's group memberships, role memberships, and
permission assignments are ultimately tied to their SAS identity.
Note: For identification purposes, only the account IDs are needed. SAS does not
maintain copies of external passwords for identification purposes.
To access user administration features in SAS Management Console, select the User
Manager node on the Plug-ins tab. Your roles and permissions determine which user
administration tasks you can perform.
TIP As an alternative to interactively creating and maintaining identity information,
you can write a program that performs these tasks as batch processes. See the user
import macros documentation in the SAS Intelligence Platform: Security
Administration Guide.
About Users
About Groups
Group Description
PUBLIC Includes everyone who can access the metadata server (directly or through a
trust relationship).
SASUSERS Includes those members of the PUBLIC group who have a well-formed user
definition.
SAS Should include only users who perform metadata administrative tasks. In a
Administrators standard configuration, this group has broad access but is not unrestricted.
TIP A group's membership can include other groups as well as individual users. This
enables you to create a nested group structure.
About Roles
Note: If you add custom plug-ins (in SAS Management Console) or custom tasks (in
SAS Enterprise Guide or the SAS Add-In for Microsoft Office), you can register
those features as capabilities. For further information, see the administrative
documentation for those applications.
Each application that supports roles provides one or more predefined roles. Each
predefined role has a unique initial set of capabilities. The capabilities that a role
provides should reflect the activities and responsibilities of that role's members. You can
adjust the distribution of capabilities in these ways:
• Change role memberships. For example, to prevent regular users from seeing plug-
ins in SAS Management Console, you might narrow the membership of the
Management Console: Content Management role by making changes on that
role's Members tab.
• Customize the initial roles-to-capabilities mapping by using any of these techniques:
• Incrementally select or clear explicit capabilities for a role. You cannot deselect
capabilities for the unrestricted role.
• Aggregate existing roles so that one or more roles contributes all of their
capabilities to another role.
• Create new roles that provide unique combinations of capabilities.
This table introduces the main administrative roles:
Role Capabilities
Metadata Server: Members have all capabilities and cannot be denied any permissions in
Unrestricted the metadata environment.*
Metadata Server: Members can create, update, and delete users, groups, roles (other than
User Administration the unrestricted role), internal accounts, logins, and authentication
domains.**
Metadata Server: Members can administer the metadata server (monitor, stop, pause,
Operation resume, quiesce) and its repositories (add, initialize, register, unregister,
delete).***
Management Members can see all plug-ins in SAS Management Console (in the
Console: Advanced initial configuration).
* Unrestricted users are subject to denials in other authorization layers, can use only those logins that are
assigned to them (or to groups to which they belong), and do not have implicit capabilities that are
provided by components other than the metadata server.
** Restricted user administrators cannot update identities for which they have an explicit (white) or ACT
(green) denial of WriteMetadata.
*** Only someone who has an external user ID that is listed in the adminUsers.txt file with a preceding
asterisk can delete, unregister, add, or initialize a foundation repository. Only an unrestricted user can
analyze and repair metadata or perform tasks when the metadata server is paused for administration.
Introduction 5
About Logins
What is a Login?
A login is a SAS copy of information about an external account. Every login must
include a user ID. In a login for a Windows account, the ID must be qualified (for
example, [email protected]), domain\user, or machine\user.
TIP The requirement to provide a qualified ID for a Windows account applies to the
SAS copy of the ID. It is usually not necessary to qualify the user ID that you
provide when you launch a SAS application.
TIP If you do provide a qualified ID when you log on, you must use the same format
that was used in your login. For example, Windows might accept both WIN\me and
[email protected], but SAS can understand only one of these
qualified forms (the form in which the SAS copy of the ID is stored).
A user might have additional logins that provide access to other systems. For example, if
Joe has his own Oracle account, he might have these two logins:
DefaultAuth | joe |
Note: The Oracle login should include a copy of Joe's Oracle password.
If a site uses Web authentication, the requirements are different. For example, if Joe uses
both Web and desktop applications at such a site, Joe might have these three logins:
DefaultAuth | WIN\Joe |
web | WEBjoe |
Note: Like his DefaultAuth login, Joe's Web login does not need to include a password.
All members of the group can see and use this login. Since this login is for a third-party
database, a copy of the DBMS account password should be stored in this login.
6 Chapter 1 • Concepts
Note: These settings are defined in the metadata server's omaconfig.xml file. In User
Manager, you can customize some of these settings on a per-account basis.
CAUTION:
Passwords for a few required accounts (such as the SAS Administrator and the
SAS Trusted User) are included in configuration files. If you change these
passwords, you must also update the configuration. See the SAS Intelligence
Platform: Security Administration Guide.
About Passwords
Passwords in Logins
In general, it is not necessary to create a SAS copy of an external password. An
exception is if you want to provide seamless access to a server that requires credentials
that are different from the credentials that users initially submit. These are the most
common examples:
• A third-party DBMS server might require a different set of credentials.
• In a multi-platform environment, the standard workspace server might require a
different set of credentials.
If credentials are not otherwise available, some applications prompt users for an
appropriate user ID and password.
8 Chapter 1 • Concepts
Repository-Level Controls
Repository-level controls function as a gateway. Participating users usually need
ReadMetadata and WriteMetadata permissions for the foundation repository.
Repository-level controls also serve as a parent-of-last-resort, defining access to
resources that do not have more specific settings. Repository-level controls are defined
on the Permission Pattern tab of the repository ACT.
Resource-Level Controls
Resource-level controls manage access to a specific item such as a report, an
information map, a stored process, a table, a cube, or a folder. You can define resource-
level controls individually (as explicit settings) or in patterns (by using access control
templates).
Fine-Grained Controls
Fine-grained controls affect access to subsets of data within a resource. To establish
fine-grained controls, you define permission conditions that constrain access to rows
within a table or members within an OLAP dimension.
10 Chapter 1 • Concepts
Feature-Level Controls
Some applications use roles to limit access to functionality. These applications check
each user's roles in order to determine which menu items and features to display for that
user. Roles are not an authorization feature; they are managed and documented as part of
user administration.
• The root folder is not a universal parent. Some system resources (such as
application servers, identities, and ACTs) have the repository as their immediate and
only parent.
• Inheritance within a table or cube follows the data structure. For example, table
columns and cube hierarchies do not have a folder as their immediate parent. Instead,
a column inherits from its parent table and a hierarchy inherits from its parent cube.
• In unusual circumstances, it is possible for an item to have more than one immediate
parent. If there is a tie in this network (for example, if there are no settings on an
item, the item has two immediate parents, and one parent provides a grant while the
other parent provides a denial), the outcome is a grant. In other words, a grant from
any inheritance path is sufficient to provide access.
• In general, specialized folders (such as search folders, favorites folders, and virtual
folders) don’t convey permissions to the objects that they contain. An exception is
that a favorites folder does convey permissions to any child favorites folders
(favorites groups) that it contains.
Permission
(Abbreviation) Actions Affected and Limitations on Enforcement
ReadMetadata (RM) View an item or navigate past a folder. For example, to see an information map you need RM
for that information map. To see or traverse a folder you need RM for that folder.
WriteMetadata (WM) Edit, delete, change permissions for, or rename an item. For example, to edit a report you need
WM for the report. To delete a report you need WM for the report (and WMM for the report's
parent folder). WM affects the ability to create associations. For example, you need WM on an
application server in order to associate a library to that server. WM affects the ability to create
items in certain containers. For example, to add an item anywhere in a repository, you need
WM at the repository level. For folders, adding and deleting child items is controlled by
WMM, not WM.
WriteMemberMetadata Add an item to a folder or delete an item from a folder. For example, to save a report to a
(WMM) folder, you need WMM for the folder. To remove a report from a folder, you need WMM for
the folder (and WM for the report). To enable someone to interact with a folder's contents but
with not the folder itself, grant WMM and deny WM.*
CheckInMetadata (CM) Check in and check out items in a change-managed area. Applicable only in SAS Data
Integration Studio.**
Read (R) Read data. For example, while you need RM for a cube in order to see a cube, you need R for
that cube in order to run a query against it. Enforced for OLAP data, information maps, data
that is accessed through the metadata LIBNAME engine, and dashboard objects.
Write (W) Update data. For example, on a table, W controls updating the rows in the table. Enforced for
data that is accessed through the metadata LIBNAME engine, for publishing channels, and for
dashboard objects.
Create (C) Add data. For example, on a table, C controls adding rows to the table. Enforced for data that
is accessed through the metadata LIBNAME engine.
Delete (D) Delete data. For example, D on a library controls the deletion of tables from the library.
Enforced for data that is accessed through the metadata LIBNAME engine and for dashboard
objects.
Administer (A) Operate (monitor, stop, pause, resume, refresh, or quiesce) servers and spawners. For the
metadata server, the availability of similar tasks is managed by the Metadata Server: Operation
role (not by this permission).
* A folder's WMM settings mirror its WM settings unless the folder has explicit or ACT (green) settings of WMM. A grant
(or deny) of WMM on a folder becomes an inherited grant (or deny) of WM on the items and subfolders within that folder. WMM is
not inherited from one folder to another. WMM is not applicable to specialized folders (such as virtual folders, favorites folders, or
search folders).
** For any change-managed areas or resources, change-managed users should have CM (instead of WM or WMM). Change management
is a SAS Data Integration Studio feature.
Note: For information about the Insert, Update, Select, Create Table, Drop Table, and
Alter Table permissions, and an additional use of the Delete permission, see the SAS
Guide to Metadata-Bound Libraries.
12 Chapter 1 • Concepts
13
Chapter 2
User Administration Tasks
• An empty tree icon indicates that none of the capabilities are assigned.
• A partial tree icon indicates that some of the capabilities are assigned.
Task Requirements
Create users, User administration capabilities, the User Manager capability, and these permissions:
groups, and roles.
• WriteMetadata permission to the identities (to update or delete them)
Update or delete
• WriteMetadata permission to the software components that provide role capabilities (to change
users, groups, and
capability assignments)
roles (other than
the unrestricted • WriteMetadata permission to the repository (to add identities, logins, and related items).
role). In the initial configuration, the SAS Administrators group meets all of these requirements.
Reset other user's
passwords (in
metadata).
Manage the Unrestricted status. In the initial configuration, only one user (the SAS Administrator) meets this
unrestricted role requirement.
Note: Each user can manage their own personal logins in SAS Personal Login Manager.
Note: You can delegate management of an existing identity to someone who does not
have user administration capabilities. See “Delegate Management of a Group or
Role” on page 26.
Add Users
To create an individual SAS identity:
1. On the Plug-ins tab, select User Manager. Make sure that you are in the foundation
repository.
2. For each user:
a. Right-click and select New ð User.
b. On the General tab, enter a name.
Add Administrators 17
TIP We recommend that you avoid using spaces or special characters in the
name of a user, group, or role that you create. Not all components support
spaces and special characters in identity names.
c. On the Accounts tab, click New. In the New Login dialog box, select
DefaultAuth and enter the user's external account ID.
Note: In the standard configuration, you can use any account (LDAP, Active
Directory, host, or other) that is known to the metadata server's host.
Note: For a Windows account, qualify the ID (for example, WIN\user or
[email protected]).
Table 2.2 Adapted Instructions for Sites That Use Web Authentication
Someone who uses only Select the Web realm authentication domain (such as
Web applications web) instead of DefaultAuth and enter the user's Web
realm ID.
Someone who uses both Complete the standard instructions and also add a Web
Web and desktop realm login.
applications
* If the Web user IDs and the metadata server user IDs are identical, and the Web applications do
not use a standard workspace server, it is not necessary to follow these adapted instructions.
Note: You do not have to make changes on the user's Authorization tab. This tab has
no effect on what the user can do.
Add Administrators
To create an individual SAS identity that is based on an internal account:
1. On the Plug-ins tab, select User Manager. Make sure that you are in the foundation
repository.
18 Chapter 2 • User Administration Tasks
Manage Passwords
Passwords for a few required accounts (such as the SAS Administrator and the SAS
Trusted User) are included in configuration files. If these passwords change, you must
also update the configuration. See the SAS Intelligence Platform: Security
Administration Guide.
Note: By initial policy, the owner of the account is forced to change the password on
first use following a password reset. This policy applies only to accounts that have a
password expiration period. This policy does not apply when you reset your own
password.
TIP We recommend that you avoid using spaces or special characters in the
name of a user, group, or role that you create. Not all components support
spaces and special characters in identity names.
b. On the Members tab, assign user or groups to the new group.
c. If you want to make this group a member of other groups or roles, use the
Groups and Roles tab.
d. If you are using this group to make a shared account available, add a shared login
on the Accounts tab.
Note: You do not have to make changes on the group's Authorization tab. This tab has
no effect on what the group can do.
Note: You do not have to make changes on the role's Authorization tab. This tab has no
effect on what the role can do.
• Some roles include implicit capabilities, which are not displayed on this tab. For
example, the ability to create users is part of the Metadata Server: User
Administration role but there is no Create Users check box on the Capabilities
tab.
• The tree icons indicate the status of the items beneath a node in the tree. Clicking
a tree icon changes the status of the selections beneath that icon's node. The
status cycles between full, empty, and partial states, with these exceptions:
• The empty state does not occur if there are contributed capabilities.
• The partial state occurs only if the original settings were mixed (some
capabilities selected, some capabilities not selected).
Note: The original settings are a cache of the selections that were in place at
the time that you first click a particular tree icon. Any intervening action
(such as clicking a check box or clicking the tree icon for a different
node) causes an update to the original settings cache. There is no cache of
earlier states. If you want to undo all of your changes, click Cancel.
5. (Optional) On the General tab, update the role's description to reflect its revised
capabilities.
6. Click OK to save the changes to the role.
Note: Do not assume that someone who has only indirect (gray) settings on someone
else's Authorization tab has not been delegated management. The best way to check
for delegation of an identity is to check each entry in the Users and Groups list box
on that identity's Authorization tab to see whether there are any explicit (white) or
ACT (green) grants of the WriteMetadata permission.
For additional information, click Help in the wizard, or see the SAS Intelligence
Platform: System Administration Guide.
TIP Do not confuse these promotion tools with the user import macros that help you
create and synchronize metadata identities from an external provider, such as Active
Directory. The user import macros are documented in the SAS Intelligence Platform:
Security Administration Guide.
Chapter 3
Exercises in User Administration
to the empty branch icon (no capabilities assigned). Click a third time to revert to
the immediately preceding state (only the Authorization Manager check box
selected).
f. Click the Authorization Manager check box to clear it.
5. To learn how to indirectly assign capabilities, select the Contributing Roles tab:
a. In the Available Roles list, select Management Console: Content
Management. Before you make this a contributing role, verify its capabilities.
b. Move the Management Console: Content Management role to the Current
Roles list. This role now contributes all of its capabilities to your new role. If
capabilities of this contributing role change, the capabilities of your test role
change also.
a. Notice that the user ID is constructed from the name that you entered on the
General tab and an @saspw suffix.
b. Enter and confirm a simple initial password such as 123456.
Note: These instructions assume that the default server-level policies for internal
accounts are in place.
c. Select the Set a custom password expiration period check box and the never
expires radio button.
d. Click OK to save the new internal account.
5. Notice that the new account appears at the bottom of the Accounts tab. Click OK to
save the new user.
6. Log on to SAS Management Console as the new internal user:
a. From the main menu, select File ð Connection Profile. In the informational
message box, click Yes.
b. In the Connection Profile dialog box, select Create a new connection profile
and click OK.
c. In the Connection Profile wizard, name the profile internal, provide the
machine name and port of the metadata server, and enter the internal credentials
(for example, test@saspw and 123456). . Select the Save user ID and
password in this profile check box. Click Finish.
d. In the Connection Profile dialog box, click OK.
7. Notice that you have the permissions and capabilities of the SASUSERS and
PUBLIC groups (because you did not make any additional group or role assignments
for the test user).
Note: To clean up, log back on as someone who has user administration capabilities. In
User Manager, delete the user that you created for this exercise. To delete the test
user's home directory and MyFolder, select the Folders tab, navigate to SAS Folders
ð Users, right-click the test folder, and select Delete.
Note: There are no server configuration activities for SAS internal authentication. The
metadata server always accepts valid internal account credentials. However, internal
accounts are intended for only metadata administrators and certain service accounts.
Internal accounts are not intended for regular users.
32 Chapter 3 • Exercises in User Administration
33
Chapter 4
Access Management Tasks
Examining Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
How to Interpret the Authorization Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
How to Check the Permissions of an Unlisted User . . . . . . . . . . . . . . . . . . . . . . . . . 35
Which Items are Parents to This Item? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Who Can Set Permissions? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Add an Explicit Grant or Denial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Use an Access Control Template (ACT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Why Use ACTs? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
How to Use an ACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Create a Custom ACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Why Create Custom ACTs? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
How to Create a Custom ACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Update or Delete an ACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Set a Permission Condition (OLAP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Adjust the Repository-Level Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Why Adjust the Repository-Level Settings? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Make Changes to the Repository ACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Designate a Different ACT to Serve as the Repository ACT . . . . . . . . . . . . . . . . . . 41
Import or Export ACTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
What Happens When I Select a Check Box? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Tips for Efficiently Using Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Assign Permissions To Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Use Folders To Organize Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Centralize Permissions with ACTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Deny Broadly, Grant Selectively (To the Extent Possible) . . . . . . . . . . . . . . . . . . . 43
Examining Permissions
You can not view someone's permissions by looking at their user definition. To view
someone’s permissions, navigate instead to an object or container that you are interested
in, open the Properties dialog box, and select the Authorization tab.
34 Chapter 4 • Access Management Tasks
(clear)* Explicit The permission is set on the current item and assigned to the selected identity.
Examining Permissions 35
(green) ACT The permission comes from an applied ACT whose pattern explicitly assigns the grant
or denial to the selected identity.
(gray) Indirect The permission comes from someone else (the unrestricted role or a group that has an
explicit or ACT setting) or somewhere else (a parent item or the repository ACT).**
* Explicit controls are usually white because the background color for the permissions list box is usually white.
** For the WriteMemberMetadata permission, gray means that the setting either mirrors the setting for the WriteMetadata permission or is
derived from group settings.
Basic Technique
Click Add and temporarily add the user to the Authorization tab.
Note: Each restricted identity that you add gets an explicit grant of the
ReadMetadata permission. If you remove the user from the Users and Groups list
box, the automatically created explicit grant of ReadMetadata is deleted.
Advanced Technique
If you are unrestricted, an Advanced button on each item's Authorization tab provides
access to the item's Explore Authorizations tab. On the Explore Authorizations tab,
you can add any user or group and view their permissions for the current item. You
cannot change settings on the Explore Authorizations tab. It is not necessary to remove
identities from this tab. This tab is for investigation only.
Note: Both the Authorization tab and the advanced Explore Authorizations tab
always display effective permissions.
Task Requirements
Note: In SAS Management Console, you cannot see the Authorization Manager or
any Authorization tabs unless you have the Authorization Manager capability.
TIP It is easy to set explicit grants and denials on each item that you want to protect
or make available. However, managing a large number of individual permission
settings can be cumbersome. See “Tips for Efficiently Using Permissions” on page
43.
Use an Access Control Template (ACT) 37
Note: If the identity that is selected in the Users and Groups list box has the
unrestricted role, all permissions are granted and you cannot change the
settings.
e. On the Authorization tab, define who can do what to the new ACT. It is
important to prevent regular users from modifying or removing an ACT. A
typical approach is to add an explicit denial of WriteMetadata for PUBLIC
and an offsetting explicit grant of WriteMetadata for SAS Administrators.
f. In the Properties dialog box, click OK. The new ACT is now in the list of ACTs
under Authorization Manager ð Access Control Templates.
3. Apply the ACT to one or more items. For each item to which you want to add the
ACT's settings, complete these steps:
a. Navigate to the item's Authorization tab.
b. Click Access Control Templates.
c. In the Available list box, open the nodes and move the new ACT to the
Currently Using list box. Click OK to close the dialog box.
d. On the item's Authorization tab, verify that the revised settings are as you
expect. On the Authorization tab of an item to which an ACT is applied, settings
that are explicit in the ACT's pattern are green .
Note: The applied ACT contributes its settings to the item's protections. The
item can also have explicit settings and other applied ACTs (as well as
inherited settings).
4. If necessary, adjust the ACT's pattern. The advantage of using an ACT is that you
can change the pattern without revisiting the items to which the pattern is applied.
Simply make changes on the ACT's Permission Pattern tab.
CAUTION:
When you delete an ACT, you lose all of that ACT's associations to items where
it is applied. Creating a new ACT with the same name does not restore those
associations.
d. (Optional) Navigate to the Properties dialog box of an item that uses this ACT
and verify that the revised settings are as you expect. On the Authorization tab
of an item to which an ACT is applied, settings that are explicit in the ACT's
pattern are green .
3. To delete the ACT, right-click and select Delete. In the confirmation message box,
click Yes.
Note: To manage permission conditions for information maps, use SAS Information
Map Studio.
Note: To manage permission conditions for OLAP dimensions, use SAS OLAP Cube
Studio, SAS Data Integration Studio, or SAS Management Console.
See Also
“Fine-Grained Controls” on page 9
This list provides guidance for working with repository-level settings for a foundation
repository:
Adjust the Repository-Level Settings 41
• All users need ReadMetadata and WriteMetadata access to the foundation repository.
It is appropriate for the SASUSERS group to have these permissions on the
repository ACT's Permission Pattern tab.
• To provide default read access to all data, grant the Read permission at the repository
level.
• To experiment with changing repository-level access, create a new ACT and
designate that ACT as the repository ACT (instead of modifying the original
repository ACT).
3. Right-click and select Properties. Make changes on the Permission Pattern tab.
Each restricted identity that you add gets a grant of the ReadMetadata permission in
the pattern.
For example, to give all registered users default read access to all data, select the
SASUSERS group and then select the Grant check box for the Read permission.
Note: Any gray check boxes are settings that come from the selected identity's group
memberships.
Note: Do not confuse the Permission Pattern tab with the Authorization tab.
Settings on the Authorization tab affect who can access this ACT; settings on
this Permission Pattern tab define access to the repository.
Note: There is no reason to specify grants or denials of the WriteMemberMetadata
permission as part of the repository-level settings. Unlike other permissions, the
WriteMemberMetadata permission is never inherited from one item to another.
Note: In the repository ACT's pattern, an identity that has a blank setting for a
particular permission (neither a grant nor a denial) is denied that permission.
Note: To revert to the original repository ACT, select that ACT and repeat step 3.
42 Chapter 4 • Access Management Tasks
For additional information, click Help in the wizard, or see the SAS Intelligence
Platform: System Administration Guide.
TIP When you import an ACT, make sure that all participating users and groups exist
in the target repository (or are included in the import package).
A new explicit control overrides and hides the opposing indirect (gray) setting.
A new explicit control overrides and hides the opposing ACT (green) setting.
A new explicit control is added on top of the matching indirect (gray) setting.
A new explicit control is added on top of the matching ACT (green) setting.
The explicit control is removed and one of these underlying indirect (gray) or
ACT (green) settings is revealed.
Tips for Efficiently Using Permissions 43
• Within the folder tree, users need a clear path of grants of ReadMetadata in order to
navigate to the items that they use. For this permission, setting denials on folders at a
high level is not a workable approach.
45
Chapter 5
Exercises in Access Management
e. Click OK. An error message tells you that you cannot save these settings. The
only explicit setting on the test folder is the denial of ReadMetadata permission
for SASUSERS. This denial blocks access for all registered users, including you.
Click OK to close the message box and return to the Authorization tab.
Note: If you are unrestricted, you will not see the error message. Go to step 5.
f. To see the impact that the SASUSERS denial has on you, select yourself in the
Users and Groups list box on the test folder's Authorization tab. Notice that
your previous indirect grant of ReadMetadata permission is now an indirect
denial of ReadMetadata permission.
g. To restore access for yourself, select the grant ReadMetadata check box. This
gives you an explicit grant that offsets the SASUSERS explicit denial. Click OK.
Note: An offsetting grant does not have to be assigned directly to you; it can be
assigned to any group that is closer to you than the group that has the explicit
denial. For example, your custom group memberships are closer to you than
SASUSERS, and SASUSERS is closer to you than PUBLIC.
5. To give an explicit setting to someone who is not already listed:
a. On the test folder's Authorization tab, click Add. In the Add Users and
Groups dialog box, clear the Show Groups check box. Move one user (such as
the SAS Demo User) to the Selected Identities list box and click OK.
Note: In practice, it is preferable to assign permissions to groups rather than to
individual users (for ease of management).
b. On the Authorization tab, notice that the user is selected and has an explicit
grant of ReadMetadata permission. An explicit grant of ReadMetadata
permission is automatically given to every restricted identity that you add.
Select the opposing check box, deny ReadMetadata permission. This replaces the
explicit grant with an explicit denial.
Note: If the selected user has the unrestricted role, you cannot change any
settings.
c. Click Remove and then click Yes in the confirmation message box. You can
remove this user because this user is named only in explicit settings.
Note: Regular users cannot navigate to each other's MyFolder because of a denial
of ReadMetadata permission to PUBLIC on a parent folder.
6. To clean up, right-click the test folder and select Delete.
• If you need to change access to the objects to which a pattern is applied, you can
simply update the permission pattern, rather than revisiting each resource and
individually modifying the settings.
To learn more, complete this exercise in SAS Management Console:
1. Log on as someone who has a well-formed user definition.
2. On the Folders tab, right-click your My Folder and select New ð Folder.
Create a new folder named test2.
3. Right-click the test2 folder and select Properties. On the folder's Authorization
tab, briefly examine the settings for each identity in the Users and Groups list box.
Notice that all of the settings are indirect .
4. To apply an ACT to the test2 folder:
a. Click Access Control Templates. In the Add and Remove Access Control
Templates dialog box, expand the Foundation node in the Available list box and
select Private User Folder ACT.
b. Before you apply this ACT to the test2 folder, click Properties to verify the
settings that this ACT provides. On the Permission Pattern tab, notice that this
ACT provides denials of ReadMetadata, WriteMetadata, and CheckInMetadata
permissions for the PUBLIC group, grants of these permissions for the SAS
Administrators group, and a grant of ReadMetadata permission for the SAS
System Services group.
Note: Each ACT's pattern consists of only the explicit settings on that
ACT's Permission Pattern tab. Settings that are unspecified (blank) on an
ACT's pattern have no effect when that ACT is applied to an object.
Click Cancel to return to the list of ACTs that are applied to the test2 folder.
c. In the Add and Remove Access Control Templates dialog box, move Private
User Folder ACT to the Currently Using list box. This adds that ACT's settings
to the access controls for the test2 folder. Any future changes to this ACT's
permission pattern will affect access to this folder.
Note: The Currently Using list box includes only applied ACTs; so this list
typically does not include the repository ACT (default ACT).
d. Click OK to return to the Authorization tab. Notice that the PUBLIC denials of
ReadMetadata, WriteMetadata, and CheckInMetadata permissions now come
from an ACT (those denials are now green ). Select SAS Administrators
and notice the green grants of the same permissions. These ACT settings override
and hide the underlying indirect settings.
e. Click OK to close the Properties dialog box for the test2 folder.
Note: If you are restricted, an error message indicates that you cannot save the
settings. Click OK to dismiss the message. On the Authorization tab, select
yourself and add explicit grants of ReadMetadata and WriteMetadata
permissions. Click OK.
5. To clean up, right-click the test2 folder and select Delete.
Several predefined ACTs are provided on the Plug-ins tab under Authorization
Manager ð Access Control Templates. You can create additional ACTs in this
location.
48 Chapter 5 • Exercises in Access Management
4. Right-click the child folder and select Properties. On the Authorization tab,
select SASUSERS. Notice that this group has an indirect denial of the Read
permission. Click Cancel.
5. Right-click the parent folder and select Properties. On the Authorization tab,
select SASUSERS, add an explicit grant of Read permission, and click OK.
6. Right-click the child folder and select Properties. On the Authorization tab,
select SASUSERS. Notice that this group now has an inherited grant of Read
permission.
7. On the child folder's Authorization tab, add an explicit grant of Read
permission on top of the inherited grant of Read permission, and click OK. This
ensures that read access for SASUSERS is preserved even if the setting on the
parent folder changes.
8. To verify that the explicit setting on the child folder is preserved, change the
parent folder setting for SASUSERS to an explicit denial of Read permission,
and then check the child folder settings again. For SASUSERS, the explicit
grant of Read permission is still there. The denial on the parent folder is not
relevant for the child folder because there is an explicit setting on the child
folder.
9. To clean up, right-click the parent folder and select Delete.
repository level. For folders, adding and deleting child objects is controlled by
WMM, not WM.
WriteMemberMetadata (WMM)
Add an object to a folder or delete an object from a folder. For example, to save a
report to a folder, you need WMM for the folder. To remove a report from a folder,
you need WMM for the folder (and WM for the report). To enable someone to
interact with a folder's contents but with not the folder itself, grant WMM and deny
WM.
Note: We recommend that anyone who has a grant of WM is not denied WMM.
To experiment with WM and WMM, complete this exercise in SAS Management
Console:
1. Log on as someone who has a well-formed user definition.
Note: Step 5a assumes that you are restricted and are not in the SAS Administrators
group. To create a temporary restricted user for this exercise, use an internal
account. (for example, use the name temp and log on as temp@saspw).
2. On the Folders tab, right-click your My Folder and select New ð Folder.
Create a new folder named learn.
3. To see how WM influences WMM:
a. Right-click the learn folder, select Properties, and select the Authorization
tab.
b. Notice that WMM is in the permissions list. This permission is meaningful only
for folders.
c. In the Users and Groups list box, select PUBLIC. Notice that this group has
indirect denials for both WM and WMM. Add an explicit grant of WM.
Notice that this causes the WMM setting to change to a grant.
d. Select the grant WM check box again. This clears the check box and removes the
explicit grant. Notice that the WMM setting also reverts to a denial.
e. Add an explicit grant of WMM. Notice that this has no effect on the WM
setting. The mirroring is one-way. WM influences WMM, but WMM does not
influence WM. Remove the grant of WMM to revert to the initial settings
(indirect denials of both WM and WMM). Click OK.
4. To see how WMM on a folder is conveyed to the objects inside the folder:
a. Right-click the learn folder and select New ð Folder. Create a new folder
named child.
b. On the learn folder's Authorization tab, click Add. In the Add Users and
Groups dialog box, clear the Show Groups check box. Move one restricted user
(such as the SAS Demo User) to the Selected Identities list box and click OK.
c. In the permissions list, give the user who you just added an explicit denial of
WM and an explicit grant of WMM. Click OK.
Note: If the permissions list is disabled, the selected user is unrestricted (for
example, the original SAS Administrator is unrestricted). Add a restricted
user to the Authorization tab.
50 Chapter 5 • Exercises in Access Management
d. On the child folder's Authorization tab, select the user who you added in step
4b. Notice that the denial of WM on the learn folder is not conveyed to the
child folder. Instead, the grant of WMM on the learn folder is conveyed to the
child folder as an indirect grant of WM. On the child folder, the WMM setting
mirrors the WM setting as usual.
5. To see which actions each permission controls:
a. Right-click your My Folder . Notice that actions such adding a new folder or
stored process are available (because you have WMM) but, if you are a regular
user, Rename and Delete are disabled (because you do not have WM).
Note: This is an example of a folder that is under administrative control. Certain
users (or groups) can contribute objects to the folder, but the folder itself is
protected.
b. Right-click the learn folder and examine its pop-up menu. Notice that all
actions are all available (because you have both WM and WMM).
6. To clean up, right-click the learn folder and select Delete. If you created a
temporary user for this exercise, log on with your administrative account, delete the
temporary user (on the Plug-ins tab under User Manager) and that user's associated
folder (at SAS Folders ð User Folders ð <the temporary user> or SAS Folders
ð Users ð <the temporary user>).
51
Glossary
authentication
the process of verifying the identity of a person or process within the guidelines of a
specific authorization policy.
authentication domain
a SAS internal category that pairs logins with the servers for which they are valid.
For example, an Oracle server and the SAS copies of Oracle credentials might all be
classified as belonging to an OracleAuth authentication domain.
authentication provider
a software component that is used for identifying and authenticating users. For
example, an LDAP server or the host operating system can provide authentication.
authorization
the process of determining which users have which permissions for which resources.
The outcome of the authorization process is an authorization decision that either
permits or denies a specific action on a specific resource, based on the requesting
user's identity and group memberships.
capability
an application feature that is under role-based management. Typically, a capability
corresponds to a menu item or button. For example, a Report Creation capability
might correspond to a New Report menu item in a reporting application. Capabilities
are assigned to roles.
credentials
the user ID and password for an account that exists in some authentication provider.
external identity
a synchronization key for a user, group, or role. For example, employee IDs are often
used as external identities for users. This is an optional attribute that is needed only
for identities that you batch update using the user import macros.
identity
a user, group, or role definition.
52 Glossary
internal account
a SAS account that you can create as part of a user definition. Internal accounts are
intended for metadata administrators and some service identities; these accounts are
not intended for regular users.
internal authentication
a process in which the metadata server verifies a SAS internal account. Internal
authentication is intended for only metadata administrators and some service
identities.
login
a SAS copy of information about an external account. Each login includes a user ID
and belongs to one SAS user or group. Most logins do not include a password.
permission condition
a control that defines access to data at a low level, specifying who can access
particular rows within a table or particular members within an OLAP cube. Such
controls are typically used to subset data by a user characteristic such as employee
ID or organizational unit. For example, an OLAP cube that contains employee
information might have member-level controls that enable each manager to see the
salary history of only that manager's employees. Similarly, a table that contains
patient medical information might have row-level controls that enable each doctor to
see only those rows that contain data about that doctor's patients.
restricted identity
a user or group that is subject to capability requirements and permission denials in
the metadata environment. Anyone who isn't in the META: Unrestricted Users Role
and isn't listed in the adminUsers.txt file with a preceding asterisk is a restricted
identity.
role
a set of capabilities. In some applications, certain actions are available only to users
or groups that have a particular role.
service identity
an identity or account that exists only for the purpose of supporting certain system
activities and does not correspond to a real person. For example, the SAS Trusted
User is a service identity.
unrestricted identity
a user or group that has all capabilities and permissions in the metadata environment
due to membership in the META: Unrestricted Users Role (or listing in the
adminUsers.txt file with a preceding asterisk).
Web authentication
a configuration in which users of Web applications are verified at the Web perimeter
and the metadata server trusts that verification.
Index
A E
access control templates 43 explicit controls 45
creating 38 explicit permissions 36
deleting 39 external identities 8
exporting 42 adding 27
importing 42
updating 39
using 37 G
access control templates (ACTs) groups 3
permission settings 46 creating 20
ACT permission settings 46 DBMS access 24
ACTs deleting 26
See access control templates membership 23
administrators PUBLIC 3
Administer permission 11 renaming 26
administrative group 3 SASUSERS 3
administrative roles 4
intermittent 18
authentication domains 7 I
managing 25 identity precedence 10
authentication tasks Inheritance tab 35
configuring SAS internal authentication inherited permission settings 48
31 internal accounts 6
Authorization tab 34 policies 25
selecting check boxes on 42 unlock 24
significance of check box colors 34
L
C logins 5
capabilities 3 qualifying Windows user IDs in 5
assigning to a role 22 uniqueness requirement 8
assigning to roles 29 used to establish a SAS identity 17
creating 3 used to provide access to other systems
needed for user administration 16 23
D M
default ACT metadata
See repository ACT WriteMetadata and
WriteMemberMetadata permissions
48
54 Index
P configuring 31
passwords 7
maintenance 19
permissions 11 U
ACT settings 46 user administration 1
best practices for using 43 delegating 26
conditional 40 requirements for performing 16
explicit settings 45 user IDs
inheritance 10 qualifying in logins 5
inherited settings 48 uniqueness requirement 8
who can set 36 users 2
WriteMetadata (WM) and creating 16
WriteMemberMetadata (WMM) 48 creating administrators 17
DBMS access 24
deleting 26
R dual 18
repository ACT 9 finding 27
making changes to 40 intermittent administrators 18
roles 3 renaming 26
assigning capabilities to 29 storing contact information 20
creating 21 unrestricted 4
deleting 26
membership 23
reconfiguring 22 W
renaming 26 WriteMemberMetadata (WMM)
permission 48
WriteMetadata (WM) permission 48
S
SAS internal authentication