Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 37 Next »

This is intended as a first step toward an analytical framework that would allow us to meaningfully compare and contrast widely different solutions to given usage scenarios in the general space of web security.  To take an example a SAML-based solution to a given problem might initially appear quite orthogonal to UMA-based solution to the same problem. Yet in ambitious ventures such as NSTIC that aim to facilitate a new generation of online services, meaningful comparisons between drastically different and seemly incommensurable proposed solutions will be a common need.

A prerequisite step will be to define a spanning set of atomic functions (technology and protocol-agnostic to the degree possible) that can be shown to be composable in different ways that correspond to familiar protocol-based solution families.

The following is offered as an introductory example. Imagine that a university offers students a service they can use to manage their white-pages entry in the online campus directory. The service allows the student to specify which elements of his/her white pages information should be viewable by anyone and which should be viewable only by faculty, staff and students at institutions within a specified set.

Table I: Atomic functionality required to implement a white pages editing and delivery tool with their composition under two different models:

Name

Relevant actors or components

in SAML model

Relevant actors or components

in UMA model

Request to edit one's own protected White Page (WP) informationPerson A as end user --> WP Editing App behind SAML SPPerson A as end user --> WP Client App on Resource Server (RS)
Challenge for IdentityAuthN Service fronting SAML IdP --> Person A as end userAuthorization Server (AS) protecting RS --> Person A as end user
Claim IdentityPerson A as end user --> AuthN Service fronting SAML IdPPerson A as Resource Owner --> Authorization Server (AS) protecting RS
Verify Claimed IdentityAuthentication Service fronting SAML IdP --> Person A as end userAS protecting RS --> Person A as Resource Owner (RO)
Grant Authorization to edit WP InformationWP Editing App behind SAML SP --> Person A as end userAS protecting RS --> Person A as RO
Edit WP InformationPerson A as end user --> WP Editing App behind SAML SPPerson A as RO --> WP Client App on RS
Set Access Policy for WP InformationPerson A as end userPerson A as RO
Persist Access Policy for WP InformationSAML Attribute Release Config FilesAuthorization Server
Make WP Information Available OnlineWP AppResource Server
Discover White Pages for given userPerson B as end userService Registration; Person B as Requesting Party
Search/Find Person WP InformationPerson B as end userPerson B as Requesting Party
Request Authorization for WP Information AccessPerson B as end userPerson B as Requesting Party
   
Grant Authorization for WP Information Access per PolicyWP App behind SAML SPAuthorization Server
Show WP InformationWP AppResource Server or a Client of Resource Server

This simple example already highlights some differences between a SAML-based solution and an UMA-based solution. Note that functions performed by the WP App in the SAML model are carried out by more than one component in the UMA model.  This helps explain the need in the UMA model for a protocol for cooperatively provided services–The Resource Server and Authorization Server need to collaborate to accomplish the usage scenario.  Conversely the comparison highlights that some elements of the usage scenario are out of scope with respect to the SAML model. In other words, a full solution would have to be "SAML plus".

 

  • No labels