SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Shibboleth Development and Support Services




An Identity Provider’s Guide
      to the Core Attributes


                        Ian A. Young
SDSS, EDINA, University of Edinburgh


                 McShib meeting, 14th December 2007
Shibboleth Development and Support Services



                                               Problem Statement
• Federated Access Management is all about the
  attributes released by the IdP to the SP

• IdP and SP need to agree on:
   – attributes to exchange
   – their definitions
   – their quality

• (more) easily resolved if IdP = SP
   – e.g., internal institutional applications

• If they’re not the same party, this is hard
  McShib meeting                                            14th December 2007   2
Shibboleth Development and Support Services



                                         Festive Caricatures (1)


• Service provider: I want a pony!
   – I’d like attributes A, B, C, and D through Z please
   – if you give me more, I can do more
   – if you give me attribute Y, my code will be easier
     to write
   – I’ve already written code that needs attribute X
   – Summary: as much as possible, please



  McShib meeting                                            14th December 2007   3
Shibboleth Development and Support Services



                                         Festive Caricatures (2)

• Identity Provider: No, you can’t have a pony!
   – we don’t even have all of that information, we’d
     have to collect it
   – then we’d have to maintain it to make sure it was
     correct
   – we can’t release attribute X to you without talking
     to our lawyers
   – We don’t see why you have a real need for Y.
   – Summary: as little as possible, please

  McShib meeting                                            14th December 2007   4
Shibboleth Development and Support Services



                                                     Where to Begin?


• Some SPs tell us what they want:
   – http://tinyurl.com/2y92cj
   – this tends to encourage standardisation

• Some SPs prefer to negotiate with IdPs
• If you have more information, let us know!
• Remember: information release is your
  responsibility so it’s your call


  McShib meeting                                            14th December 2007   5
Shibboleth Development and Support Services



                                                  Finding a Balance

• Core attributes:
   – minimal set of four very flexible attributes
   – chosen from eduPerson for interoperability
   – good enough for most situations
   – of course, not sufficient for all situations

• SPs told: you may have problems if you ask for
  something outside this set

• IdPs told: you may not be able to access some
  popular services if you can’t provide this set
  McShib meeting                                            14th December 2007   6
Shibboleth Development and Support Services



                                        Stored vs. Transmitted
• The attributes you transmit don’t have to be the
  same attributes you have stored.

• Attributes can be gathered from multiple
  sources.

• Attributes can be transformed, e.g., by scripts
  you write.

• So, no requirement to alter your directory
  schema.

• Release only after positive policy decision.
  McShib meeting                                            14th December 2007   7
Shibboleth Development and Support Services



                   eduPersonScopedAffiliation (ePSA)

• Possibly the most important attribute in the UKf
• Describes the subject’s relationship with their
  institution

• What are they to you?
• Example: member@ed.ac.uk
• Only a few permissible values (this is good)
• ... but even fewer see real use
  McShib meeting                                             14th December 2007   8
Shibboleth Development and Support Services



                                                       ePSA Values (1)


• student, staff, faculty, employee, member,
  affiliate, alum, library-walk-in

• multi-valued attribute for each subject
• value space has structure:
   •    e.g., student@ implies member@ as well

• only release what the service provider needs!
• normally safe to release member@ to everyone
  McShib meeting                                            14th December 2007   9
Shibboleth Development and Support Services



                                                       ePSA Values (2)

• Most important value: member
   – “member in good standing of the ... community”
   – corresponds to most “authorised users” in the
     JISC model license
   – safe to release, adequate for many SPs

• Er, that’s it...
• Upcoming: library-walk-in
   – recently profiled by MACE-Dir for new eduPerson
   – corresponds to the other “authorised users”
  McShib meeting                                            14th December 2007   10
Shibboleth Development and Support Services



               Scripting eduPersonScopedAffiliation

• Your directory says “role is student” in code
• ... but you want ePSA = “student”
• ePSA can be derived from “unscoped” ePA:
  <ScriptletAttributeDefinition
          id=quot;urn:mace:dir:attribute-def:eduPersonAffiliationquot;>
      <DataConnectorDependency requires=quot;directoryquot;/>
      <Scriptlet><![CDATA[
          Attributes attributes =
              dependencies.getConnectorResolution(quot;directoryquot;);
          Attribute roles = attributes.get(quot;rolesquot;);
          if (roles.contains(quot;00142quot;)) {
              resolverAttribute.addValue(quot;studentquot;);
          }
      ]]></Scriptlet>
  </ScriptletAttributeDefinition>


  McShib meeting                                            14th December 2007   11
