ppt - Common Solutions Group

advertisement

Shibboleth Update

RL “Bob” Morgan, Washington

Steven Carmody, Brown

Scott Cantor, Ohio State

Marlena Erdos, IBM/Tivoli

Michael Gettes, Georgetown

Keith Hazelton, Wisconsin

David Wasley, UCOP

Ken Klingenstein, Director

Internet2 Middleware Initiative

Outline

Background

What is Shibboleth?

Shibboleth Communities of Interest

Shibboleth and PKI

Shibboleth and SAML and WebSSO

Using Shibboleth

Shibboleth milestones

Roll-out plan and next steps

Getting ready http://middleware.internet2.edu/shibboleth

MACE (Middleware Architecture

Committee for Education)

Purpose - to provide advice, create experiments, foster standards, etc. on key technical issues for core middleware within higher education

Membership - Bob Morgan (UW) Chair, Scott Cantor (Ohio

State), Steven Carmody (Brown), Michael Gettes (Georgetown),

Keith Hazelton (Wisconsin), Paul Hill (MIT), Jim Jokl (Virginia),

Mark Poepping (CMU), Bruce Vincent (Stanford), David Wasley

(California), Von Welch (Grid)

European members - Brian Gilmore (Edinburgh), Ton

Verschuren (Netherlands)

Creates working groups in major areas, including directories, interrealm access control, PKI, medical issues, etc.

Works via conference calls, emails, occasional serendipitous inperson meetings...

Shibboleth

A word which was made the criterion by which to distinguish the

Ephraimites from the Gileadites. The Ephraimites, not being able to pronounce sh, called the word sibboleth. See --Judges xii.

Hence, the criterion, test, or watchword of a party; a party cry or pet phrase.

Webster's Revised Unabridged Dictionary (1913) :

Shibboleth - What is it?

An initiative to develop an architecture, policy framework, and practical technologies to support inter-institutional sharing of resources

Will provide for the secure exchange of interoperable attributes which can be used in access control decisions

Controlled dissemination of attribute information, based on administrative defaults and user preferences

Shifts the model from passive privacy towards active privacy

Based on a federated administration trust framework

Vendor participation - IBM/Tivoli

Standards Alignment - OASIS/SAML

Open solution(protocols and messages documented rfc-style, open source implementation available)

Shibboleth - Why is it Needed?

Growing interest in collaboration and resource sharing among institutions

Provides ability to make access control decisions in a cross domain environment

Current approaches to problem (IP address filtering, identity matching, use of shared ids) have serious problems

Shibboleth will involve more than the architecture/implementation developed by the SAML participants (eg community-of-interest, privacy)

Founding assumptions

