SAML Security Assertion Markup Language



Similar documents
Introduction to SAML. Jason Rouault Section Architect Internet Security Solutions Lab Hewlett-Packard. An XML based Security Assertion Markup Language

SAML basics A technical introduction to the Security Assertion Markup Language

Implementing Single Sign On in Java Technologybased

Design and Implementaion of a Single Sign-On Library Supporting SAML (Security Assertion Markup Language) for Grid and Web Services Security

STUDY ON IMPROVING WEB SECURITY USING SAML TOKEN

SAML Security Analysis. Huang Zheng Xiong Jiaxi Ren Sijun

Cryptonite. SSO: Single Sign-On Security Overview. Áron SZABÓ. H.A.C.K. Hackerspace Budapest (hsbp.org)

Authorization-Authentication Using

Web Based Single Sign-On and Access Control

Biometric Single Sign-on using SAML

Setting Up Federated Identity with IBM SmartCloud

Biometric Single Sign-on using SAML Architecture & Design Strategies

Token specification for Energinet.dk DataHub

Single Sign-On Implementation Guide

SAML and OAUTH comparison

Single Sign-On Implementation Guide

Security Assertion Markup Language (SAML) 2.0 Technical Overview

Security Assertion Markup Language (SAML)

New Single Sign-on Options for IBM Lotus Notes & Domino IBM Corporation

An SAML Based SSO Architecture for Secure Data Exchange between User and OSS

MONDESIR Eunice WEILL-TESSIER Pierre FEDERATED IDENTITY. ASR 2006/2007 Final Project. Supervisers: Maryline Maknavicius-Laurent, Guy Bernard

Extending DigiD to the Private Sector (DigiD-2)

Federated Identity Management Solutions

Copyright: WhosOnLocation Limited

Single Sign-on Systems SS5

XML Signatures in an Enterprise Service Bus Environment

OIOSAML Rich Client to Browser Scenario Version 1.0

Siebel CRM On Demand Single Sign-On. An Oracle White Paper December 2006

Agenda. How to configure

SAML Federated Identity at OASIS

SAML-Based SSO Solution

This chapter describes how to use the Junos Pulse Secure Access Service in a SAML single sign-on deployment. It includes the following sections:

Computer Systems Security 2013/2014. Single Sign-On. Bruno Maia Pedro Borges

OpenHRE Security Architecture. (DRAFT v0.5)

Single Sign On for GoToMeeting with NetScaler

Integrating VMware Horizon Workspace and VMware Horizon View TECHNICAL WHITE PAPER

e-filing Secure Web Service User Manual

SAML Security Option White Paper

Web Access Management and Single Sign-On

Single Sign-On Implementation Guide

Compass Security. [The ICT-Security Experts] SAML 2.0 [Beer Talk Berlin 2/16/2016] Stephan Sekula

Single Sign-On Implementation Guide

This Working Paper provides an introduction to the web services security standards.

Web Single Sign-On Authentication using SAML

Deploying RSA ClearTrust with the FirePass controller

Ameritas Single Sign-On (SSO) and Enterprise SAML Standard. Architectural Implementation, Patterns and Usage Guidelines

Single Sign On for ZenDesk with NetScaler. Deployment Guide

Authentication Context Classes for Levels of Assurance for the Swedish eid Framework

Security Assertion Markup Language (SAML) V2.0 Technical Overview

INUVIKA OPEN VIRTUAL DESKTOP ENTERPRISE

HP Software as a Service. Federated SSO Guide

CONFIGURATION GUIDE WITH MICROSOFT ACTIVE DIRECTORY FEDERATION SERVER

IBM WebSphere Application Server

SAML SSO Configuration

Single Sign on Using SAML

Evaluation of different Open Source Identity management Systems

Trusting XBRL: Using the Liberty Web Services Framework to Secure and Authenticate XBRL Documents

Research and Implementation of Single Sign-On Mechanism for ASP Pattern *

