Security Concepts

Release 9.3.1 E-mail This Topic Printable Version Give Us Feedback

ArcGIS Server at 9.3 introduces Role based Access Control (RBAC) to secure the capabilities published by the GIS Server. To administer and develop with this security model, it is very important to understand the various components that make up the security model and how these components interact with each other. Some of the components that we have introduced are the Principal and Permission Stores, Token Service, Secured Web Services and Secured Web Applications.

Navigating through the Documenation

The documenation on Security is divided into differnt topics. Each topic begins with an overview of a component and then it goes on to explain the specific workflow.

Security Model Overview

This section will give you a conceptual overview of the various components that form the Security functionality at 9.3 and how they fit into the security model.

The picture below gives a diagrammatic representation of the various components of the security model.

Principal Store

The Principal Store is a repository of web users and roles. It holds the information about users who wish to consume the services published by the ArcGIS Server over the web. As the ArcGIS Server security model is based on a role based access control, the GIS administrator will assign certain privileges to each of the roles (for example: a role 'Planner' can access a certain GIS services) and assign these roles to the users. Each user will then inherit all the permissions of all the roles that have been assigned to him.

ArcGIS Server can work with a variety of stores to maintain and access user and role information. You can use a relational database server (for example: Microsoft's SQL Server or MySQL etc) or a directory server (for example: LDAP or Microsoft's Active Directory). You can also configure the Server to access this information from a proprietary store by writing extensions (using the principal store API) and then setting it up so that Manager will connect to your proprietary store through your extension.

The Token Service will connect to the configured Principal Store for user authentication. The service handlers (for example: REST and SOAP handlers) will also look up the Principal Store for role information associated with a requesting user. Using Manager, you can manage user and role information in your stores.

For more information on how to configure and use the Principal Store, see the 'Configuring Security' topic in the documentation.

For more information on how to write extensions using the Principal Store API, see the 'Extending the Princiapl Store' topic in the documentation.

Permission Store

The Permission Store is a repository of privileges that have been assigned to the roles. It stores information regarding the list of GIS Services that are accessible to a particular role.

The Permission Store is maintained by the Server Object Manager (SOM). You don't have to explicitly configure and maintain it. The Permission Store also exposes an API with which to access it.

For more information on how to setup permissions on your GIS Serivces and Web Applications, see the 'Security for Web Services' and 'Security for Web Applications' topics in the documentation.

Authentication schemes

When the GIS Server has secured its published web resources, any web client who wishes to consume these resources must provide a valid credential while accessing the resource. At 9.3, ArcGIS Server will support two different authentication schemes to validate the user credential.

Authentication Schemes for Web Services

Authentication Schemes for Web Applications

Token Service

In order to seamlessly support scripting clients, ArcGIS Server at 9.3 has introduced a token based access to secured GIS services. Tokens encapsulate the identity of a particular requesting principal (user) and are granted by a Token Service that is installed as a part of the ArcGIS Server.

The Token Service will communicate with the configured Principal Store to authenticate in coming requests for tokens. The GIS Server is capable of deciphering these tokens and granting role based access to requesting resources.

Token Service is a part of the ArcGIS managed authentication for securing GIS Services.

Tokens can be requested by using the URL or by using the GUI (web page). JavaScript application developers need to fetch a token and use it in their applications that are consuming a secured GIS service.

For more information on working with tokens, see the 'Token Service' topic in the documentation.

Security for GIS Web Services

GIS Web Services are secured using a role based access control mechanism. You can set permissions on services using Manager. When security is enabled on the GIS Server only those users belonging to roles that have permissions to access the GIS services will be granted access.

To secure your GIS Web Services, you have a choice of authentication schemes between the ArcGIS Managed Authentication based on Tokens and the Java EE Container Managed Authentication (described above).

For more information on how to secure web services, see the 'Securing Web Services' topic in the documenation.

Security for Web Applications

Web applications created in Manger can be secured by using the ArcGIS Managed Authentication or by using Java EE Container Managed Authentication (described above).

You can assign a particular set of roles, permissions to access the Web Application. Users belonging to only these roles will be allowed access to the application.

For more information on how to secure web applications, please see the 'Securing Web Applications' topic in the documenation.