Access Keys:
Skip to content (Access Key - 0)

Introduce

Version 2 by David Ervin
on Jul 01, 2011 15:36.

compared with
Key
This line was removed.
This word was removed. This word was added.
This line was added.

Changes (3)

View Page History
{note}TODO{note}
[https://tracker.nci.nih.gov/browse/CAGRIDKC-1162]\]
https://tracker.nci.nih.gov/browse/CAGRIDKC-1162
h1. Service Security Options

Introduce provides many options to allow the developer to configure the security of their service to meet the needs specified by your institution and the data that you plan to share on the grid. This guide will explain these service security options.

h2. Security Use Case Examples

h3. Open access

*Use cases*
* Anonymized data sharing
* Openly accessible analytical services

*Solution*
* Non-secure Grid services provide an option to openly share non-PHI data or for development purposes.

h3. Restricted access

*Use Cases*
* Sharing or analysis of de-identified data, limited data sets, PHI

*Solutions*
* Data sharing policy: Choose appropriate level of assurance\!
* [https://cabig-kc.nci.nih.gov/DSIC/KC/index.php/Data_Sharing_and_Security_Framework]
* caGrid Options:
** Secure Communication
** Authentication
** Authorization

h2. caGrid Service Configuration Options

h3. Security Configuration Types:

*Service level*
* Security configuration is applied to the entire service.

*Operation level*
* Allows developer to apply operation specific security to apply a specific security configuration to each exposed operation

h3. Communication

* Encryption and checksums at various levels

h3. Authentication requirements

*Identity verification*
*Anonymous access vs. Grid identity required*

h3. Authorization

*Grid Grouper*
* The Grid Group identifies those grid users that will be permitted access to perform service operations.

*CSM*
* Will utilize CSM database tables to authorize user access to data.

h2. Security Configuration

Top-Level Options that allow the developer to enable custom security for their grid service.

{gallery:title=Service Communication Options\|include=CommunicationOptions.png}

*None*
Configures the service to perform no validation of user identity

*Custom*
Identifies that authorization of user identity should be performed according the the following options.


h2. Secure Communication Options

These settings allow you configure your service to enable and enforce secure communications in order to protect data passed in and out of the service operations.
{gallery:title=Service Communication Options|include=CommunicationOptions.png}


*Transport Layer Security (TLS)*

Configures TLS (HTTPS) with authentication via X.509 grid certificates. This is the \*most commonly used\* configuration.

*Secure Conversation*

Configures the service to use WS-SecureConversation to apply security on a session
* Slower performance

*Secure Message*

Configures the service to use WS-Security to apply security on individual SOAP messages
* Slowest performance

h3. Privacy and Integrity Options

Each of the available Secure Communications Options provides 3 security veiwpoints:

*Privacy*

Configures the service and client to encrypt communications in order to prevent an eavesdropper from reading communication. This is the \*most commonly used\* configuration.


*Integrity* 

Configures the service and client to validate message checksums in order to identifie if an eavesdropper has altered the communication. Altered communications are not trusted.

*Privacy or Integrity*

Configures the service to use either encryption or checksums to insure the validity of communications. 

h2. Authorization Options

These settings allow the developer to configure the service to specify how the service will authorize users to allow access to perform service operations. Because we are using grid services, user identity is tied directly to a user's grid certificate. Enabling authorization will configure the service to perform checks on the X.509 grid certificate that the user provides when invoking the service.

{gallery:title=Service Authorization Options\|include=AuthorizationOptions.png}

* *Client should connect anonymously?*
** No* *: This option indicates that each invocation of the service will require a valid X.509 user credential. This is the \*highly recommended\* for all services using TLS security.
** Yes: Allow anonymous invocation of the service
* *Authorization Mechanism*
•Authentication requirements

•Identity verification (credential required)

•Anonymous access

•On/Off switch on the service

•Anonymous connection or authentication with X.509 certificates

•caGrid Client Configuration

•Default connection mode (anonymous or X.509 cert) depends on the service configuration

•Client can choose to connect anonymously (or not) as an override
Last edited by
William Stephens (712 days ago) , ...
Adaptavist Theme Builder Powered by Atlassian Confluence