Identity management. Tuomas Aura T Information security technology. Aalto University, autumn 2011

Similar documents
Identity management. Tuomas Aura CSE-C3400 Information security. Aalto University, autumn 2014

Web Based Single Sign-On and Access Control

ISA 767, Secure Electronic Commerce Xinwen Zhang, George Mason University

Identity Provider for SAP Single Sign-On and SAP Identity Management

SAML-Based SSO Solution

CA SiteMinder. Federation in Your Enterprise 12.51

SAML-Based SSO Solution

Federated Identity Manager Business Gateway Version Configuration Guide GC

Warm Up to Identity Protocol Soup

Test Plan for Liberty Alliance SAML Test Event Test Criteria SAML 2.0

CA CloudMinder. SSO Partnership Federation Guide 1.51

CA SiteMinder Federation

RealMe. SAML v2.0 Messaging Introduction. Richard Bergquist Datacom Systems (Wellington) Ltd. Date: 15 November 2012

Oracle Utilities Opower Solution Extension Partner SSO

Enhancing cloud applications by using external authentication services. 2015, 2016 IBM Corporation

Major SAML 2.0 Changes. Nate Klingenstein Internet2 EuroCAMP 2007 Helsinki April 17, 2007

Extending Services with Federated Identity Management

Morningstar ByAllAccounts SAML Connectivity Guide

April Understanding Federated Single Sign-On (SSO) Process

CA SiteMinder Federation

Authentication. Katarina

U.S. E-Authentication Interoperability Lab Engineer

Configuring Single Sign-on from the VMware Identity Manager Service to Marketo

CA SiteMinder. Federation Manager Guide: Legacy Federation. r12.5

CA CloudMinder. SSO Partnership Federation Guide 1.53

SAML Authentication with Pulse Connect Secure and Pulse Secure Virtual Traffic Manager

Public Key Infrastructure PKI. National Digital Certification Center Information Technology Authority Sultanate of Oman

Liberty Alliance Project

Using Your Own Authentication System with ArcGIS Online. Cameron Kroeker and Gary Lee

Introducing Shibboleth. Sebastian Rieger

Dissecting NIST Digital Identity Guidelines

Kerberos for the Web Current State and Leverage Points

The Business of Identity: Business Drivers and Use Cases of Identity Web Services

IBM InfoSphere Information Server Single Sign-On (SSO) by using SAML 2.0 and Tivoli Federated Identity Manager (TFIM)

Oracle Utilities Opower Energy Efficiency Web Portal - Classic Single Sign-On

1z0-479 oracle. Number: 1z0-479 Passing Score: 800 Time Limit: 120 min.

Enhanced OpenID Protocol in Identity Management

Access Management Handbook

Introduction to application management

Test Plan for Kantara Initiative Test Event Test Criteria SAML 2.0

Lesson 13 Securing Web Services (WS-Security, SAML)

DESIGN OF WEB SERVICE SINGLE SIGN-ON BASED ON TICKET AND ASSERTION

Configure Unsanctioned Device Access Control

Integrated Security Context Management of Web Components and Services in Federated Identity Environments

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

Identity Systems and Liberty Specification Version 1.1 Interoperability

Introduction... 5 Configuring Single Sign-On... 7 Prerequisites for Configuring Single Sign-On... 7 Installing Oracle HTTP Server...

CA SiteMinder. Federation Manager Guide: Partnership Federation. r12.5

Integration Guide. SafeNet Authentication Manager. Using SAM as an Identity Provider for PingFederate

Cloud Secure Integration with ADFS. Deployment Guide

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

From UseCases to Specifications

OPENID CONNECT 101 WHITE PAPER

egov Profile SAML 2.0

Identität und Autorisierung als Grundlage für sichere Web-Services. Dr. Hannes P. Lubich IT Security Strategist

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

Version 7.x. Quick-Start Guide

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

New trends in Identity Management

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

OpenID Cloud Identity Connector. Version 1.3.x. User Guide

WebEx Connector. Version 2.0. User Guide

Canadian Access Federation: Trust Assertion Document (TAD)

Canadian Access Federation: Trust Assertion Document (TAD)

CERN Certification Authority