Shibboleth Development and Support Services



                             eduPersonTargetedID (ePTI)

• ePTI is a opaque, directed, persistent identifier
  for the user
   – opaque: doesn’t give the user’s identity away
   – directed: each SP sees a different value
   – persistent: the SP will see the same value every
     time the user comes back to them

• Primary use is for personalisation
• ePTI is not stored in your directory
   – options are storage-backed and computed

  McShib meeting                                            14th December 2007   12
Shibboleth Development and Support Services



                                             Storage-backed ePTI

• Store opaque (e.g., random) tokens in a DB
• Pro:
   – Supports more future SAML functionality
   – Supports ePTI revocation for privacy purposes
   – No problems with local identifier re-use

• Con:
   – Not bundled with 1.x IdP, so not many examples
         Basic implementation bundled with 2.0 IdP

   – Fully resilient implementation is more complex
  McShib meeting                                            14th December 2007   13
Shibboleth Development and Support Services



                                                Computed ePTI (1)

• Mix (hash) together:
   – a secret
   – a unique (non-reassigned) local identifier
         probably not the login name
         most directories have some kind of UUID/GUID

   – the SP’s entity name

• Pro:
   – No storage required
   – Implementation bundled with 1.x IdP

  McShib meeting                                            14th December 2007   14
Shibboleth Development and Support Services



                                                Computed ePTI (2)

• Con:
   – Doesn’t support advanced SAML functionality
   – Doesn’t support revocability
   – If SHA-1 is broken, becomes insecure
   – Reuse of local identifier causes ePTI reuse
         and SPs really don’t want that to happen, ever

• Summary: computed ePTI is acceptable for now
  if carefully implemented

• ... but expect to need to migrate
  McShib meeting                                            14th December 2007   15
Shibboleth Development and Support Services



                              eduPersonEntitlement (ePE)

• eduPersonGetOutOfJailFreeCard
• Value is arbitrary URI (e.g., URN or URL)
• Values can be agreed between IdP and SP
• Can be used to delegate authorisation to IdP
• E.g., “IdP says OK to access resource X”
• Multi-valued: each user may have many
• ... only release values appropriate to each SP
  McShib meeting                                            14th December 2007   16
Shibboleth Development and Support Services



                        Scripting eduPersonEntitlement