RSA Secured Implementation Guide for VPN Products

Perceptive Experience Single Sign-On Solutions

Authentication Methods

USING FEDERATED AUTHENTICATION WITH M-FILES

CA Nimsoft Service Desk

SAML-Based SSO Solution

Security Assertion Markup Language (SAML) V2.0 Technical Overview

Implementation Guide SAP NetWeaver Identity Management Identity Provider

OpenSSO: Cross Domain Single Sign On

WebNow Single Sign-On Solutions

SAML Single-Sign-On (SSO)

Web Services Security: What s Required To Secure A Service-Oriented Architecture. An Oracle White Paper January 2008

Assertions and Protocol for the OASIS Security Assertion Markup Language (SAML) V1.1

Cloud Computing. Chapter 5 Identity as a Service (IDaaS)

Identity Assurance Hub Service SAML 2.0 Profile v1.2a

Introduction to SAML

Single Sign On for Google Apps with NetScaler. Deployment Guide

TIB 2.0 Administration Functions Overview

Profiles for the OASIS Security Assertion Markup Language (SAML) V2.0

SAML (Security Assertion Markup Language) Security Model for RESTful Web Services

IBM Tivoli Federated Identity Manager V6.2.2 Implementation. Version: Demo. Page <<1/10>>

Single Sign On (SSO) Implementation Manual. For Connect 5 & MyConnect Sites

OIO SAML Profile for Identity Tokens

Step-by-Step guide for SSO from MS Sharepoint 2010 to SAP EP 7.0x

Get Success in Passing Your Certification Exam at first attempt!

Lecture Notes for Advanced Web Security 2015

White Paper. Authentication and Access Control - The Cornerstone of Information Security. Vinay Purohit September Trianz 2008 White Paper Page 1

Enabling Federation and Web-Single Sign-On in Heterogeneous Landscapes with the Identity Provider and Security Token Service Supplied by SAP NetWeaver

Flexible Identity Federation

Authentication and Authorization Systems in Cloud Environments

OIO Web SSO Profile V2.0.5

Microsoft Office 365 Using SAML Integration Guide

JVA-122. Secure Java Web Development

PaperCut Payment Gateway Module - RBS WorldPay Quick Start Guide

INTEGRATE SALESFORCE.COM SINGLE SIGN-ON WITH THIRD-PARTY SINGLE SIGN-ON USING SENTRY A GUIDE TO SUCCESSFUL USE CASE

Transcription:

SAML Security Assertion Markup Language Dennis Kafura Draws heavily on: SAML basics: A technical introduction to the Security Assertion Markup Language, Eve Maler, Sun Microsystems 1

SAML in Context SAML (security assertions) assertions: syntax/semantics of XML-encoded assertion messages protocol: request/response protocols binding: to standard transport/message frameworks profiles: combining elements to support defined use cases SAML Assertion XML digital signature XML encryption XKMS (key management) XACML (access control) WS-Security (web services) ebxml (e-commerce) SAML Assertion Picture from: Secure Web Services, Sang Shin 2

Usage Scenarios Single Sign-On Distributed Transaction Authorization Service Pictures from: Secure Web Services, Sang Shin 3

SAML Domain Model From: Assertions and Protocol for the OASIS Security Assertion Markup Language, 31 May 2002 4

SAML Assertions Assertions are declarations of fact, according to someone SAML assertions are compounds of one or more of three kinds of statement about subject (human or program): authentication attribute authorization decision You can extend SAML to make your own kinds of assertions and statements Assertions can be digitally signed 5

Common Elements Issuer ID and issuance timestamp Assertion ID Subject Name plus the security domain Optional subject confirmation, e.g. public key Conditions under which assertion is valid SAML clients must reject assertions containing unsupported conditions Special kind of condition: assertion validity period Additional advice E.g., to explain how the assertion was made 6

Assertion Structure 7