Leverage vendor and standards activity wherever possible (OASIS/SAML http://www.oasis-open.org/committees/security/ ), but recognize distinctive business needs.

Federated Administration

(Initially) disturb as little of the existing campus infrastructure as possible

Work with common, minimal authorization systems (eg htaccess)

Encourage good campus behaviors

Learn through doing

• There is very little experience with systems that allow users to manage the release of attribute information

Create a marketplace and reference implementations

Stage 1 - Addressing Three Scenario’s

Member of campus community accessing licensed resource

• Anonymity required

Member of a course accessing remotely controlled resource

• Anonymity required

Member of a workgroup accessing controlled resources

• Controlled by unique identifiers (e.g. name)

Taken individually, each of these situations can be solved in a variety of straightforward ways.

Taken together, they present the challenge of meeting the user's reasonable expectations for protection of their personal privacy.

Architectural Model

Browser User’s Origin Site Responsible for Authentication

Origin Site Entity Willing to Create and Sign Assertions

• Set of assertions about the user (Attribute/value pairs)

• User has control over disclosure

• Identity optional

• “active member of community”, “Associated with Course XYZ”

Target responsible for Authorization

• Rules engine

• Matches contents of assertions against ruleset associated with target object

Cross Domain Trust

• Implemented in communities

• Previously created between origin and target

• Perhaps there is a contract (information providers..)

Authorization Attributes

Typical Assertions in the Higher Ed Community

Affiliation

EPPN

Entitlement

OrganizationalUnit

EnrolledCourse

“active member of the community”

EPPN=gettes@georgetown.edu

Urn:mace:infovendor:contract1234

Economics Department

Physics 201

Implications of Shibboleth Design

Choices

Support all 3 scenarios (not just the library problem)

• -> need a mechanism to manage attribute release

Focus on Privacy Protection

• Both sites and users need to manage attribute release

Assume Origin Site Authenticates User

• Origin Site needs enterprise level authentication mechanism

• Should have Web Single Signon system

Target Site Authorizes User

• Need Trust Framework

• Need agreement on syntax and semantics of attributes

(eduPerson, custom agreements between pairs of sites)

Federated Administration

Origin Site

• Must have joined the appropriate communities

• May have created “reasonable” default attribute release policies

• Responsible for Identifying and registering users

• Responsible for Authenticating users

Browser User

• May have created specific attribute release policies

Target Resource Manager

• Manage policies governing access to the resource

Simple point-to-point model

Authentication

Service

Enterprise

LDAP directory client

Attribute authority

Service discovery service target

Protocols

Attribute requestor

Enterprise

LDAP directory

Policy enforcement enforcement points

Policv decision point

Grid directory

Video directory

Video directory

Shibboleth Architecture

Concepts - High Level

Browser

Origin Site

Pass content if user is allowed

Authorization Phase

Authentication Phase

First Access - Unauthenticated

Target Site

Target

Web

Server

Shibboleth Architecture

Concepts (detail)

Attribute

Server

Entitlements

Ent Prompt

Req Ent

Browser

Auth OK

Web Login

Server

Authentication

Second Access - Authenticated

Pass entitlements for authz decision

Target

Web

Server

Origin Site

Target Site

Shibboleth Flows Draft

Detailed Component Descriptions

Attribute Authority

Handle Server

SHIRE

SHAR

WAYF

Establishing a User Context

Getting Attributes and Determining Access

SHIRE

Indexical Reference Establisher

Destination site component responsible for context/session establishment

When there is no active session, redirects browser user to the

WAYF

WAYF

Where are You From?

The WAYF is the transition point from destination to origin site

HS when users contact a destination first.

Users can respond to the WAYF by indicating in “colloquial” fashion which institution can authenticate them.

The WAYF will determine the URL of the appropriate HS based on the user’s input.

A variety of nasty semantic attacks lurk!

Handle Server

Works with AA and local Web ISO system to associate a query handle with an authenticated browser user and generate a signed assertion

Performs its work in response to an Attribute Query Handle Request

(currently an unauthenticated HTTP GET)

AQHR contains

• SHIRE URL for acceptance of response via HTTP POST

• URL of desired resource/service at destination

SHIRE

Indexical Reference Establisher

Destination site component responsible for context/session establishment

Session establishment will commonly rely on traditional techniques (i.e. cookies).

The SHIRE accepts an assertion from a HS and associates the incoming handle with the session it creates.

SHAR

Attribute Requester

A SHAR makes attribute requests using the handle given it by the SHIRE.

Upon receiving a response (AQR), the SHAR…

…authenticates the response

…extracts the attributes

…checks attribute acceptance

• e.g. can an AA at MIT issue attributes for Harvard?

Attribute Authority

Responds to Attribute Query Messages (AQM) from SHAR

Allows for specification and management of ARPs

Not a directory, but works with institutional directories and databases to aggregate and export attributes in a controlled fashion

IBM Interest

Provides “Federated” administrative model

(as apposed to centralized or delegated)

• Leaves administration of user and authenticating user to requester’s site

• Leverages existing authentication/directory infrastructure

Privacy of requester preserved

Leverages SAML standard and will be one of its first “proof points”

Applies to B2B environments beyond current scope and definition

IBM and Tivoli’s commitment

IBM/Tivoli has been contributing to the architecture and design for over a year

IBM/Tivoli is committed to contributing to an open source implementation

• Prototype underway

IBM/Tivoli is committed to continuing to drive ubiquitous

Security standards

• Shibb is based on existing standards where they exist

• SAML, etc...

Shibboleth (and SAML)

Communities of Interest (COI)

(Ken Klingenstein)

D. Wasley’s PKI Puzzle

Fed Bridge

Vendor

Reso ur c es

Campus

Reso ur ces

Ser v er

Cer t s

Sh ib

Campus

PK I

CREN Root CA

Campus

Sy st ems

Dir ec t o r y

Educause HE Bridge

Cam pus

PKI

Cam pus

Sy s t em s

Dir ec t o r y

EDU

PK I

Hier ar c hy

COM

PK I

Hierar chy

PKI provides:

• St rong Aut hent icat ion

• Flexible Aut horizat ion

• Secure Digit al Signat ure

• Powerful Dat a Securit y

Shibboleth and PKI

Complimentary infrastructures wrt technology and policy

Technically,

• Shibboleth leverages existing campus authentication processes (and can use end-entity certificates for this process)

Shibboleth uses PKI to implement a multi-domain trust model

• Shibboleth’s primary use is for authorization and privacy

• PKI’s primary use is establishing identity across domains

• PKI can use Shibboleth to achieve privacy and authorization

Policy,

• Shibboleth establishes a collaborative trust model (flexible, quick, privacyenabled, etc.)

PKI establishes a legal trust model (binding, hierarchical, formal, etc.)

Shibboleth and SAML and WebISO

(R.L. “Bob” Morgan)

What Will it be Like to Use

Shibboleth?

Sample Browser Screens are available at:

• http://middleware.internet2.edu/shibboleth/mockups/index.html

Actual user interface being designed by five higher ed Schools of Information

Use - Go Directly To Target

Use - Specify Origin Site

Use - Local Authentication

Use - Target Page Displayed!

Use - Local Navigation Site

Use - “in the background”

Use - Target Page Displayed!

Milestones

Project formation - February 2000 Stone Soup

Process - began late summer 2000 with Tivoli commitment

(Marlena Erdos), project leadership fall (Steven Carmody), biweekly calls and scenario, requirements and architecture development

Linkages to SAML established December 2000 (consistent architecture and distinguished territory)

Architecture and protocol completion - Aug, 2001

Design - Oct 2001

Coding begins - Nov 2001

Roll-out plan

Basic coding stage through February 2002

Alpha pilots Feb and March 2002

Code rewrites March April

Beta pilots - April May

General release - June, 2002

Release issues: open-source license approach distribution - Apache and other components

CVS, Bugtraq, and source/enhancement management

Coding stage

Three coding teams:

CMU - origin IBM/Tivoli - target OSU - libraries

Approach is to integrate hard-wired components and then progressively replace hard-wiring with code

Dec, Jan, Feb - finish coding, testing

End of february - packaging

End of Feb - March - deploy code to early pilot sites

Profile of Pilot Sites

Member of campus community accessing licensed resource

• University hosting licensed DBs accessed from other universities

• Talking to several commercial vendors (they need “their customers” asking for this functionality…)

Member of a course accessing remotely controlled resource

• Web based testing

• Clearinghouse for curriculum packages

• Web based tools used in courses

Member of a workgroup accessing controlled resources

• Multi-institution project teams

Some of the pilots

Webassign

Penn State

Univ of Delaware - Problem Based Learning Clearinghouse

EDINA (UK)

London School of Economics

Getting Ready

As a Target

• think through web services architecture

• examine contracts with origins for attribute requirements, business rules and marketing options

As an Origin

• implement enterprise authentication infrastructure

• implement eduPerson in enterprise directory

• work with vendors to educate and take advantage

• ??

Identity Services on One Slide

Interrealm Objectclass standards

(e.g.eduperson, gridperson)

Content

Portals

Shibboleth exchange of attributes

Future

PKI

Security Domain

DODHE et al

Grids et al

Learning

Management

Systems

Web services and servers

WebISO

Campus authentication

Future PKI

Personal

Portals

Enterprise directory

Grids

Shibboleth, eduPerson, and everything else

OKI

Licensed

Resources

Embedded

App Security

JA-SIG & uPortal

Inter-realm calendaring futures

Campus web SSO

Shibboleth, eduPerson, Affiliated Directories, etc.

Enterprise authZ

Enterprise

Directory

Enterprise

Authentication

Legacy

Systems

Download