cis14: implementing mitreid

39
The story of MITREid Jus3n Richer The MITRE Corpora3on © 2014 The MITRE Corporation. All rights reserved. Approved for Public Release: Distribution Unlimited (Case Number: 14-1639)

Upload: cloudidsummit

Post on 05-Dec-2014

171 views

Category:

Technology


1 download

DESCRIPTION

Justin Richer, The MITRE Corporation A report on MITRE’s MITREid platform, which allows thousands of active users to access hundreds of relying parties inside and outside the company; how and why we built MITREid and why we see the promotion of external identities as an important pattern for enterprise organizations.

TRANSCRIPT

Page 1: CIS14: Implementing MITREid

The  story  of  MITREid  

Jus3n  Richer  The  MITRE  Corpora3on  

© 2014 The MITRE Corporation. All rights reserved. Approved for Public Release: Distribution Unlimited (Case Number: 14-1639)

Page 2: CIS14: Implementing MITREid

The  plight  of  a  so;ware  developer  •  I  build  things  that  people  use  •  I  want  to  know  who’s  there  

•  What  can  I  do?  

Page 3: CIS14: Implementing MITREid

1.  Make  local  accounts  

Page 4: CIS14: Implementing MITREid

1.  Make  local  accounts  

Page 5: CIS14: Implementing MITREid

1.  Make  local  accounts  

Page 6: CIS14: Implementing MITREid

2.  Use  LDAP  

Page 7: CIS14: Implementing MITREid

2.  Use  LDAP  

Page 8: CIS14: Implementing MITREid

3.  Use  Enterprise  SSO  

Page 9: CIS14: Implementing MITREid

3.  Use  Enterprise  SSO  

Page 10: CIS14: Implementing MITREid

3.  Use  Enterprise  SSO  

Firewall

Intranet

Internet

Page 11: CIS14: Implementing MITREid

What  to  do?  

Page 12: CIS14: Implementing MITREid

Give  people  a  digital  iden3ty  

Page 13: CIS14: Implementing MITREid

Let’s  build  something  •  OpenID  2.0  Server  •  Running  on  corporate  IT  hardware  in  corporate  IT  environment  

•  Backed  by  corporate  SSO  and  user  profile  informa3on  

•  “We  do  SSO  so  you  don’t  have  to”  

Page 14: CIS14: Implementing MITREid

Why  OpenID?  •  Open  standard  protocol  •  Network-­‐based  federa3on  •  User-­‐driven  trust  model  •  Simple  to  use  and  develop  

Page 15: CIS14: Implementing MITREid

Make  it  easy  for  developers:  PlaXorm  support  

•  Libraries:  –  Java  –  PHP  –  Python  –  Javascript  –  Ruby  –  Perl  –  …  

•  PlaXorms  &  Plugins:  –  Spring  Security  –  Elgg  –  Wordpress  –  Mediawiki  –  Omniauth  –  Drupal  –  …  

Page 16: CIS14: Implementing MITREid

Usage  Profile:  The  prototype  

Firewall

Intranet

Internet

OpenID Server SSO

 

Page 17: CIS14: Implementing MITREid

Usage  Profile:  The  external  service  

Firewall

Intranet

Internet

OpenID Server

SSO  

Page 18: CIS14: Implementing MITREid

User  Profiles:  The  mobile  user  

Firewall

Intranet

Internet

OpenID Server 2FA  

Page 19: CIS14: Implementing MITREid

The  architecture  

Firewall

User Profiles

Shared Database

Internal OP

External OP

Intranet

Internet Two-­‐Factor  Authn  Corporate  SSO  

Page 20: CIS14: Implementing MITREid

Run3me  security  decisions  

Page 21: CIS14: Implementing MITREid

Adop3on  by  the  extended  enterprise  

Page 22: CIS14: Implementing MITREid

The  Long  Tail  

1  

10  

100  

1000  

10000  

Page 23: CIS14: Implementing MITREid

We  didn’t  even  plan  this  

Page 24: CIS14: Implementing MITREid

Mul3ple  types  of  user  

Page 25: CIS14: Implementing MITREid

Moving  on  from  OpenID  2.0  

Page 26: CIS14: Implementing MITREid

Let’s  build  it  (again)!  •  OAuth  2.0  and  OpenID  Connect  server  •  OpenID  Connect  client  library  •  Enterprise-­‐friendly  features  and  plaXorm  •  Flexible  deployment  

and...  

Page 27: CIS14: Implementing MITREid

Open  Source  

Page 28: CIS14: Implementing MITREid
Page 29: CIS14: Implementing MITREid

We’re  running  it  ourselves  

Page 30: CIS14: Implementing MITREid

Building  the  specifica3ons  

Page 31: CIS14: Implementing MITREid

Moving  toward  federa3on  across  the  extended  enterprise  

Page 32: CIS14: Implementing MITREid

Beaer  security:  Separa3on  

OpenID Provider

Page 33: CIS14: Implementing MITREid

Delega3ng  services:  OAuth  

OpenID Provider

Page 34: CIS14: Implementing MITREid

Beaer  security:  Revoca3on  

Page 35: CIS14: Implementing MITREid

Easier  integra3on  by  developers  

OpenID Provider •  Standard  

•  Agile  •  Flexible  •  Distributed  

•  Proprietary  •  Fragile  •  Rigid  •  Centralized  

Page 36: CIS14: Implementing MITREid

Beaer  administra3on:    An  abstrac3on  layer  

OpenID Provider

Page 37: CIS14: Implementing MITREid

Scalable  security  decisions  Whitelist

Trusted partners, business contracts, customer organizations, trust frameworks

Graylist User-based trust decisions

Follow Trust on First Use model, keep logs

Blacklist Very bad sites we don’t want to deal with, ever

Organiza

3ons  

decide

 these   End-­‐users    

decide  these  

Page 38: CIS14: Implementing MITREid

Conclusions  •  Use  open  standards  •  Give  your  people  digital  iden33es  and  let  them  decide  where  to  use  them  

•  Use  federa3on  where  possible  

Page 39: CIS14: Implementing MITREid

Ques3ons?  

[email protected]