Example <saml:assertion MajorVersion= 1 MinorVersion= 0 AssertionID= 128.9.167.32.12345678 Issuer= Smith Corporation IssueInstant= 2001-12-03T10:02:00Z > <saml:conditions NotBefore= 2001-12-03T10:00:00Z NotOnOrAfter= 2001-12-03T10:05:00Z > <saml:audiencerestrictioncondition> <saml:audience> URI </saml:audience> </saml:audiencerestrictioncondition> </saml:conditions> <saml:advice> a variety of elements can go here </saml:advice> statements go here </saml:assertion> 8

Authentication Assertion An issuing authority asserts that subject S was authenticated by means M at time T Targeted towards SSO uses Caution: Actually checking or revoking of credentials is not in scope for SAML! It merely lets you link back to acts of authentication that took place previously 9

Authentication Structure 10

Authentication Example <saml:assertion > <saml:authenticationstatement AuthenticationMethod= password AuthenticationInstant= 2001-12-03T10:02:00Z > <saml:subject> <saml:nameidentifier SecurityDomain= smithco.com Name= joeuser /> <saml:confirmationmethod> http:// core-25/sender-vouches </saml:confirmationmethod> </saml:subject> </saml:authenticationstatement> </saml:assertion> 11

Attribute statement An issuing authority asserts that subject S is associated with attributes A, B, with values a, b, c Useful for distributed transactions and authorization services Typically this would be gotten from an LDAP repository john.doe in example.com is associated with attribute Department with value Human Resources 12

Attribute statement structure 13

Example assertion with attribute statement <saml:assertion > <saml:attributestatement> <saml:subject> </saml:subject> <saml:attribute AttributeName= PaidStatus AttributeNamespace= http://smithco.com > <saml:attributevalue> PaidUp </saml:attributevalue> </saml:attribute> <saml:attribute AttributeName= CreditLimit AttributeNamespace= http://smithco.com > <saml:attributevalue> <my:amount currency= USD >500.00 </my:amount> </saml:attributevalue> </saml:attribute> </saml:attributestatement> </saml:assertion> 14

Authorization decision statement An issuing authority decides whether to grant the request by subject S for access type A to resource R given evidence E Useful for distributed transactions and authorization services The subject could be a human or a program The resource could be a web page or a web service, for example 15

Authorization decision statement structure 16

Example assertion with authorization decision statement <saml:assertion > <saml:authorizationstatement Decision= Permit Resource= http://jonesco.com/rpt_12345.htm > <saml:subject> </saml:subject> <saml:actions ActionNamespace= http:// core-25/rwedc > <saml:action>read</saml:action> </saml:actions> </saml:authorizationstatement> </saml:assertion> 17

Security Analysis SAML Single Sign-On 1. Contact the source site 2. Initiate the Redirect to the Destination Site 3. Redirect to the Destination Site 4. SAML Request 5. SAML Response 6. Response to the Browser From:Thomas GroB: Security Analysis of the SAML Single Sign-On Browser/Artifact Profile 18

Three Attacks Connection hijacking / replay attack aimed at breaking step 3 using connection hijacking Man-in-the-middle attacks aimed at breaking step 1 using DNS spoofing HTTP Referrer Attack aimed at interrupting the connection between the destination and source sites to cause leakage of unused SAML artifacts 19

TCP Connection Hijacking 1. Spoofing the IP address of the packets, to make them appear as though they have originated from the hijacked connection. 2. Guessing the initial sequence number that the server will send to the client to set up the connection. 3. Making sure the spoofed client doesn't respond (e.g., with a FIN packet) to the server. The first and third steps are relatively easy (although there are some defenses against the first, which we will discuss later). The hard (or, in some cases not-so-hard) part is guessing the initial sequence number (ISN) that the server returns to the spoofed IP address. How does one do this? The attacker could make a few legitimate TCP connections to the server himself, notice the pattern by which the ISN increments, and make an educated guess about the ISN that the server returned (from Nick Feamster/MIT) 20