<ScriptletAttributeDefinition
   id=quot;urn:mace:dir:attribute-def:eduPersonEntitlementquot;>
   <DataConnectorDependency requires=quot;directoryquot;/>
   <AttributeDependency
      requires=quot;urn:mace:dir:attribute-def:eduPersonAffiliationquot; />
   <Scriptlet><![CDATA[
      Attributes attributes =
          dependencies.getConnectorResolution(quot;directoryquot;);

      Attribute entitlement = attributes.get(quot;eduPersonEntitlementquot;);

      // add values from directory
      for (int i = 0; entitlement != null && i < entitlement.size(); i++) {
         resolverAttribute.addValue(entitlement.get(i));
      }

      // add common-lib-terms for staff and student
      Attribute attribute = attributes.get(quot;eduPersonAffiliationquot;);
      if (attribute.contains(quot;staffquot;) || attribute.contains(quot;studentquot;)) {
          resolverAttribute.addValue(quot;http://sp.example.com/contract0732quot;);
      }
      ]]>
   </Scriptlet>
</ScriptletAttributeDefinition>

   McShib meeting                                            14th December 2007   17
Shibboleth Development and Support Services



                      eduPersonPrincipalName (ePPN)



• Usually scoped version of login name
   – my.name@ed.ac.uk

• This counts as personal information
• Privacy and legal concerns mean use as last
  resort

• Can often be replaced by ePTI or ePE

  McShib meeting                                            14th December 2007   18
Shibboleth Development and Support Services



                                                                    Contacts

• UK federation: http://www.ukfederation.org.uk/
• Technical Recommendations for Participants:
   – http://tinyurl.com/ywm895

• Recommendations for use of personal data:
   – http://tinyurl.com/2fud6b

• Speaker: ian@iay.org.uk
• And you’ve been good this year, so...
  McShib meeting                                            14th December 2007   19
...all right, you can have a pony




photo © cc-by-2.0 by flickr user http://flickr.com/photos/jonmclean/
Shibboleth Development and Support Services



                                                                    Contacts


• UK federation: http://www.ukfederation.org.uk/
• Technical Recommendations for Participants:
   – http://tinyurl.com/ywm895

• Recommendations for use of personal data:
   – http://tinyurl.com/2fud6b

• Speaker: ian@iay.org.uk

  McShib meeting                                            14th December 2007   21

Mais conteúdo relacionado

Semelhante a 20071214: An Identity Provider's Guide to the Core Attributes

Java EE 7 from an HTML5 Perspective, JavaLand 2015
Java EE 7 from an HTML5 Perspective, JavaLand 2015Java EE 7 from an HTML5 Perspective, JavaLand 2015
Java EE 7 from an HTML5 Perspective, JavaLand 2015Edward Burns
 
WCAG- Go beyond and be creative by Irfan Ali from ETS Princeton New Jersey
WCAG- Go beyond and be creative by Irfan Ali from ETS Princeton New JerseyWCAG- Go beyond and be creative by Irfan Ali from ETS Princeton New Jersey
WCAG- Go beyond and be creative by Irfan Ali from ETS Princeton New JerseyIrfan Ali
 
Spreadmart To Data Mart BISIG Presentation
Spreadmart To Data Mart BISIG PresentationSpreadmart To Data Mart BISIG Presentation
Spreadmart To Data Mart BISIG PresentationDan English
 
Achievo ATK, an Open Source project
Achievo ATK, an Open Source projectAchievo ATK, an Open Source project
Achievo ATK, an Open Source projectIvo Jansch
 
If Web Services are the Answer, What's The Question
If Web Services are the Answer, What's The QuestionIf Web Services are the Answer, What's The Question
If Web Services are the Answer, What's The QuestionDuncan Hull
 
Hello Open World - The Web of Data for the Pragmatic Developer
Hello Open World - The Web of Data for the Pragmatic DeveloperHello Open World - The Web of Data for the Pragmatic Developer
Hello Open World - The Web of Data for the Pragmatic DeveloperAlexandre Passant
 
An Autonomous Singularity Approaches: Force Multipliers For Overwhelmed DBAs
An Autonomous Singularity Approaches: Force Multipliers For Overwhelmed DBAsAn Autonomous Singularity Approaches: Force Multipliers For Overwhelmed DBAs
An Autonomous Singularity Approaches: Force Multipliers For Overwhelmed DBAsJim Czuprynski
 
Applications of the REST Principle
Applications of the REST PrincipleApplications of the REST Principle
Applications of the REST Principleelliando dias
 
Building Killer Communities And Taking Confluence Social
Building Killer Communities And Taking Confluence SocialBuilding Killer Communities And Taking Confluence Social
Building Killer Communities And Taking Confluence SocialAtlassian
 
DPC2007 PDO (Lukas Kahwe Smith)
DPC2007 PDO (Lukas Kahwe Smith)DPC2007 PDO (Lukas Kahwe Smith)
DPC2007 PDO (Lukas Kahwe Smith)dpc
 
From Beginners to Experts, Data Wrangling for All
From Beginners to Experts, Data Wrangling for AllFrom Beginners to Experts, Data Wrangling for All
From Beginners to Experts, Data Wrangling for AllDataWorks Summit
 
The Server Side of Responsive Web Design
The Server Side of Responsive Web DesignThe Server Side of Responsive Web Design
The Server Side of Responsive Web DesignDave Olsen
 
Render Caching for Drupal 8
Render Caching for Drupal 8Render Caching for Drupal 8
Render Caching for Drupal 8John Doyle
 
Postgres Foreign Data Wrappers
Postgres Foreign Data Wrappers  Postgres Foreign Data Wrappers
Postgres Foreign Data Wrappers EDB
 
CA_Plex_SupportForModernizingIBM_DB2_for_i
CA_Plex_SupportForModernizingIBM_DB2_for_iCA_Plex_SupportForModernizingIBM_DB2_for_i
CA_Plex_SupportForModernizingIBM_DB2_for_iGeorge Jeffcock
 
Meandre Architecture
Meandre ArchitectureMeandre Architecture
Meandre ArchitectureLoretta Auvil
 
Meandre Architecture Ws Apr 2009
Meandre Architecture Ws Apr 2009Meandre Architecture Ws Apr 2009
Meandre Architecture Ws Apr 2009Loretta Auvil
 

Semelhante a 20071214: An Identity Provider's Guide to the Core Attributes (20)

Java EE 7 from an HTML5 Perspective, JavaLand 2015
Java EE 7 from an HTML5 Perspective, JavaLand 2015Java EE 7 from an HTML5 Perspective, JavaLand 2015
Java EE 7 from an HTML5 Perspective, JavaLand 2015
 
WCAG- Go beyond and be creative by Irfan Ali from ETS Princeton New Jersey
WCAG- Go beyond and be creative by Irfan Ali from ETS Princeton New JerseyWCAG- Go beyond and be creative by Irfan Ali from ETS Princeton New Jersey
WCAG- Go beyond and be creative by Irfan Ali from ETS Princeton New Jersey
 
Spreadmart To Data Mart BISIG Presentation
Spreadmart To Data Mart BISIG PresentationSpreadmart To Data Mart BISIG Presentation
Spreadmart To Data Mart BISIG Presentation
 
Achievo ATK, an Open Source project
Achievo ATK, an Open Source projectAchievo ATK, an Open Source project
Achievo ATK, an Open Source project
 
If Web Services are the Answer, What's The Question
If Web Services are the Answer, What's The QuestionIf Web Services are the Answer, What's The Question
If Web Services are the Answer, What's The Question
 
Irl Web Strategy
Irl Web StrategyIrl Web Strategy
Irl Web Strategy
 
Hello Open World - The Web of Data for the Pragmatic Developer
Hello Open World - The Web of Data for the Pragmatic DeveloperHello Open World - The Web of Data for the Pragmatic Developer
Hello Open World - The Web of Data for the Pragmatic Developer
 
Symfony for non-techies
Symfony for non-techiesSymfony for non-techies
Symfony for non-techies
 
An Autonomous Singularity Approaches: Force Multipliers For Overwhelmed DBAs
An Autonomous Singularity Approaches: Force Multipliers For Overwhelmed DBAsAn Autonomous Singularity Approaches: Force Multipliers For Overwhelmed DBAs
An Autonomous Singularity Approaches: Force Multipliers For Overwhelmed DBAs
 
Applications of the REST Principle
Applications of the REST PrincipleApplications of the REST Principle
Applications of the REST Principle
 
Building Killer Communities And Taking Confluence Social
Building Killer Communities And Taking Confluence SocialBuilding Killer Communities And Taking Confluence Social
Building Killer Communities And Taking Confluence Social
 
DPC2007 PDO (Lukas Kahwe Smith)
DPC2007 PDO (Lukas Kahwe Smith)DPC2007 PDO (Lukas Kahwe Smith)
DPC2007 PDO (Lukas Kahwe Smith)
 
From Beginners to Experts, Data Wrangling for All
From Beginners to Experts, Data Wrangling for AllFrom Beginners to Experts, Data Wrangling for All
From Beginners to Experts, Data Wrangling for All
 
The Server Side of Responsive Web Design
The Server Side of Responsive Web DesignThe Server Side of Responsive Web Design
The Server Side of Responsive Web Design
 
Render Caching for Drupal 8
Render Caching for Drupal 8Render Caching for Drupal 8
Render Caching for Drupal 8
 
Postgres Foreign Data Wrappers
Postgres Foreign Data Wrappers  Postgres Foreign Data Wrappers
Postgres Foreign Data Wrappers
 
Demo day
Demo dayDemo day
Demo day
 
CA_Plex_SupportForModernizingIBM_DB2_for_i
CA_Plex_SupportForModernizingIBM_DB2_for_iCA_Plex_SupportForModernizingIBM_DB2_for_i
CA_Plex_SupportForModernizingIBM_DB2_for_i
 
Meandre Architecture
Meandre ArchitectureMeandre Architecture
Meandre Architecture
 
Meandre Architecture Ws Apr 2009
Meandre Architecture Ws Apr 2009Meandre Architecture Ws Apr 2009
Meandre Architecture Ws Apr 2009
 

Último

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Último (20)

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

20071214: An Identity Provider's Guide to the Core Attributes

  • 1. Shibboleth Development and Support Services An Identity Provider’s Guide to the Core Attributes Ian A. Young SDSS, EDINA, University of Edinburgh McShib meeting, 14th December 2007
  • 2. Shibboleth Development and Support Services Problem Statement • Federated Access Management is all about the attributes released by the IdP to the SP • IdP and SP need to agree on: – attributes to exchange – their definitions – their quality • (more) easily resolved if IdP = SP – e.g., internal institutional applications • If they’re not the same party, this is hard McShib meeting 14th December 2007 2
  • 3. Shibboleth Development and Support Services Festive Caricatures (1) • Service provider: I want a pony! – I’d like attributes A, B, C, and D through Z please – if you give me more, I can do more – if you give me attribute Y, my code will be easier to write – I’ve already written code that needs attribute X – Summary: as much as possible, please McShib meeting 14th December 2007 3
  • 4. Shibboleth Development and Support Services Festive Caricatures (2) • Identity Provider: No, you can’t have a pony! – we don’t even have all of that information, we’d have to collect it – then we’d have to maintain it to make sure it was correct – we can’t release attribute X to you without talking to our lawyers – We don’t see why you have a real need for Y. – Summary: as little as possible, please McShib meeting 14th December 2007 4
  • 5. Shibboleth Development and Support Services Where to Begin? • Some SPs tell us what they want: – http://tinyurl.com/2y92cj – this tends to encourage standardisation • Some SPs prefer to negotiate with IdPs • If you have more information, let us know! • Remember: information release is your responsibility so it’s your call McShib meeting 14th December 2007 5
  • 6. Shibboleth Development and Support Services Finding a Balance • Core attributes: – minimal set of four very flexible attributes – chosen from eduPerson for interoperability – good enough for most situations – of course, not sufficient for all situations • SPs told: you may have problems if you ask for something outside this set • IdPs told: you may not be able to access some popular services if you can’t provide this set McShib meeting 14th December 2007 6
  • 7. Shibboleth Development and Support Services Stored vs. Transmitted • The attributes you transmit don’t have to be the same attributes you have stored. • Attributes can be gathered from multiple sources. • Attributes can be transformed, e.g., by scripts you write. • So, no requirement to alter your directory schema. • Release only after positive policy decision. McShib meeting 14th December 2007 7
  • 8. Shibboleth Development and Support Services eduPersonScopedAffiliation (ePSA) • Possibly the most important attribute in the UKf • Describes the subject’s relationship with their institution • What are they to you? • Example: member@ed.ac.uk • Only a few permissible values (this is good) • ... but even fewer see real use McShib meeting 14th December 2007 8
  • 9. Shibboleth Development and Support Services ePSA Values (1) • student, staff, faculty, employee, member, affiliate, alum, library-walk-in • multi-valued attribute for each subject • value space has structure: • e.g., student@ implies member@ as well • only release what the service provider needs! • normally safe to release member@ to everyone McShib meeting 14th December 2007 9
  • 10. Shibboleth Development and Support Services ePSA Values (2) • Most important value: member – “member in good standing of the ... community” – corresponds to most “authorised users” in the JISC model license – safe to release, adequate for many SPs • Er, that’s it... • Upcoming: library-walk-in – recently profiled by MACE-Dir for new eduPerson – corresponds to the other “authorised users” McShib meeting 14th December 2007 10
  • 11. Shibboleth Development and Support Services Scripting eduPersonScopedAffiliation • Your directory says “role is student” in code • ... but you want ePSA = “student” • ePSA can be derived from “unscoped” ePA: <ScriptletAttributeDefinition id=quot;urn:mace:dir:attribute-def:eduPersonAffiliationquot;> <DataConnectorDependency requires=quot;directoryquot;/> <Scriptlet><![CDATA[ Attributes attributes = dependencies.getConnectorResolution(quot;directoryquot;); Attribute roles = attributes.get(quot;rolesquot;); if (roles.contains(quot;00142quot;)) { resolverAttribute.addValue(quot;studentquot;); } ]]></Scriptlet> </ScriptletAttributeDefinition> McShib meeting 14th December 2007 11
  • 12. Shibboleth Development and Support Services eduPersonTargetedID (ePTI) • ePTI is a opaque, directed, persistent identifier for the user – opaque: doesn’t give the user’s identity away – directed: each SP sees a different value – persistent: the SP will see the same value every time the user comes back to them • Primary use is for personalisation • ePTI is not stored in your directory – options are storage-backed and computed McShib meeting 14th December 2007 12
  • 13. Shibboleth Development and Support Services Storage-backed ePTI • Store opaque (e.g., random) tokens in a DB • Pro: – Supports more future SAML functionality – Supports ePTI revocation for privacy purposes – No problems with local identifier re-use • Con: – Not bundled with 1.x IdP, so not many examples  Basic implementation bundled with 2.0 IdP – Fully resilient implementation is more complex McShib meeting 14th December 2007 13
  • 14. Shibboleth Development and Support Services Computed ePTI (1) • Mix (hash) together: – a secret – a unique (non-reassigned) local identifier  probably not the login name  most directories have some kind of UUID/GUID – the SP’s entity name • Pro: – No storage required – Implementation bundled with 1.x IdP McShib meeting 14th December 2007 14
  • 15. Shibboleth Development and Support Services Computed ePTI (2) • Con: – Doesn’t support advanced SAML functionality – Doesn’t support revocability – If SHA-1 is broken, becomes insecure – Reuse of local identifier causes ePTI reuse  and SPs really don’t want that to happen, ever • Summary: computed ePTI is acceptable for now if carefully implemented • ... but expect to need to migrate McShib meeting 14th December 2007 15
  • 16. Shibboleth Development and Support Services eduPersonEntitlement (ePE) • eduPersonGetOutOfJailFreeCard • Value is arbitrary URI (e.g., URN or URL) • Values can be agreed between IdP and SP • Can be used to delegate authorisation to IdP • E.g., “IdP says OK to access resource X” • Multi-valued: each user may have many • ... only release values appropriate to each SP McShib meeting 14th December 2007 16
  • 17. Shibboleth Development and Support Services Scripting eduPersonEntitlement <ScriptletAttributeDefinition id=quot;urn:mace:dir:attribute-def:eduPersonEntitlementquot;> <DataConnectorDependency requires=quot;directoryquot;/> <AttributeDependency requires=quot;urn:mace:dir:attribute-def:eduPersonAffiliationquot; /> <Scriptlet><![CDATA[ Attributes attributes = dependencies.getConnectorResolution(quot;directoryquot;); Attribute entitlement = attributes.get(quot;eduPersonEntitlementquot;); // add values from directory for (int i = 0; entitlement != null && i < entitlement.size(); i++) { resolverAttribute.addValue(entitlement.get(i)); } // add common-lib-terms for staff and student Attribute attribute = attributes.get(quot;eduPersonAffiliationquot;); if (attribute.contains(quot;staffquot;) || attribute.contains(quot;studentquot;)) { resolverAttribute.addValue(quot;http://sp.example.com/contract0732quot;); } ]]> </Scriptlet> </ScriptletAttributeDefinition> McShib meeting 14th December 2007 17
  • 18. Shibboleth Development and Support Services eduPersonPrincipalName (ePPN) • Usually scoped version of login name – my.name@ed.ac.uk • This counts as personal information • Privacy and legal concerns mean use as last resort • Can often be replaced by ePTI or ePE McShib meeting 14th December 2007 18
  • 19. Shibboleth Development and Support Services Contacts • UK federation: http://www.ukfederation.org.uk/ • Technical Recommendations for Participants: – http://tinyurl.com/ywm895 • Recommendations for use of personal data: – http://tinyurl.com/2fud6b • Speaker: ian@iay.org.uk • And you’ve been good this year, so... McShib meeting 14th December 2007 19
  • 20. ...all right, you can have a pony photo © cc-by-2.0 by flickr user http://flickr.com/photos/jonmclean/
  • 21. Shibboleth Development and Support Services Contacts • UK federation: http://www.ukfederation.org.uk/ • Technical Recommendations for Participants: – http://tinyurl.com/ywm895 • Recommendations for use of personal data: – http://tinyurl.com/2fud6b • Speaker: ian@iay.org.uk McShib meeting 14th December 2007 21