InCommon Federation: Participant Operational Practices

Security analysis of OpenID, followed by a reference implementation of an npabased OpenID provider

The AAF - Supporting Greener Collaboration

SAP Single Sign-On 2.0 Overview Presentation

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

esignlive SAML Administrator's Guide Product Release: 6.5 Date: July 05, 2018 esignlive 8200 Decarie Blvd, Suite 300 Montreal, Quebec H4P 2P5

Nimsoft Service Desk. Single Sign-On Configuration Guide. [assign the version number for your book]

ArcGIS Server and Portal for ArcGIS An Introduction to Security

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

BELNET R&E federation Technical policy

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

Federal Identity, Credentialing, and Access Management. OpenID 2.0 Profile. Version Release Candidate

New Zealand Security Assertion Messaging Standard

Qualys SAML 2.0 Single Sign-On (SSO) Technical Brief

Quick Connection Guide

Federated Authentication for E-Infrastructures

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

INCOMMON FEDERATION: PARTICIPANT OPERATIONAL PRACTICES

TestKings.C _120,QA

National Identity Exchange Federation. Terminology Reference. Version 1.0

Novell Access Manager

Integrating YuJa Active Learning into ADFS via SAML

SelfTestEngine.C _135,Q&A

Session 2.1: Federations: Foundation. Scott Koranda Support provided by the National Institute of Allergy and Infectious Diseases

Advanced Client Conor P. Cahill Systems Technology Lab Intel Corporation

Integrating VMware Workspace ONE with Okta. VMware Workspace ONE

Liferay Security Features Overview. How Liferay Approaches Security

Canadian Access Federation: Trust Assertion Document (TAD)

All about SAML End-to-end Tableau and OKTA integration

Configuration Guide - Single-Sign On for OneDesk

Token-based Payment in Dynamic SAML-based Federations

Trust Services for Electronic Transactions

Transcription:

Identity management Tuomas Aura T-110.4206 Information security technology Aalto University, autumn 2011

Outline 1. Single sign-on 2. OpenId 3. SAML and Shibboleth 4. Corporate IAM 5. Strong identity 2

Single sign-on (SSO) Users have too many user accounts Cannot remember the passwords Service access slow and inconvenient Forgotten, unmanaged accounts are a security risk Need for an SSO solution Pseudo-SSO: separate authentication to each service; client software manages the credentials and hides the login from user Proxy-based SSO: proxy in network manages user credentials and hides the login details from the client True SSO: user authenticates to a separate authentication service, which asserts user identity to other services Federated SSO: authentication between administrative domains Main problem with SSO systems: there re so many of them 3

OPENID 4

OpenId architecture End user / user agent UA Relying party RP Identity provider OP Register OpenId for user account Authenticate Create OpenId Standard for SSO to web sites http://openid.net/developers/specs/ End user creates an OpenId (=identity) at some OpenId provider (OP) End user registers the OpenId at various relaying parties (RP) i.e. web sites End user authenticates to RP with the help of OP The end user needs a web browser i.e. user agent (UA) 5

OpenId 2.0 protocol End user / user agent UA Relying party RP Identity provider OP 1. Identifier 2. OP discovery [3. Association: DH] 4. Redirect: authentication request 5. User authentication: e.g. password 6. Redirect: authentication approved/failed 8. Service access [7. Direct verification] (only if no step 3) Identifier is an HTTP URL (or XRI): gives the OP address e.g. username.myopenid.com, https://me.yahoo.com/username Direct messages use HTTP POST Indirect messages use HTTP redirect Data fields sent as URL parameters via the browser Method of user authentication not specified; typically a password 6

OpenId 2.0 security End user / user agent UA Relying party RP Identity provider OP User must check OP name and RP name 1. Identifier 8. Service access 2. OP discovery [3. Association: DH] 4. Redirect: authentication request 5. User authentication: e.g. password 6. Redirect: authentication approved/failed [7. Direct verifivation] TLS to authenticate the DH key exchange TLS to protect the password MAC with the association key (only if no step 3) TLS to authenticate result Approval /failure message from OP to RP is authenticated with a timestamp and MAC RP can establish a MAC key with Diffie-Hellman, or ask OP to verify the MAC for it TLS not required by OpenId spec but needed for real security: RP must authenticate OP in the Diffie-Hellman or direct verification step UA must authenticate OP before user types in the password TLS can be used between UA and RP to protect service access (Q: does it matter?) User must pay attention: Check HTTPS and OP name in the browser address bar before typing in the password Check RP name presented by OP to approve login 7

