SAS Federation Server authorizations
are applied to all administration DDL. Most administration DDL is
performed by an administrator only (defined as a user who has the
ADMINISTER privilege on SAS Federation Server), but
some commands, such as CREATE CACHE, have specific privileges which
can be assigned to users and groups.
In the case where a
user is connected to data sources providing customer data, SAS Federation Server
authorizations are applied over the underlying data source. SQL statements
submitted to the server are first parsed and then evaluated against
the privileges defined in SAS Federation Server.
If the action is not permitted from SAS Federation Server,
an error is returned to the user, and no SQL is sent to the underlying
data source. If the action is permitted, the SQL statement is evaluated,
and the FedSQL processor determines
what SQL should be sent to the underlying data sources. In summary,
if the underlying data source does not permit the SQL action, then
an error is returned. Otherwise, the SQL action is performed and
results sent back to the user.
For example, an administrator
can configure the server so that a particular user cannot access table
T1 even if the underlying data source allows it. So SAS Federation Server
authorizations can be used to restrict the type of activity that an
administrator wants to allow on the server.
SAS Federation Server authorizations
are also very powerful when used in conjunction with shared logins.
Shared logins allow many users to be mapped to the same single login
for an underlying data source. This allows for easy back-end data
source user management, since each user of SAS Federation Server
does not require an individual login. However, this alone would mean
that all users of that shared login would have the same privileges
to the accessible data. However, SAS Federation Server
authorization can be used to restrict individual access to data, no
matter what the shared login is allowed to access in the underlying
data source.
As with other system
metadata, SAS Federation Server authorization process
uses an internal database to store security definitions for users,
groups and objects. Privileges can be set on individual users, or
on groups, which affect all members of the group. By default, no
users (except those defined as system users) are granted any specific
privileges on any objects in SAS Federation Server,
and the lack of any privilege anywhere results in a DENY from the
server’s authorization subsystem. The administrator must
specifically grant privileges before a user can perform any actions
through SAS Federation Server.
Refer to Technical Support,
Object Level Security for best practices related to authorization.