Federated Identity Management and Web Services Security

Download (PDF, 5.48MB)

Part 1. Architecture and design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Chapter 1. Business context for identity federation . . . . . . . . . . . . . . . . . . 3
1.1 Federated identity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Business environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.1 Deconstruction of the enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 Enterprise re-aggregation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.3 High-level example of a re-aggregated business . . . . . . . . . . . . . . . . 7
1.2.4 Business models for federated identity . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.5 The relationship – Trust and assurance. . . . . . . . . . . . . . . . . . . . . . . 15
1.3 IT environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3.1 The role of identity management. . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3.2 Dealing with identities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.3.3 User life cycle management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.3.4 Inter-enterprise application to application integration . . . . . . . . . . . . 25
1.3.5 Open standards. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.4 Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Chapter 2. Architecting an identity federation . . . . . . . . . . . . . . . . . . . . . . 31
2.1 Federation example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.2 Federated identity management architecture . . . . . . . . . . . . . . . . . . . . . . 36
2.2.1 Background to federation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.2.2 Architecture overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.2.3 Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.2.4 Identity models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.2.5 Identity attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.2.6 Trust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.7 Federation protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.3 FIM standards and efforts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.3.1 SSL/TSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.3.2 Security Assertion Markup Language (SAML) . . . . . . . . . . . . . . . . . 52
2.3.3 Shibboleth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.3.4 Liberty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.3.5 WS-Federation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.3.6 WS-Trust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.3.7 WS-Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.3.8 WS-Provisioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.3.9 Selecting Federation standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.4 Federated single sign-on. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.4.1 Push and Pull SSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.4.2 Account linking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
2.4.3 Where are you from (WAYF). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.4.4 Session management and access rights . . . . . . . . . . . . . . . . . . . . . 63
2.4.5 Logout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.4.6 Credentials clean up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.4.7 Global good-bye . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.4.8 Account de-linking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
2.5 Web services security management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
2.5.1 Web services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.5.2 Web services security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.5.3 Gateways . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.6 Federated identity provisioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.7 On demand security reference architecture . . . . . . . . . . . . . . . . . . . . . . . 72
2.7.1 Policy management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2.7.2 Identity management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.7.3 Key management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.7.4 Credential exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.7.5 Identity federation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.7.6 Authorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.8 On demand integration reference architecture . . . . . . . . . . . . . . . . . . . . . 75
2.8.1 Connectivity services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.8.2 User interaction services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.8.3 Application and information assets . . . . . . . . . . . . . . . . . . . . . . . . . . 78
2.8.4 Business application services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
2.8.5 Partner services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
2.8.6 Infrastructure services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.9 Method for architecting secure solution. . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.9 Method for architecting secure solution. . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.9.1 Implementation flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.9.2 Definition phase of a federated identity management solution . . . . . 81
2.10 Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Chapter 3. Tivoli Federated Identity Manager architecture . . . . . . . . . . . . 85
3.1 Federated Identity Management functionality . . . . . . . . . . . . . . . . . . . . . . 86
3.2 Federation services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Contents v
3.2.1 Point of contact (PoC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
3.2.2 Single sign-on protocol services (SPS). . . . . . . . . . . . . . . . . . . . . . . 91
3.2.3 Trust services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
3.2.4 Key services (KESS). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
3.2.5 Identity services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
3.2.6 Authorization services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
3.2.7 Provisioning services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
3.2.8 Management Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
3.3 Federated single sign-on. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
3.3.1 Architecture overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
3.3.2 Trust in F-SSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
3.3.3 F-SSO protocol functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
3.3.4 Integrating SSO with Access Manager for e-business . . . . . . . . . . 109
3.3.5 F-SSO approaches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
3.3.6 InfoService . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
3.3.7 Specified level view of F-SSO architecture . . . . . . . . . . . . . . . . . . . 120
3.4 Web services security management . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
3.4.1 Architecture overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
3.4.2 WS-Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
3.4.3 Web services Gateway or Firewall . . . . . . . . . . . . . . . . . . . . . . . . . 126
3.4.4 WS-Trust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
3.4.5 Authorization services (AS). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
3.4.6 Web services security management architecture approach . . . . . . 128
3.5 Provisioning services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
3.5.1 Architecture overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
3.5.2 Provisioning architecture approach. . . . . . . . . . . . . . . . . . . . . . . . . 134
3.6 Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Chapter 4. Deploying Tivoli Federated Identity Manager . . . . . . . . . . . . 135
4.1 Federated SSO architecture patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
4.1.1 Architecture approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
4.1.2 Base pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
4.1.3 Plug-in pattern. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
4.1.4 Lightweight Access Manager for e-business pattern . . . . . . . . . . . 143
4.1.5 Highly available architecture patterns . . . . . . . . . . . . . . . . . . . . . . . 147
4.1.6 Multiple data center patterns. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
4.2 Federated Web services architecture patterns . . . . . . . . . . . . . . . . . . . . 151
4.2.1 Architecture approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
4.2.2 Point-to-point pattern. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
4.2.3 XML gateway pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
4.3 Integrating applications into an F-SSO environment. . . . . . . . . . . . . . . . 158
4.3.1 Attribute flow between providers . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
4.3.2 User-controlled federated life cycle management. . . . . . . . . . . . . . 161vi Federated Identity Management and Web Services Security with IBM Tivoli Security Solutions
4.3.3 Customized user-managed federation management . . . . . . . . . . . 161
4.4 Customizing F-SSO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
4.4.1 Customizing page templates. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
4.4.2 Customizing Access Manager for e-business page templates . . . . 163
4.4.3 Storing aliases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
4.5 Solution design considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
4.5.1 Exchanging metadata with your partners . . . . . . . . . . . . . . . . . . . . 164
4.5.2 Availability of IBM Access Manager for e-business policy server . . 165
4.5.3 Key management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
4.5.4 Session timeout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
4.5.5 Application logout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
4.6 Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Chapter 5. Integrating with IBM identity management offerings . . . . . . 171
5.1 IBM Tivoli Access Manager for e-business . . . . . . . . . . . . . . . . . . . . . . . 172
5.1.1 Identity provider integration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
5.1.2 Service provider integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
5.2 IBM Tivoli Identity Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
5.2.1 Identity provider integration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
5.2.2 Service provider integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
5.3 IBM Tivoli Directory Integrator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
5.3.1 Identity provider integration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
5.3.2 Service provider integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
5.4 IBM Tivoli Directory Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
5.4.1 Identity provider integration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
5.4.2 Service provider integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
5.5 IBM WebSphere Application Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
5.5.1 Integrated Solutions Console (ISC). . . . . . . . . . . . . . . . . . . . . . . . . 179
Part 2. Customer environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Chapter 6. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
6.1 Use case 1 – SAML/JITP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.2 Use case 2 – WS-Federation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.3 Use case 3 – Liberty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
6.4 Use case 4 – Web services security management . . . . . . . . . . . . . . . . . 190
6.5 Conclusions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
Chapter 7. Use case 1 – SAML/JITP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
7.1 Scenario details. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
7.1.1 Contract. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
7.1.2 User experience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
7.2 Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
7.2.1 Single sign-on – SPNEGO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
7.3 Partners involved. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.3.1 BigCorp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.3.2 RBTravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.4 Interaction description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.4.1 High-level Interaction overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.4.2 Single sign-on from Windows workstation (SPNEGO) . . . . . . . . . . 203
7.4.3 Single sign-on from BigCorp to RBTravel (SAML/JITP) . . . . . . . . . 204
7.5 Configuration data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
7.5.1 IdP-related configuration data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
7.5.2 SP-related configuration data at RBTravel . . . . . . . . . . . . . . . . . . . 212
7.6 Assumptions/implementation notes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Chapter 8. Use case 2 – WS-Federation. . . . . . . . . . . . . . . . . . . . . . . . . . . 219
8.1 Scenario details. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
8.2 Contract. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
8.3 User experience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
8.3.1 Single sign-on user experience. . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
8.3.2 Sign-off user experience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
8.4 Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
8.4.1 Single sign-on – WS-Federation . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
8.5 Partners involved. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
8.5.1 BigCorp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
8.5.2 RBTelco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
8.6 Interaction description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
8.7 Configuration data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
8.7.1 Identity provider configuration at BigCorp . . . . . . . . . . . . . . . . . . . . 234
8.7.2 Service provider configuration at RBTelco . . . . . . . . . . . . . . . . . . . 239
8.8 Assumptions/implementation notes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
8.8.1 Understanding the many-to-one user identity mapping . . . . . . . . . 242
Chapter 9. Use case 3 – Liberty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
9.1 Scenario details. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
9.1.1 Contract. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
9.1.2 User experience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
9.2 Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
9.3 Partners involved. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
9.3.1 RBTelco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
9.3.2 RBTickets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
9.3.3 RBBanking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
9.4 Interaction description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
9.4.1 Liberty account federation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
9.4.2 Single sign-on to partners (Liberty) . . . . . . . . . . . . . . . . . . . . . . . . . 261viii Federated Identity Management and Web Services Security with IBM Tivoli Security Solutions
9.4.3 Single sign-off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
9.5 Configuration data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
9.5.1 Identity provider configuration at RBTelco . . . . . . . . . . . . . . . . . . . 265
9.5.2 RBTickets service provider configuration data . . . . . . . . . . . . . . . . 273
9.5.3 RBBanking service provider configuration data . . . . . . . . . . . . . . . 278
9.6 Assumptions/implementation notes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
9.6.1 InfoService integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
9.6.2 Page customizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Chapter 10. Use case 4 – Web services security management . . . . . . . . 291
10.1 Scenario details. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
10.1.1 Contract. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
10.1.2 User experience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
10.2 Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
10.2.1 Web services security management at RBTelco . . . . . . . . . . . . . 302
10.2.2 Web services security management at RBStocks . . . . . . . . . . . . 302
10.3 Partners involved. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
10.3.1 RBTelco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
10.3.2 RBStocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
10.4 Interaction description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
10.4.1 Web services security management Token Generator with Access
Manager binary security token callback handler. . . . . . . . . . . . . . . 305
10.4.2 Web services security management Token Consumer with Access
Manager Credential login module. . . . . . . . . . . . . . . . . . . . . . . . . . 307
10.4.3 Web services security management Token Generator with Web
services security management Callback handler . . . . . . . . . . . . . . 307
10.4.4 Web services security management Token Consumer with SAML
Assertion login module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
10.5 Configuration data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.5.1 Overall architecture and prerequisites . . . . . . . . . . . . . . . . . . . . . 319
10.5.2 RBTelco configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
10.5.3 Outbound Web services gateway configuration . . . . . . . . . . . . . . 336
10.5.4 RBStocks configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
10.6 Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
10.6.1 Using the logs for Web services security management . . . . . . . . 357
10.6.2 Using the logs for the Secure Token Service . . . . . . . . . . . . . . . . 358
10.6.3 Using the WebSphere logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
10.6.4 Using TCPMON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Part 3. Appendixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
Appendix A. Configuring Access Manager WebSEAL and Web plug-in 363
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
Identity provider integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 Contents ix
Configuring WebSEAL as an identity provider . . . . . . . . . . . . . . . . . . . . . . . . 366
Updating WebSEAL configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Configuring a junction to Tivoli Federated Identity Manager. . . . . . . . . . . 367
Configuring extended attributes for credentials in WebSEAL . . . . . . . . . . 367
Configuring Web plug-ins as an identity provider. . . . . . . . . . . . . . . . . . . . . . 368
Updating Web plug-in configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . 368
Configuring extended attributes for credentials in Web plug-ins. . . . . . . . 369
Service provider integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
External Authentication Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
Trigger URIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
EAI headers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
External Authentication Interface example . . . . . . . . . . . . . . . . . . . . . . . . 371
EAI header variables reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Configuring WebSEAL as a service provider . . . . . . . . . . . . . . . . . . . . . . . . . 374
Updating WebSEAL configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
Configuring a junction to Tivoli Federated Identity Manager. . . . . . . . . . . 376
Access Manager policy for trigger URLs for EAI. . . . . . . . . . . . . . . . . . . . 376
Sending extended attributes as HTTP headers with WebSEAL . . . . . . . . 377
Configuring Web plug-ins as a service provider. . . . . . . . . . . . . . . . . . . . . . . 377
Updating Web plug-in configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Access Manager policy for trigger URLs. . . . . . . . . . . . . . . . . . . . . . . . . . 380
Sending extended attributes as HTTP headers with Web plug-ins. . . . . . 380
Appendix B. Identity mapping rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Authoring identity mapping rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
STSUniversalUser schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Mapping between STSUniversalUser and native tokens . . . . . . . . . . . . . . . . 384
Tivoli Access Manager credential . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
SAML 1.0 token. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
SAML 1.1 token. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
Liberty 1.1 token . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
Liberty 1.2 token . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
UsernameToken token . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Calling Java code from mapping rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Learning how to call Java from XSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Distributing Java code. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Developer tricks for mapping rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Working with Access Manager credentials . . . . . . . . . . . . . . . . . . . . . . . . 400
Testing XSL rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Scenario mapping rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Use case 1 mapping rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
BigCorp mapping for use case 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
RBTravel mapping for use case 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405x Federated Identity Management and Web Services Security with IBM Tivoli Security Solutions
Use case 2 mapping rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
BigCorp mapping for use case 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
RBTelco mapping for use case 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Use case 3 mapping rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
RBTelco mapping for use case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
RBBanking mapping for use case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
RBTickets mapping for use case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Use case 4 mapping rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
RBTelco mapping for use case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
RBStocks mapping for use case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Appendix C. Keys and certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
Keys and certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
Required keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
Keystore layout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
Keystores for BigCorp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Keystores for RBTravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Keystores for RBTelco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
Keystores for RBBanking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
Keystores for RBTickets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Keystores for RBStocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Importing keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Appendix D. WS-Security deployment descriptors . . . . . . . . . . . . . . . . . 437
Web services client at RBTelco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
RBTelco client extension configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
RBTelco client binding configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Web services gateway at RBTelco. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
RBTelco WSGW server configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
RBTelco WSGW server extension configuration . . . . . . . . . . . . . . . . . . . 440
RBTelco WSGW server binding configuration . . . . . . . . . . . . . . . . . . . . . 441
RBTelco WSGW client configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
RBTelco WSGW client extension configuration . . . . . . . . . . . . . . . . . . . . 442
RBTelco WSGW client binding configuration . . . . . . . . . . . . . . . . . . . . . . 443
Web services server RBStocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
RBStocks server extension configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
RBStocks server binding configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
IBM Federated Identity Manager manuals . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
Other publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 Contents xi
Online resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
How to get IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
Help from IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472

Leave a Reply

Your email address will not be published. Required fields are marked *