OpenId notes What does open mean? Anyone can become an identity provider User can choose any identity provider Services accept the identity chosen by the user Works on any web browser without proprietary software In practice, not always so open: RP policy may determine which OPs are accepted OP policy may determine which RPs are accepted User-provided id may just point to OP without identifying the user e.g. https://www.google.com/accounts/o8/id OpenId specification is poorly written Assumes the reader knows previous versions Uses XRI, Yadis and XRDS: very complex and incomplete specifications Security not obvious: Focus on web technology, not on secure protocol design Vague security claims especially when used without TLS 8

SAML AND SHIBBOLETH 9

SAML 2.0 architecture Principal Service provider SP Identity provider IdP Trust relation Register user Authenticate Security assertion markup language (SAML 2.0) OASIS standard (combines ideas from SAML 1.1, Liberty Alliance identity-federation framework 1.2, and Shibboleth 1.3) Service provider (SP) and identity provider (IdP) establish a trust relation by exchanging metadata Principal (= user, subject) registers with the IdP Principal authenticates to IdP and SP 10

SAML SAML is a complex family of protocols: Assertions are statements by IdP about a principal, written in XML Protocols define message flows for requesting assertions Bindings define how protocol messages are transported over HTTP, SOAP etc. Profiles define useful combinations of assertions, protocols and bindings Metadata defines trust relations Unlike OpenId, SAML is based on contractual relations Metadata must be exchanged between IdP and SP Federation may set rules for its member IdPs and SPs User cannot decide which id to use where Typical profile: SAML web browser SSO profile 11

SAML web browser SSO profile IdP-initiated or SP-initiated SSO: User first logs into the IdP, or first connects to SP Bindings to HTTP messages Redirect: message from SP to IdP is sent in GET URL via browser, with help of HTTP redirection POST: message between SP and IdP is sent in HTTP form via browser, with the help of user or script Artifact: reference to message is sent in GET URL via browser, with the help of HTTP redirection, and the actual message is retrieved directly from sender Other profiles support SOAP bindings 12

SAML web browser SSO profile Principal Service provider SP Identity provider IdP 1. Access request 2. <AuthnRequest> SP-initiated SSO 3. User login to IdP 4. <Response> Resource access Protocol for SP-initiated SSP: AuthnRequest and Response How to send these messages over HTTP? Need to choose bindings; 6 different combinations 13

SAML web browser SSO profile Principal Service provider SP Identity provider IdP 1. Access request 2. Redirect: <AuthnRequest> 3. User login to IdP 4. Redirect with artifact SP-initiated SSO SAML Redirect- Artifact binding 7. Resource access 5. Resolve artifact 6. Artifact response (<Response>) Example: redirect-artifact binding: SP sends <AuthnRequest> to IdP in GET URL with HTTP redirect IdP sends an artifact to SP in GET URL with HTTP redirect SP retrieves <Response> from IdP with artifact resolution protocol 14

SAML security Principal Service provider SP Identity provider IdP 1. Access request 2. Redirect: <AuthnRequest> 3. User login to IdP 4. Redirect with artifact TLS for all connections 7. Resource access 5. Resolve artifact 6. Artifact response <Response> Sign with IdP signature key Response must be signed by IdP TSL needed for all connections: Protects password; protects secrecy of attributes; prevents redirection to wrong site Attributes in Response signed by IdP 15

Shibboleth 2 Open-source implementation of SAML 2.0 for web SSO (wiki) Developed by the Internet 2 project Used mainly in research and educational institutions; many other commercial and open-source SAML implementation exist If SP supports multiple IdPs, SP-initiated authentication goes via the where are you from (WAYF) page One more step of redirection for the AuthnRequest Two kinds of sessions: IdP session with the IdP (cookies from IdP) SP session with each SP (cookies from SP) user only needs to type in password once; not single logout Federation is a group of IdPs and SPs that share metadata in one signed file agree on an attribute schema agree on CA for TLS have a service agreement that sets out rules for the federation e.g. Haka federation 16

