ICON UK 2014 - Look mum, no passwords!

Post on 18-Dec-2014

243 views 0 download

description

When using Notes, iNotes, Sametime and Connections on either Windows or a mobile device, users are confronted with several different passwords and settings they have to enter. In this session I will show you how to setup and configure Notes & Domino so that users do not have to enter passwords or server settings and still get logged into Notes, Sametime and Connections when starting their Notes Client or Browser.Buzzwords for this talk are: SSO, NSL, LTPA, SAML and SPNEGO.

Transcript of ICON UK 2014 - Look mum, no passwords!

© 2014 IBM Corporation

Look mum, no passwords!ID Vault, SSO, LTPA, SPNEGO and SAML

Martin Leyrer – IT SpecialistIBM Software Services for Collaboration2014-09-12 at ICON UK

© 2014 IBM Corporation2 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Navigation

● The What And Why

● The Quick Win● ID Vault● Automatic Client Configuration● Token Based Single Sign On for Sametime And Connections● SPNEGO For iNotes And Webapps

● Expanding The Possibilities – SAML

● Q & A

© 2014 IBM Corporation3 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

What?

© 2014 IBM Corporation4 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Why (1/2) ?

© 2014 IBM Corporation5 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Why (2/2) ?

© 2014 IBM Corporation6 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Navigation

● The What And Why

● The Quick Win● Notes Shared Login / ID Vault● Automatic Client Configuration● SPNEGO For iNotes And Webapps

● Expanding The Possibilities – SAML

● Q & A

© 2014 IBM Corporation7 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Remove Notes Password Prompts with NSL – Notes Shared Login

● Enabled via policy (or manually by the end user)

● Locks and encrypts the Notes ID in the current Windows Profile using the PC SID (Security Identifier) and Microsoft's Data Protection API (DPAPI).

● Certificates within the ID are locked and bound to that PC and that OS profile.

● The old “Notes Single Logon” feature has to be uninstalled.

● Limited to Windows.

● Need ID Vault

● Need Notes/Domino 8.5

© 2014 IBM Corporation8 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Uninstall/Remove “Notes Single Logon” for NSL To Work

© 2014 IBM Corporation9 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault

● Optional

● Server-based database

● Holds protected copies of IBM Notes user Ids

● Users are assigned to a vault through policy configuration

● Copies of user IDs are uploaded to a vault automatically once the policy has taken effect

The benefits of using an ID vault include:● Authorized personnel can change (reset) passwords on IDs without access to the ID files or

the vault

● Custom application to reset passwords

● Easy recovery of lost or damaged user IDs

● Automatic synchronization of multiple ID copies

● No user involvement during ID renames

● No user involvement during ID key rollover

© 2014 IBM Corporation10 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 1

© 2014 IBM Corporation11 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 2

© 2014 IBM Corporation12 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 3

© 2014 IBM Corporation13 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 4

© 2014 IBM Corporation14 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 5

© 2014 IBM Corporation15 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 6

© 2014 IBM Corporation16 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 7

© 2014 IBM Corporation17 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 8

© 2014 IBM Corporation18 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault Setup 9

© 2014 IBM Corporation19 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault - Security Settings Document / Policy

© 2014 IBM Corporation20 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

NSL - Security Settings Document / Policy

© 2014 IBM Corporation21 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

AND IT WORKS !

We have Single Sign On with Windows!

© 2014 IBM Corporation22 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ID Vault – If It Does NOT Work

● Check whether the policies are actually coming down to the client● Check Policy Synopsis for that user in the Admin Client● Check the “($Policies)” view in the PNAB● Modify the person entry in the Domino Directory & access mail server to initiate a policy

push

● Roaming user? Did you remove the ID file from the PNAB?● https://ibm.biz/BdFnm9● 8.5.3 provides a new detachid.zip utility and “javaAgentForDetachid.java” (in

utility\NotesCustomizationKit_1_0.zip● RoamingIDIsInNAB=0 in the person document

© 2014 IBM Corporation23 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Navigation

● The What And Why

● The Quick Win● Notes Shared Login / ID Vault● Automatic Client Configuration● Token Based Single Sign On for Sametime And Connections● SPNEGO For iNotes And Webapps

● Expanding The Possibilities – SAML

● Q & A

© 2014 IBM Corporation24 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Smooth Client Start

© 2014 IBM Corporation25 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

ConfigFile To The Rescue

● It IS possible to install and configure the Notes Client completely WITHOUT user interaction* ● See https://ibm.biz/BdFnmd for details

● The notes.ini parameter, ConfigFile= points to a text (.TXT) file that contains the parameters that the wizard needs. For example:

ConfigFile=C:\Program Files\Lotus\Notes\Data\setup.txt

● Starting with 8.5.1 the parameter CONFIGFILE= can contain system environment variables, too. In case the setup configuration file is stored next to the template notes.ini the following setting would apply to all Windows flavors:

CONFIGFILE=%ALLUSERSPROFILE%\Application Data\Lotus\Notes\Data\config.txt

which resolves to...

CONFIGFILE=C:\Documents and Settings\All Users\Application Data\Lotus\Notes\Data\config.txt

