access management for cloud and mobile

23
2013 Open Stack Identity Summit - France Access Management for Cloud and Mobile

Upload: forgerock

Post on 28-Nov-2014

1.322 views

Category:

Technology


3 download

DESCRIPTION

Presented by Bert Van Beeck, Technical Enablement Lead, ForgeRock at ForgeRock Open Identity Stack Summit, France 2013

TRANSCRIPT

Page 1: Access Management for Cloud and Mobile

2013 Open Stack Identity Summit - France

Access Management for Cloud and Mobile

Page 2: Access Management for Cloud and Mobile

Stateful Session

Single Sign On Web

Application Fat Client Application

web gateway SP IDP

Stateless Session

Authentication Authorization Attributes

Session Store (Memory or Persisted) with option to enable Session Failover/replication

Federation

Create, Leverage & Upgrade Session Leverage session

Session Lifecycle

Management

Page 3: Access Management for Cloud and Mobile

The Good, The Bad and The Ugly

“You see, in this world there's two kinds of APIs, my friend: Those that are lightweight and those that make you dig”

Page 4: Access Management for Cloud and Mobile

On-Premise vs Cloud/Social/Mobile

SOAP XML

REST JSON

Page 5: Access Management for Cloud and Mobile

OAuth2, OpenID Connect, REST

REST Endpoints

Mobile Social Cloud Enterprise Things

OpenAM Core

HTTP(s) JSON

AuthN AuthZ Session Validation

Identity Management OAuth2 Realm

Mgmt OpenID Connect Logging

Page 6: Access Management for Cloud and Mobile

Web App

Native App

Native App

Web App

Login App

RE

ST

O

Aut

h2

Ope

nID

Con

nect

Authentication

Authorization

Attribute Delivery

Federation

SSO

Token Persistence

Session Mgmt

OAuth2 Provider

OpenAM

Cloud

Enterprise

Mobile IAM for the Modern Web

Page 7: Access Management for Cloud and Mobile

“You see, in this world there's two kinds of APIs, my friend: Those that are lightweight and those that make you dig”

Demo

Page 8: Access Management for Cloud and Mobile

2 Native apps in iPhone OAuth2 Demo •  Obtains an OAuth2 Refresh and Access Token using the

Authorization Code Grant and then stores it locally in the iPhone keyring

•  Access User Profile info with the Access Token

•  Refreshes the Access Token when it expires using the refresh token

SSO Demo •  Retrieves the Access Token from the iPhone keyring

•  Access User Profile info with the Access Token

Page 9: Access Management for Cloud and Mobile
Page 10: Access Management for Cloud and Mobile

OAuth2 •  Authorization protocol

•  Grant access to third parties

•  Parties do not share sensitive user information, i.e. no credentials are shared

•  Used to grant limited access during limited time to specific resources

•  Developed by the IETF Working group

Page 11: Access Management for Cloud and Mobile

Who is using OAuth2

Page 12: Access Management for Cloud and Mobile

OAuth2 Tokens ACCESS Token

•  Used to access a protected resource

•  Obtained through one of the grant flow

•  Life time short (minutes, hours

REFRESH Token

•  Used to obtain a new access token

•  Obtained through one of the grant flows

•  Life time long (days, weeks, months)

Page 13: Access Management for Cloud and Mobile

Possible flow

Client Provider

Protected Resource

1

2

3

4

5

6

7

retrieve refresh token

retrieve access token

leveraging access token

Page 14: Access Management for Cloud and Mobile

Resource Owner Password Flow

Client

Provider

<< 1

2

3

Protected Resource

4

retrieve access token

application provides userid/password credentials

leveraging access token

Page 15: Access Management for Cloud and Mobile

Presenter’s Logo Here

Supported grants Use Case: For Web Applications §  Authorization Code Flow Grant

§  Implicit Flow Grant

Use Case: For Mobile Applications §  Resource Owner Password

Use Case: For Application to Application §  Client Credentials Flow

§  SAMLv2 Token Insertion

Use Case : Implicit flow Grant

Page 16: Access Management for Cloud and Mobile

Cheat sheet http://www.cheatography.com/kayalshri/cheat-sheets/oauth-end-points/

Page 17: Access Management for Cloud and Mobile
Page 18: Access Management for Cloud and Mobile

What is it not •  OpenID Connect is not OpenID

•  OpenID is old social protocol, without a mandatory contract between client and provider

•  OpenID is unsecure

Page 19: Access Management for Cloud and Mobile

What is OAUTH2 again ? •  OAuth2 is an AUTHORIZATION protocol

•  Access/Refresh token represents access to resource for anybody who has that token

•  There is not system in place to restrict resource usage to a user identity

Page 20: Access Management for Cloud and Mobile

OpenID Connect •  OpenID Connect uses TWO access/refresh tokens

•  One to authorize the resource (see OAUTH2 before) •  One to authorize the user identity accessing that resource

•  OpenID Connect maintains the relationship between the resource and the user

•  User can only access the resource with its access token provided the user access token is entitled to it

Protected Resource OAUTH2

Access Token

User identity OAUTH2

Access Token

Page 21: Access Management for Cloud and Mobile

2013 Open Stack Identity Summit - France

Coming from a different angle

Page 22: Access Management for Cloud and Mobile

OpenAM Authentication •  MSISDN

•  HOTP (Text Messages via cell phone)

•  OATH (3rd party Token generators)

Page 23: Access Management for Cloud and Mobile

Banking grade authentication

Thomas Bostrøm Jørgensen - CEO, Encap