SAML attributes In addition to user identity, <Response> from IdP to SP contains user attributes Attributes sent to each SP are selected based on attribute filters in metadata Example: cn = Tuomas Aura o = Teknillinen korkeakoulu edupersonaffiliation = employee;faculty;member Try https://talli.funet.fi/haka/attribute-test/ User attributes are personal data For legal reasons, IdP needs user confirmation before transferring attributes to SP the annoying check box after IdP login 17

CORPORATE IAM 18

Corporate IAM Federated identity and authentication is not sufficient: Need to configure access permissions for users in the services Need to monitor access control state in the system Need to revoke access rights Identity and access management (IAM) systems Define roles and groups for the organization Enable centralized role assignment, revocation and monitoring Example: student enrolls to university, then becomes employee, then graduates, finally leaves employment Central IAM server and IAM agent at each supported service more expensive to develop and deploy than federated authentication 19

[Internet 2 Middleware Initiative] 20

STRONG IDENTITY 21

Strong authentication Goal: authentication equivalent to verifying national identity card or passport Why is it needed? Initial id check when registering new users, e.g. students enrolling to university Required by law for access to government services and personal information Increasing trust in commercial online transactions but this has already been solved in other ways Why not use OpenId or SAML? OpenId allows user to choose identifier no link to real person SAML works internally in organizations and between organizations that have a contract not for new or adhoc relations 22

Finnish electronic identity card Finnish identity cards (HST-kortti) have a smartcard chip with three key pairs Signature, encryption and authentication keys http://www.fineid.fi/ Keys are certified by the national population register (VRK) Has not gained popularity; few people have an id card; even fewer ever use it for electronic authentication Why? 23

Tupas authentication Tupas uses bank accounts for strong authentication Defined by Federation of Finnish Financial Services http://www.fkl.fi/teemasivut/sahkoinen_asiointi/tupas/ Developed from online the payment system (commonly used in Finland for online purchases) User authentication with one-time passwords Advantage: everyone has a bank account, and banks are required to know the identity of their customers no cost for identity proofing Example: https://password.aalto.fi/ 24

Tupas authentication User Online service Bank 1. Bank selection 2. POST redirection 3. One-time password login to bank 4. POST redirection: name, national id id number, MAC 5. Service access TLS for all connections Authenticated with a shared key; id number may be encrypted Three-corner authentication model: user, user s bank, online service Each service must set up a shared key with each bank Smaller banks are not supported by all online services 25

Mobile signature Mobile phone operators install a signature key on the SIM ETSI standard Developed from earlier business SIM No direct access from phone to signature key; signatures are requested via the operator s mobile signature service provider (MSSP) Advantages: everyone has a SIM card, and operators have 24/7 service for revocation Four-corner authentication model: Mobile operators have contracts with each other Each service and user only needs to have a contract with one operator Deployment and adoption has been slow Heavy requirements for identity proofing Operators want a fee for every transaction low number of transactions no business model 26

Online: Reading material OpenId 2.0, http://openid.net/developers/specs/ SAML 2.0 Technical Overview, http://www.oasisopen.org/committees/download.php/27819/sstcsaml-tech-overview-2.0-cd-02.pdf 27

Exercises How much security does OpenId exactly give if TLS is not used? Learn about XRI name space and XRI discovery. If XRI is used as the user identifier in OpenId, how is the user supposed to authenticate the OP before typing in the password? What is the difference to security and privacy if the user-provided id points to the OP without identifying the user, and the user identity is entered only at the OP site? Look at the Haka federation metadata for Shibboleth 2. How does this create trust between an IdP and SP? What ways are there to limit the trust? Can you capture the AuthnRequest and Response messages when logging into Noppa? Which bindings are used? Why exactly is TLS needed at each stage in SAML/Shibboleth authentication, or is it? Despite similarities in the protocols, OpenId, SAML and Tupas have different goals and make different assumptions about the relations between entities. What differences are there? 28