* … except from the one time password prompt for the ID Vault

© 2014 IBM Corporation26 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Setup.txt

Username=User Name/Acme

KeyfileName=c:\Program Files\Lotus\Notes\Data\username.id ID Vault!

Domino.Name=servername/Acme

Domino.Address=servername.acme.com

Domino.Port=TCPIP

Domino.Server=1

AdditionalServices=0

AdditionalServices.NetworkDial=0

Replication.Threshold=9999

Replication.Schedule=0

Starting with 8.5 the scripted setup code can now resolve system environment variables on any line of the configuration file that is read in.

See the chapter “Setting up Notes installation using scriptable setup” in the Domino 9 Admin help for more details and variables.

© 2014 IBM Corporation27 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

No More Useless Prompts!

© 2014 IBM Corporation28 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Navigation

● The What And Why

● The Quick Win● Notes Shared Login / ID Vault● Automatic Client Configuration● Token Based Single Sign On for Sametime And Connections● SPNEGO For iNotes And Webapps

● Expanding The Possibilities – SAML

● Q & A

© 2014 IBM Corporation29 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Token Based Single Sign On for Sametime And Connections

● Works for Sametime Connect Embedded Client

● Works for Connections Plugins

● Prerequisite: Properly configured “Multiple Server SSO”

© 2014 IBM Corporation30 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

LTPA Token

● The LTPA token is sent to the User Agent (Browser) as a Set-Cookie response header

● The user agent sends this to the target HTTP server as a Cookie request header for subsequent actions.

● Because browser user agents only send Cookie request headers to servers whose host name matches the issuer of the cookie, the server must share the same DNS (“DNS domain”) space as the other LTPA servers in the SSO group.

● The LTPA token, which includes user information and an expiration time, is signed by the issuer to ensure data integrity and is encrypted to ensure data privacy.

● LTPA tokens can be used only for SSO among LTPA servers that share the same key material (LTPA key)

© 2014 IBM Corporation31 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

LTPA Versions 1/2

WebSphere Version 1 (“LtpaToken”)● Contains

● the token expiration time● the user identity (usually the LDAP distinguished name)● a digital signature

● LTPA1 signatures are generated using SHA-1/RSA 1024-bit key● After the digital signature has been attached, the user data and signature are encrypted with

a 3DES key obtained from the LTPA key file

WebSphere Version 2 (“LtpaToken2”)● Same format as LTPA1 tokens● can contain additional information relating to the security context of the authenticated user

LTPA2 signatures are generated using SHA-1/RSA 1024-bit key● After the digital signature has been attached, the user data and signature are encrypted with

a 3DES or AES key obtained from the LTPA key file

© 2014 IBM Corporation32 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

LTPA Versions 2/2

IBM Domino● Contains

● a fixed-size and value header starting field● a token creation time● a token expiration time● the authenticated user name● a message authentication code (MAC) covering all content

● Domino uses a shared key and SHA-1 to calculate a MAC over the content● After the MAC has been attached, the user data and MAC are encrypted with a 3DES key

obtained from the LTPA key file

● Domino can consume (decrypt, parse and process) and generate (create and encrypt) either the Domino or Websphere formats

● WebSphere cannot consume or generate the Domino format.

© 2014 IBM Corporation33 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

WebSSO Configuration

© 2014 IBM Corporation34 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Enable Multi Server SSO

© 2014 IBM Corporation35 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Account Documents

© 2014 IBM Corporation36 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

© 2014 IBM Corporation37 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

© 2014 IBM Corporation38 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

© 2014 IBM Corporation39 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

© 2014 IBM Corporation40 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Push Account Documents To Users via Document Settings/Policy

© 2014 IBM Corporation41 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Navigation

● The What And Why

● The Quick Win● ID Vault● Automatic Client Configuration● Token Based Single Sign On for Sametime And Connections● SPNEGO For iNotes And Webapps

● Expanding The Possibilities – SAML

● Q & A

© 2014 IBM Corporation42 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Windows Single Sign-on for Web Clients (SPNEGO)

● Available since Lotus Domino 8.5.1

● User acquires Kerberos credentials when starting Windows.● Windows verifies user's password.● Password never travels over the wire via HTTP.

● SSO technology leveraging the Windows credentials sometimes called by these names:● SPNEGO (Simple and Protected GSS-API Negotiation Mechanism)● Integrated Windows Authentication” for the Windows Intranet

● SPNEGO-aware browsers know how to● Ask Windows for a Kerberos ticket, based on a) browser configuration, and b) the user's

requested URL.● Send the Kerberos ticket as part of SPNEGO protocol request

● SPNEGO-aware Domino validates the ticket to authenticate the user.

© 2014 IBM Corporation43 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Setting Up SPNEGO

● Create a Domino Web SSO document (enable Windows single sign-on integration)

● Set up a SPN (Service Principal Name) for the Domino server in Active Directory

● Domino must run under an Active Directory account you set up for it

● Run domspnego

● Take the output and give it to your AD administrator to run setspn with

