(warning) draft and subject to change as it is reviewed

Link to top level of Access Management Recipe

Preamble

Any (useful) application written has some form of authorization about what it will do on behalf of the user. This is an attempt to capture some of the different approaches and contrast their benefits and drawbacks.

To frame the conversation, we must:

Common techniques are catalogued below:

Authorization Techniques

Centralization Friendly?

Decentralization Friendly

Observations

Benefits

Drawbacks

Scaling Technique(s)

Attribute based Approach
(What you are.)

Can be

Yes

 

Applications manage everything so are flexible to choose what to observe

Applications manage everything so are flexible – fragments consistent behaviour across apps

 

Claims based Approach
(What someone says about you)

Y

Yes, but conditionally

 

 

 

 

Group/Role based Approach
(What you belong to.)

Can be

yes, but conditionally

 

 

 

 

Rule based Approach
(What the application computes about you)

Can be

Can be

 

 

 

 

Rule Based Approach

On this last point, there is a possibility to centralize the decision process into the the Shib Identity Provider and trigger a rule being evaluated via a scriptlet to populate a value (for example:'IdPSuccessfullyAuthorized=true) upon proper conclusion of the rule evaluated in the scriptlet.

Groups & Roles vs Entitlement (Privileges)

<pending>

Centralized vs distributed models

<pending>

Mix and Match or Hybrid Approach

<pending>

Calculating Costs

<pending>

Access Management Work in the Community Identity Framework for Research and Education (CIFER)

CIFER is a cross-consortial collaboration between Kuali, Internet2 and Jasig to develop and support a comprehensive open source solution for IAM for higher education and research.  One of the core work areas is Access Management. There are and will continue to be close ties between Paccman and CIFER teams. Links to CIFER work include the following (Note that some of the materials are still under the pre-CIFER acronym, OSIdM4HE):