● Run setspn -a http://<dominohostname> <accountnamerunningdomino>

● Update person documents with AD name appended to FullName (and optional others like krbPrincipalName and LTPA User Name)

© 2014 IBM Corporation44 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Navigation

● The What And Why

● The Quick Win● ID Vault● Automatic Client Configuration● Token Based Single Sign On for Sametime And Connections● SPNEGO For iNotes And Webapps

● Expanding The Possibilities – SAML

● Q & A

© 2014 IBM Corporation45 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

SAML – Security Assertion Markup Language

● Provides ease of use for end users – reduce the # of passwords to memorize

● The only “Notes password” is the IdP's password● And SPNEGO/Kerberos to Microsoft's ADFS can eliminate that prompt as well● Once a user has authenticated with the IdP they won’t be asked again

● Notes client uses SAML to fetch the user's ID file from the vault● ID file is stored in memory instead of being written to disk

● Works on Citrix, Linux, and Mac as well as Windows● Requires Notes Standard client● Support for Notes, iNotes, and web clients

● Identity Providers supported

● IBM Tivoli Federated Identity Manager (TFIM)● Microsoft's ADFS 2.0 integrated with Active Directory

© 2014 IBM Corporation46 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

SAML – IdP - Identity Provider (SSO)

● ADFS (Active Directory Federation Services in Windows 2008 and Windows 2012)● SAML 2.0 only● can be combined with SPNEGO● Enhances Integrated Windows Authentication (IWA)

● TFIM (Tivoli Federated Identity Manager)● SAML 1.1 and 2.0

● IdP (Identity Providers) use HTTP or SOAP to communicate to SP (Service Providers) via XML based assertions

● Assertions have three roles● Authentication● Authorisation● Retrieving Attributes

© 2014 IBM Corporation47 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Notes Federated Login with SAML

1) User launches Notes and Notes connects to the ID Vault

2) The ID Vault (configured for SAML

authentication) reaches out to IdP.

3) IdP prompts user for credentials.

4) Correct credentials are supplied.

5) IdP provides SAML artifact(XML) to ID Vault.

6) ID Vault provides ID to Notes. Once Notes session is completed, ID is removed from machine.

© 2014 IBM Corporation48 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

SAML – Installation

● Warning! - This is hard!● One of the most complex Domino based things I have seen so far.

● Find help with comprehensive knowledge of:● Domino server admin● Notes client configuration and security● Active Directory configuration at your company● ADFS● SAML concepts● SSL configuration on Domino & in Windows/IIS● Enterprise browser configuration

● It's worth the effort, especially in the long run.

● Read the Connect 2014 presentation “SHOW100 : AD + SAML + Kerberos + IBM Notes and Domino = SSO!” by Rob Axelrod and Andy Pedisich, Technoticshttps://ibm.biz/BdFnyF

© 2014 IBM Corporation49 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

NSL/SPNEGO vs. SAML

NSL/SPNEGO

● SPNEGO requires Windows Environment● Active Directory● Windows Domain Login● Microsoft Supported browsers● Domino on Windows

● Requires Windows clients for the users● Citrix not supported● Requires Domino on Windows● It has a very specific use case

SAML

● Not everything supports it● Traveler doesn’t● Sametime doesn’t● Citrix does!

● ID Vault is a requirement so IDs that can’t be vaulted can’t be used (multiple passwords, smartcards, etc)

● Complex to set up

© 2014 IBM Corporation50 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Navigation

● The What And Why

● The Quick Win● ID Vault● Automatic Client Configuration● Token Based Single Sign On for Sametime And Connections● SPNEGO For iNotes And Webapps

● Expanding The Possibilities – SAML

● Q & A

© 2014 IBM Corporation51 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Q & A

Martin LeyrerIBM Collaboration Solutions IT-Specialist with IBM Austria

IBM e-mail: martin.leyrer@at.ibm.com

E-mail: leyrer@gmail.com

Twitter: http://www.twitter.com/leyrer

Facebook: https://www.facebook.com/leyrer

Blog: http://www.leyon.at

LinkedIn: http://at.linkedin.com/in/leyrer

Martin LeyrerICS IT-Specialist

Mail: martin.leyrer@at.ibm.comPhone: +43 664 618 6826

Martin LeyrerICS IT-Specialist

Mail: martin.leyrer@at.ibm.comPhone: +43 664 618 6826

© 2014 IBM Corporation52 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration

Further Reading

“Upgrading from Notes client single logon to Notes shared login” by Nancy E. Kho

https://ibm.biz/BdFnM6

“Single Sign-on (SSO) technologies for the Domino Web Server” by Jane Marcus

https://ibm.biz/BdFnyT

“Connect 2014 SHOW100 : AD + SAML + Kerberos + IBM Notes and Domino = SSO!” by Rob Axelrod and Andy Pedisich, Technotics

https://ibm.biz/BdFnyF

“Simplifying The S's: Single Sign-On, SPNEGO and SAML” by Gabriella Davis

https://ibm.biz/BdFnfq

© 2014 IBM Corporation53 Martin.Leyrer@at.ibm.com, IBM Software Services for Collaboration