Admin
Admin
5
Administration Guide
April 2019
Legal Notice
For information about legal notices, trademarks, disclaimers, warranties, export and other use restrictions, U.S.
Government rights, patent policy, and FIPS compliance, see https://www.microfocus.com/about/legal/.
2
Contents
Contents 3
2.4.2 Configuring a Public Protected Resource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
2.4.3 Configuring Access Gateway for Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
2.4.4 Setting Up Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
2.5 Configuring Access Gateways Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
2.5.1 Prerequisites for Configuring an Access Gateways Cluster . . . . . . . . . . . . . . . . . . . . . . . . . 114
2.5.2 Designing the Membership Type for a Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
2.5.3 Configuring a Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
2.5.4 Managing Access Gateway Cluster Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
2.6 Protecting Web Resources Through Access Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
2.6.1 Configuration Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
2.6.2 WebSocket Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
2.6.3 Managing Reverse Proxies and Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
2.6.4 Configuring Web Servers of a Proxy Service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
2.6.5 Configuring Protected Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
2.6.6 Configuring HTML Rewriting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
2.6.7 Configuring Connection and Session Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
2.6.8 Protecting Multiple Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
2.7 Configuring Trusted Providers for Single Sign-On . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
2.7.1 Understanding the Trust Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
2.7.2 Configuring General Provider Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
2.7.3 Managing Trusted Providers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
2.7.4 Modifying a Trusted Provider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
2.7.5 Communication Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
2.7.6 Selecting Attributes for a Trusted Provider. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
2.7.7 Managing Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
2.7.8 Configuring an Authentication Response for a Service Provider . . . . . . . . . . . . . . . . . . . . 205
2.7.9 Routing to an External Identity Provider Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
2.7.10 Using the Intersite Transfer Service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
2.8 Configuring Single Sign-On to Specific Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
2.8.1 Configuring SSO to SharePoint Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
2.8.2 Configuring a Protected Resource for Outlook Web Access . . . . . . . . . . . . . . . . . . . . . . . . 227
2.8.3 Configuring a Protected Resource for a Novell Vibe 3.3 Server . . . . . . . . . . . . . . . . . . . . . 230
2.8.4 Protecting Kerberized Resources with Kerberos Constrained Delegation . . . . . . . . . . . . 235
2.8.5 Configuring Access to the Filr Site through Access Manager . . . . . . . . . . . . . . . . . . . . . . . 239
2.9 Configuring a Protected Identity Server Through Access Gateways . . . . . . . . . . . . . . . . . . . . . . . . . 239
2.10 Managing Access to User Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
2.10.1 Logging in to the Default User Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
2.10.2 Logging in with the Legacy Customized Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
2.10.3 Logging in to the User Portal from a Web Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
2.10.4 Managing Authentication Cards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
2.10.5 Specifying a Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
2.10.6 Blocking Access to the User Portal Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
2.10.7 Blocking Access to the WSDL Services Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
2.11 Sample Configuration for Protecting an Application Through Access Manager. . . . . . . . . . . . . . . . 251
2.11.1 Installation Overview and Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
2.11.2 Setting Up the Web Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
2.11.3 Configuring Public Access to Digital Airlines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
2.11.4 Implementing Access Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
4 Contents
3.1.3 Customizing Identity Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
3.1.4 Configuring the Custom Response Header for an Identity Server Cluster . . . . . . . . . . . . . 318
3.2 Access Gateway Server Advance Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
3.2.1 Configuration Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
3.2.2 Saving, Applying, or Canceling Configuration Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
3.2.3 Managing Access Gateways Settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
3.2.4 Managing General Details of Access Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
3.2.5 Setting Up a Tunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
3.2.6 Setting the Date and Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
3.2.7 Configuring Network Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
3.2.8 Enabling Access Gateway to Display Post-Authentication Message. . . . . . . . . . . . . . . . . . 341
3.2.9 Customizing Access Gateway. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
3.3 Access Gateway Content Settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
3.3.1 Configuring Cache Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
3.3.2 Controlling Browser Caching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
3.3.3 Configuring a Pin List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
3.3.4 Configuring a Purge List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
3.3.5 Purging Cached Content. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
3.3.6 Apache htcacheclean Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
3.4 Access Gateway Advanced Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
3.4.1 Configuring Global Advanced Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
3.4.2 Configuring Advanced Options for a Domain-Based and Path-Based Multi-Homing
Proxy Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
3.5 Cookie Mangling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
3.6 URL Attribute Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
3.7 Analytics Server Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
3.7.1 Managing Analytics Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
3.7.2 Managing General Details of Analytics Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
3.7.3 Managing Details of a Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
3.7.4 Configuring Analytics Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
3.7.5 Importing Analytics Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
3.8 Email Server Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
3.9 Configuration Files Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
3.9.1 Modifying web.xml. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
3.9.2 Modifying server.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Contents 5
4.2.3 Configuring User Identification Methods for Federation . . . . . . . . . . . . . . . . . . . . . . . . . . 493
4.2.4 Configuring SAML 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501
4.2.5 Configuring SAML 1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
4.2.6 Configuring Liberty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
4.2.7 Configuring Liberty Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554
4.2.8 Configuring WS Federation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574
4.2.9 Configuring WS-Trust Security Token Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603
4.2.10 Understanding How Access Manager Uses OAuth and OpenID Connect . . . . . . . . . . . . . 627
4.2.11 Configuring Authentication Through Federation for Specific Providers. . . . . . . . . . . . . . .666
4.2.12 Integrating Amazon Web Services with Access Manager . . . . . . . . . . . . . . . . . . . . . . . . . . 670
4.2.13 Configuring Single Sign-On for Office 365 Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674
4.3 Advanced Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703
4.3.1 Two-Factor Authentication Using Time-Based One-Time Password . . . . . . . . . . . . . . . . . 703
4.3.2 RADIUS Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706
4.3.3 NetIQ Advanced Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707
4.4 Social Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714
4.4.1 Why and When to Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715
4.4.2 Prerequisites for Social Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
4.4.3 Configuring the Social Authentication Class. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
4.4.4 Adding Images for Social Authentication Providers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .718
4.4.5 Changing Social Authentication Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719
4.4.6 Configuring Supported Social Authentication Providers for API Keys and API Secrets . . . 719
4.5 Risk-based Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722
4.5.1 How Risk-based Authentication Works. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724
4.5.2 Why Risk-based Authentication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726
4.5.3 Features of Risk-based Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727
4.5.4 Key Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733
4.5.5 Understanding Risk-based Authentication through Scenarios . . . . . . . . . . . . . . . . . . . . . . 734
4.5.6 Understanding Risk Score Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744
4.5.7 Configuring Risk-based Authentication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746
4.5.8 Enabling Auditing for Risk-Based Authentication Events. . . . . . . . . . . . . . . . . . . . . . . . . . . 746
4.5.9 Configuring an External Database to Store User History. . . . . . . . . . . . . . . . . . . . . . . . . . . 746
4.5.10 Enabling Logging for Risk-Based Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749
4.5.11 Troubleshooting Risk Rule Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .749
6 Contents
6.1.5 Troubleshooting Automatic Hybrid Azure AD Join. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775
6.2 Azure AD Join for Windows Devices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775
6.2.1 Prerequisites for Azure AD Join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775
6.2.2 Configuring Azure AD Join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775
6.3 Azure Active Directory Conditional Access with Access Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . 776
6.4 Registering Devices to Microsoft Intune Mobile Device Management. . . . . . . . . . . . . . . . . . . . . . .779
7 Appmarks 781
7.1 Creating an Appmark. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 782
7.2 Creating Multiple Appmarks for an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 782
7.3 Understanding Appmarks Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 782
7.4 Managing Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784
Contents 7
10.3.3 Sample Access Gateway Authorization Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 856
10.3.4 Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 862
10.3.5 Importing and Exporting Authorization Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893
10.4 Identity Injection Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893
10.4.1 Designing an Identity Injection Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894
10.4.2 Configuring an Identity Injection Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896
10.4.3 Configuring an Authentication Header Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897
10.4.4 Configuring a Custom Header Policy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902
10.4.5 Configuring a Custom Header with Tags. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904
10.4.6 Specifying a Query String for Injection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907
10.4.7 Injecting into the Cookie Header. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909
10.4.8 Configuring an Inject Kerberos Ticket Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
10.4.9 Configuring an OAuth Token Inject Policy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .913
10.4.10 Importing and Exporting Identity Injection Policies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .914
10.4.11 Sample Identity Injection Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914
10.5 Form Fill Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916
10.5.1 Understanding an HTML Form. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916
10.5.2 Creating a Form Fill Policy for the Sample Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919
10.5.3 Implementing Form Fill Policies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921
10.5.4 Creating and Managing Shared Secrets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938
10.5.5 Importing and Exporting Form Fill Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940
10.5.6 Configuring a Form Fill Policy for Forms With Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 941
10.6 External Attribute Source Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946
10.6.1 Enabling External Attributes Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946
10.6.2 Creating an External Attribute Source Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946
10.6.3 External Attribute Source Policy Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947
10.7 Risk-based Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950
10.7.1 Configuring Risk-based Authentication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950
10.7.2 Configuring User History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 961
10.7.3 Configuring Geolocation Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964
10.7.4 Configuring Behavioral Analytics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964
10.7.5 Configuring NAT Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 967
10.7.6 Configuring an Authorization Policy to Protect a Resource. . . . . . . . . . . . . . . . . . . . . . . . . 967
10.7.7 Risk-Based Authentication: Sample Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968
8 Contents
Part II Security And Certificates 987
Contents 9
15.5 Importing a Signed Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1047
10 Contents
Part III Maintaining Access Manager 1093
21 Auditing 1111
21.1 Setting Up Logging Server and Console Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1112
21.2 Important Points to Consider When Using Syslog. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1116
21.2.1 Limitations of Syslog. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1116
21.2.2 Caching Audit Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1117
21.2.3 Debugging Syslog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1117
21.3 Configuring Syslog for Auditing over UDP and TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1117
Contents 11
21.3.1 Auditing using UDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1117
21.3.2 Auditing using TLS over TCP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1118
21.3.3 Configuring Administration Console as a Remote Audit Server . . . . . . . . . . . . . . . . . . . .1120
21.4 Enabling Identity Server Audit Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1121
21.5 Enabling Access Gateway Audit Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1125
22 Reporting 1127
22.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1127
22.2 Using Reporting with Sentinel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1128
22.2.1 Prerequisites for Using Access Manager Reporting Solution Pack . . . . . . . . . . . . . . . . . .1128
22.2.2 Deploying Access Manager Reporting Solution Pack. . . . . . . . . . . . . . . . . . . . . . . . . . . . .1129
22.3 Using Reporting with Analytics Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1129
22.3.1 Prerequisites for Using Reporting with Analytics Server . . . . . . . . . . . . . . . . . . . . . . . . . .1129
22.3.2 Viewing Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1130
22.4 Enabling Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1130
22.5 Generating Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1131
23 Logging 1133
23.1 Understanding the Types of Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1133
23.1.1 Component Logging for Troubleshooting Configuration or Network Problems . . . . . . .1134
23.1.2 HTTP Transaction Logging for Proxy Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1134
23.2 Understanding the Log Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1135
23.2.1 Understanding the Correlation Tags in the Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1136
23.2.2 Sample Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1138
23.3 Identity Server Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1138
23.3.1 Configuring Logging for Identity Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1138
23.3.2 Configuring Session-Based Logging. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1140
23.3.3 Capturing Stack Traces of Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1147
23.4 Access Gateway Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1148
23.4.1 Managing Access Gateway Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1149
23.4.2 Configuring Logging of HTTP Headers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1150
23.4.3 Configuring Logging of SOAP Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1151
23.4.4 Configuring Logging for a Proxy Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1151
23.5 Downloading Log Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1160
23.5.1 Linux Administration Console Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1161
23.5.2 Windows Server 2016 Administration Console Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1161
23.5.3 Linux Identity Server Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1162
23.5.4 Windows Server 2012 Identity Server Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1162
23.5.5 Linux Access Gateway Appliance and Access Gateway Service Logs . . . . . . . . . . . . . . . .1163
23.5.6 Windows Access Gateway Service Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1163
23.6 Turning on Logging for Policy Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1164
12 Contents
24.3.1 Monitoring API for Identity Server Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1189
24.3.2 Monitoring API for Access Gateway Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1195
Contents 13
28.4.1 Querying Using the Namespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1227
28.4.2 Querying Using the OID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1227
28.5 Installing and Enabling Monitoring for Access Manager Components . . . . . . . . . . . . . . . . . . . . . .1228
28.5.1 Installing and Enabling Monitoring for Access Manager on Linux . . . . . . . . . . . . . . . . . .1228
28.5.2 Installing and Enabling Monitoring for Access Manager on Windows . . . . . . . . . . . . . . .1228
29 Impersonation 1231
29.1 Prerequisites for Creating an Impersonated Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1231
29.2 Enabling Impersonation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1232
29.3 Impersonation Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1232
29.4 Implementing Impersonation in Custom Portal Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1232
29.4.1 Understanding the Specific JSP Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1233
29.4.2 Determining when to Show the Specific JSP Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1233
29.5 Audit Event for Impersonation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1235
29.6 Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1235
32 Troubleshooting 1259
32.1 Troubleshooting Administration Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1259
32.1.1 Global Troubleshooting Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1260
32.1.2 Diagnostic Configuration Export Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1264
14 Contents
32.1.3
Stopping Tomcat on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1264
32.1.4
Restoring a Failed Secondary Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1265
32.1.5
Moving the Primary Administration Console to a New Hardware . . . . . . . . . . . . . . . . . .1265
32.1.6
Converting a Secondary Administration Console into a Primary Console . . . . . . . . . . . .1266
32.1.7
Repairing the Configuration Datastore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1273
32.1.8
Session Conflicts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1274
32.1.9
Unable to Log In to Administration Console. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1274
32.1.10
(Linux) Exception Processing IdentityService_ServerPage.JSP . . . . . . . . . . . . . . . . . . . . .1275
32.1.11
Backup and Restore Fail Because of Special Characters in Passwords . . . . . . . . . . . . . . .1275
32.1.12
Unable to Install NMAS SAML Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1276
32.1.13
Incorrect Audit Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1276
32.1.14
Unable to Update Access Gateway Listening IP Address in Administration Console
Reverse Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1277
32.1.15 During Access Gateway Installation Any Error Message Should Not Display
Successful Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1278
32.1.16 Incorrect Health Is Reported on Access Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1278
32.1.17 Administration Console Does Not Refresh the Command Status Automatically . . . . . .1278
32.1.18 SSL Communication with Weak Ciphers Fails . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1278
32.1.19 Error: Tomcat did not stop in time. PID file was not removed . . . . . . . . . . . . . . . . . . . . .1279
32.1.20 (Access Manager on Cloud) Metadata Under System Setup of SAML 2 Applications
Is Displayed after a delay of 5 to 10 Seconds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1279
32.1.21 (Windows) Advanced Authentication Configuration Details Are Not Applied to a
New Node of the Identity Server Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1279
32.2 Troubleshooting Access Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1279
32.2.1 Useful Troubleshooting Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1280
32.2.2 Verifying That All Services Are Running . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1284
32.2.3 Microsoft Office Documents Do Not Open When SharePoint Is Accelerated by
Access Gateway Appliance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1286
32.2.4 Troubleshooting SSL Connection Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1287
32.2.5 Enabling Debug Mode and Core Dumps. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1287
32.2.6 Useful Troubleshooting Tools for Access Gateway Service . . . . . . . . . . . . . . . . . . . . . . . .1290
32.2.7 Solving Apache Restart Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1291
32.2.8 Understanding the Authentication Process of Access Gateway Service . . . . . . . . . . . . .1294
32.2.9 Issue While Accelerating the Ajax Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1300
32.2.10 Accessing Lotus-iNotes through Access Gateway Asks for Authentication . . . . . . . . . . .1300
32.2.11 Configuration Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1300
32.2.12 The Embedded Service Provider Does not Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1301
32.2.13 Cannot Inject a Photo into HTTP Headers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1301
32.2.14 Reimporting Access Gateway Takes the IP Address of the Old Administration
Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1301
32.2.15 Reimporting Access Gateway Service Fails on Windows 2012 R2 Server . . . . . . . . . . . .1301
32.2.16 Access Gateway Caching Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1302
32.2.17 Issues while Changing the Management IP Address in Access Gateway Appliance . . . .1302
32.2.18 Issue While Adding Access Gateway in a Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1303
32.2.19 Access Gateway Fails to Start After Upgrading SLES 11 SP3 to SLES 12 . . . . . . . . . . . . . .1304
32.3 Troubleshooting Identity Server and Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1304
32.3.1 Useful Networking Tools for Linux Identity Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1306
32.3.2 Troubleshooting 100101043 and 100101044 Liberty Metadata Load Errors . . . . . . . . .1306
32.3.3 Authentication Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1314
32.3.4 Problems Reading Keystores after Identity Server Re-installation . . . . . . . . . . . . . . . . . .1318
32.3.5 After Setting Up the User Store to Use SecretStore, Users Report 500 Errors . . . . . . . .1318
32.3.6 When Multiple Browser Logout Option Is Enabled, User Is Not Getting Logged Out
from Different Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1318
32.3.7 After Consuming a SAML Response, the Browser Is Redirected to an Incorrect URL . . .1318
Contents 15
32.3.8
Configuring SAML 1.1 Identity Provider Without Specifying Port in the Login URL
Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1318
32.3.9 Attributes Are Not Available Through Form Fill When OIOSAML Is Enabled. . . . . . . . . .1319
32.3.10 Issue in Importing Metadata While Configuring Identity Provider or Service
Provider Using Metadata URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1319
32.3.11 Enabling Secure or HTTPOnly Flags for Cluster Cookies . . . . . . . . . . . . . . . . . . . . . . . . . .1319
32.3.12 Apache Portable Runtime Native Library Does Not Get Loaded in Tomcat . . . . . . . . . . .1320
32.3.13 Metadata Mentions Triple Des As Encryption Method . . . . . . . . . . . . . . . . . . . . . . . . . .1322
32.3.14 Issue in Accessing Protected Resources with External Identity Provider When Both
Providers Use Same Cookie Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1322
32.3.15 SAML Intersite Transfer URL Setup Does Not Work for Non-brokered Setups after
Enabling SP Brokering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1322
32.3.16 Orphaned Identity Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1322
32.3.17 Users Cannot Log In to Identity Server When They Access Protected Resources
with Any Contract Assigned . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1323
32.3.18 An Attribute Query from OIOSAML.SP Java Service Provider Fails with Null Pointer . . .1323
32.3.19 Disabling the Certificate Revocation List Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1324
32.3.20 Step Up Authentication for Identity Server Initiated SSO to External Provider Does
Not Work Unless It has a Matching Local Contract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1324
32.3.21 Metadata Cannot be Retrieved from the URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1324
32.3.22 Authentication Request to a Service Provider Fails . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1324
32.3.23 SAML 2.0 POST Compression Failure Does Not Throw a Specific Error Code . . . . . . . . .1324
32.3.24 SAML 1.1 Service Provider Re-requests for Authentication . . . . . . . . . . . . . . . . . . . . . . .1325
32.3.25 Issue in Generating WS-Federation Claim for SharePoint 2010 On Windows . . . . . . . . .1325
32.3.26 Identity Server Statistics Logs Do Not Get Written In Less Than One Minute . . . . . . . . .1325
32.3.27 No Error Message Is Written in the Log File When an Expired Certificate Is Used for
the X509 Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1326
32.3.28 Terminating an Existing Authenticated User from Identity Server . . . . . . . . . . . . . . . . . .1326
32.3.29 Clustered Nodes Looping Due to JGroup Issues. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1327
32.3.30 Authentication With Aliases Fails . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1327
32.3.31 nidp/app Does Not Redirect to nidp/portal after Authentication . . . . . . . . . . . . . . . . . .1328
32.3.32 Login to Office 365 Fails when WS-Trust MEX Metadata Is Larger than 65 KB . . . . . . . .1328
32.3.33 Unsafe Server Certificate Change in SSL/TLS Renegotiations Is Not Allowed . . . . . . . . .1328
32.3.34 Viewing Request and Response Headers of All Protocols in a Log File . . . . . . . . . . . . . .1329
32.3.35 Provisioning of LDAP Attribute for Social Authentication User Failed . . . . . . . . . . . . . . .1330
32.3.36 User Authentication Fails When the Advanced Authentication Generic Class Is
Used. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1330
32.3.37 Cannot Create an Authentication Class with Advanced Authentication Generic
Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1330
32.3.38 CORS Request to the Token Introspection Endpoint Fails . . . . . . . . . . . . . . . . . . . . . . . . .1331
32.3.39 The User Portal Page Does Not Display the Branding . . . . . . . . . . . . . . . . . . . . . . . . . . . .1332
32.4 Troubleshooting Analytics Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1332
32.4.1 Launching Access Manager Dashboard Displays a Blank Page . . . . . . . . . . . . . . . . . . . . .1333
32.4.2 Graphs Do Not Display Any Data When You Launch Access Manager Dashboard . . . . .1333
32.4.3 Clearing the Existing Realtime Data to View the Imminent Data on Graphs . . . . . . . . . .1333
32.4.4 Cannot Launch Access Manager Dashboard After Reimporting Analytics server . . . . . .1334
32.4.5 The Analytics Server Health Is Not Reported to Administration Console . . . . . . . . . . . .1334
32.4.6 Access Manager Dashboard Does Not Display Graphs, but Displays the Health
Status of Devices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1334
32.5 Troubleshooting Certificate Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1336
32.5.1 Resolving the JCC Communication between Devices and Administration Console . . . .1336
32.5.2 The Self-Signing Certificate Is Expired for Port 10013 on Analytics Server . . . . . . . . . . .1337
32.5.3 Resolving Certificate Import Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1337
32.5.4 Mutual SSL with X.509 Produces Untrusted Chain Messages. . . . . . . . . . . . . . . . . . . . . .1339
32.5.5 Certificate Command Failure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1340
16 Contents
32.5.6 Cannot Log In with Certificate Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1340
32.5.7 When a User Accesses a Resource, the Browser Displays Certificate Errors . . . . . . . . . .1340
32.5.8 Canceling Certificates Modification Results in Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . .1341
32.5.9 A Device Reports Certificate Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1341
32.5.10 Renewing the expired eDirectory certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1341
32.5.11 Certificate Trust Store Objects of the Identity Server Clusters Are Deleted
Randomly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1341
32.6 Troubleshooting Access Manager Policies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1342
32.6.1 Turning on Logging for Policy Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1342
32.6.2 Common Configuration Problems That Prevent a Policy from Being Applied as
Expected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1344
32.6.3 The Policy Is Using Old User Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1346
32.6.4 Form Fill and Identity Injection Silently Fail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1348
32.6.5 Checking for Corrupted Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1348
32.6.6 Policy Page Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1348
32.6.7 Policy Creation and Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1348
32.6.8 Policy Distribution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1349
32.6.9 Policy Evaluation: Access Gateway Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1350
32.7 Troubleshooting MobileAccess. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1354
32.7.1 Using the Same Mobile Device for Different Users Causes the Expired Session Error . .1355
32.7.2 Simple Authentication with a Pop-up Browser Window Does Not Work for
MobileAccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1355
32.7.3 Users Fail to Authenticate to MobileAccess when Appmarks Are Launched in the
Chrome Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1355
32.7.4 Changes to MobileAccess do not Appear in Administration Console . . . . . . . . . . . . . . .1355
32.7.5 Facebook Basic SSO Connector Does Not Work from MobileAccess . . . . . . . . . . . . . . . .1356
32.8 Troubleshooting Code Promotion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1357
32.8.1 Troubleshooting Identity Server Code Promotion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1357
32.8.2 Troubleshooting Access Gateway Code Promotion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1358
32.8.3 Troubleshooting Device Customization Code Promotion . . . . . . . . . . . . . . . . . . . . . . . . .1362
32.9 Troubleshooting the Device Fingerprint Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1362
32.9.1 Enabling the Debug Option for the Device Fingerprint Rule. . . . . . . . . . . . . . . . . . . . . . .1362
32.9.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using
Logs to
Understand
How the
Device
Fingerprint Rule Is
Evaluated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1363
32.10 Troubleshooting Advanced Session Assurance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1368
32.10.1 Troubleshooting Using the Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1368
32.10.2 Important Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1373
32.10.3 Checking Session Assurance Configuration Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1374
32.10.4 The Advanced Session Assurance Page Does Not Display the Access Gateway
Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1376
32.11 Troubleshooting XML Validation Errors on Access Gateway Appliance . . . . . . . . . . . . . . . . . . . . .1376
32.11.1 Modifying a Configuration That References a Removed Object . . . . . . . . . . . . . . . . . . . .1377
32.11.2 Configuration UI Writes Incorrect Information to the Local Configuration Store . . . . . .1379
32.12 Troubleshooting OAuth and OpenID Connect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1383
32.12.1 The Token Endpoint Returns the Invalid Code Error Message . . . . . . . . . . . . . . . . . . . . .1383
32.12.2 OAuth Tokens Are in Binary Format Instead of JWT Format . . . . . . . . . . . . . . . . . . . . . . .1384
32.12.3 Users Cannot Register a Client Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1384
32.12.4 Token Exchanges Show Redirect URI Invalid Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1384
32.12.5 Users Cannot Register or Modify a Client Application with Specific Options . . . . . . . . .1384
Contents 17
32.12.6 A Specific Claim Does Not Come to the UserInfo Endpoint during Claims Request . . . .1384
32.12.7 Access Gateway OAuth Fails . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1385
32.12.8 After Allowing Consent, 500 Internal Server Error Occurs . . . . . . . . . . . . . . . . . . . . . . . .1385
32.12.9 The Access Token Does Not Get Exchanged with Authorization Code When Using a
Multi-Node Identity Server Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1385
32.12.10No Error Message When a Token Request Contains Repetitive Parameters . . . . . . . . . .1385
32.12.11OAuth Token Encryption/Signing Key Is Compromised or Corrupted . . . . . . . . . . . . . . .1385
32.12.12Tracing OAuth Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1386
32.12.13OAuth Client Registration Fails If a Role Policy Contains a Condition Other than
LDAP Attribute, LDAP Group, or LDAP OU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1386
32.12.14The Identity Injection Policy Does Not Inject Passwords. . . . . . . . . . . . . . . . . . . . . . . . . .1387
32.12.15OAuth Apps Fail After Upgrading Access Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1387
32.12.16Authorization Server Responds with the Service Unavailable Message for a
Revocation Request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1387
32.12.17(Windows) Cannot Configure Some of the OAuth Features After an Upgrade . . . . . . . .1387
32.13 Troubleshooting User Attribute Retrieval and Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . .1389
32.13.1 No Value Is Fetched from Attribute Source in Identity Server . . . . . . . . . . . . . . . . . . . . .1390
32.13.2 Error Message While Testing a Database Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . .1390
32.13.3 Regex Replace Error Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1391
32.14 Troubleshooting Impersonation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1391
32.14.1 Internet Explorer Caching Error. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1391
32.15 Troubleshooting Branding. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1391
32.15.1 Changes to Branding do not Appear in Administration Console . . . . . . . . . . . . . . . . . . .1391
32.16 Using Log Files for Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1392
32.16.1 Sample Authentication Traces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1393
32.16.2 Understanding Policy Evaluation Traces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1397
32.16.3 Adding Hashed Cookies into Browsers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1416
32.17 Access Manager Audit Events and Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1418
32.18 Event Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1418
18 Contents
33.21 NIDS: Server Started (002e0014) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1434
33.22 NIDS: Server Stopped (002e0015) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1435
33.23 NIDS: Server Refreshed (002e0016). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1435
33.24 NIDS: Intruder Lockout (002e0017) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1436
33.25 NIDS: Severe Component Log Entry (002e0018). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1436
33.26 NIDS: Warning Component Log Entry (002e0019) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1437
33.27 NIDS: Failed to Broker an Authentication from Identity Provider to Service Provider as
Identity Provider and Service Provider Are not in Same Group (002E001A) . . . . . . . . . . . . . . . . .1437
33.28 NIDS: Failed to Broker an Authentication from Identity Provider to Service Provider Because
a Policy Evaluated to Deny (002E001B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1438
33.29 NIDS: Brokered an Authentication from Identity Provider to Service Provider (002E001C) . . . . .1438
33.30 NIDS: Web service Request was authenticated (002e001D) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1439
33.31 NIDS: Web service Request for authentication Failed (002e001E) . . . . . . . . . . . . . . . . . . . . . . . . .1439
33.32 NIDS: OAuth2 Authorization code issued (002e0028) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1440
33.33 NIDS: OAuth2 token issued (002e0029). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1440
33.34 NIDS: OAuth2 Authorization code issue failed (002e0030) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1441
33.35 NIDS: OpenID token issued (002e0031). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1441
33.36 NIDS: OAuth2 refresh token issued (002e0032) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1442
33.37 NIDS: OAuth2 token issue failed (002e0033) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1442
33.38 NIDS: OpenID token issue failed (002e0034). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1443
33.39 NIDS: OAuth2 refresh token issue failed (002e0035) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1443
33.40 NIDS: OAuth2 client has been registered successfully (002e0036) . . . . . . . . . . . . . . . . . . . . . . . . .1444
33.41 NIDS: OAuth2 client has been modified successfully (002e0037) . . . . . . . . . . . . . . . . . . . . . . . . . .1444
33.42 NIDS: OAuth2 client has been deleted successfully (002e0038) . . . . . . . . . . . . . . . . . . . . . . . . . . .1445
33.43 NIDS: OAuth2 user has provided consent (002e0039) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1445
33.44 NIDS: OAuth2 user has revoked consent (002e0040). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1446
33.45 NIDS: OAuth2 token validation success (002e0041). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1446
33.46 NIDS: OAuth2 token validation failed (002e0042) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1447
33.47 NIDS: OAuth2 client registration failed (002e0043) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1447
33.48 NIDS: OAuth2 refresh token revoked success (002e0055) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1448
33.49 NIDS: OAuth2 refresh token revocation failed (002e0056) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1448
33.50 NIDS: OAuth2 Authorization none issued (002e0057) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1449
33.51 NIDS: OAuth2 AA Authorization Code Exchange (002e0071) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1449
33.52 NIDS: OAuth2 AA Access Token Exchange (002e0072) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1450
33.53 NIDS: Step-up authentication (002e0719). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1451
33.54 NIDS: Roles PEP Configured (002e0300) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1451
33.55 NIDS: Risk-Based Authentication Action for User (002e0045) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1451
33.56 NIDS: Risk-Based Authentication Action for User (002e0046) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1452
33.57 NIDS: Risk-Based Authentication Action for User (002e0047) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1453
33.58 NIDS: Token was Issued to Web Service (002E001F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1453
33.59 NIDS: Issued a Federation Assertion (002E0102) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1454
33.60 NIDS: Received a Federation Assertion (002E0103) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1454
33.61 NIDS: Assertion Information (002E0104). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1454
33.62 NIDS: Sent a Federation Request (002E0105) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1455
33.63 Access Gateway: PEP Configured (002e0301) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1455
33.64 Roles Assignment Policy Evaluation (002e0320). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1456
33.65 Access Gateway: Authorization Policy Evaluation (002e0321) . . . . . . . . . . . . . . . . . . . . . . . . . . . .1456
33.66 Access Gateway: Form Fill Policy Evaluation (002e0322) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1457
33.67 Access Gateway: Identity Injection Policy Evaluation (002e0323). . . . . . . . . . . . . . . . . . . . . . . . . .1457
Contents 19
33.68 Access Gateway: Access Denied (0x002e0505). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1458
33.69 Access Gateway: URL Not Found (0x002e0508) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1458
33.70 Access Gateway: System Started (0x002e0509) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1459
33.71 Access Gateway: System Shutdown (0x002e050a) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1459
33.72 Access Gateway: Identity Injection Parameters (0x002e050c) . . . . . . . . . . . . . . . . . . . . . . . . . . . .1460
33.73 Access Gateway: Identity Injection Failed (0x002e050d) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1461
33.74 Access Gateway: Form Fill Authentication (0x002e050e) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1461
33.75 Access Gateway: Form Fill Authentication Failed (0x002e050f) . . . . . . . . . . . . . . . . . . . . . . . . . . .1462
33.76 Access Gateway: URL Accessed (0x002e0512) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1463
33.77 Access Gateway: IP Access Attempted (0x002e0513) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1463
33.78 Access Gateway: Webserver Down (0x002e0515) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1464
33.79 Access Gateway: All WebServers for a Service is Down (0x002e0516) . . . . . . . . . . . . . . . . . . . . . .1464
33.80 Access Gateway: Application Accessed (002E0514) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1465
33.81 Access Gateway: Session Created (002E0525) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1466
33.82 Management Communication Channel: Health Change (0x002e0601) . . . . . . . . . . . . . . . . . . . . .1466
33.83 Management Communication Channel: Device Imported (0x002e0602) . . . . . . . . . . . . . . . . . . .1467
33.84 Management Communication Channel: Device Deleted (0x002e0603) . . . . . . . . . . . . . . . . . . . . .1467
33.85 Management Communication Channel: Device Configuration Changed (0x002e0604) . . . . . . . .1468
33.86 Management Communication Channel: Device Alert (0x002e0605) . . . . . . . . . . . . . . . . . . . . . . .1469
33.87 Management Communication Channel: Statistics (002e0606) . . . . . . . . . . . . . . . . . . . . . . . . . . . .1469
33.88 Risk-Based Authentication Successful (002e0025) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1470
33.89 Risk-Based Authentication Failed (002e0026). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1470
33.90 Risk-Based Authentication for User (002e0027) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1471
33.91 Impersonation Sign in (002E0048) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1471
33.92 Impersonation: Impersonator Logs Out (002E0049) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1472
33.93 Impersonation: Session Started (002E0050) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1473
33.94 Impersonation: Impersonatee Denies (002E0051) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1473
33.95 Impersonation: Impersonatee Approves (002E0052). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1474
33.96 Impersonation: Impersonator Cancels (002E0053) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1474
33.97 Impersonation: Authorization Policy Fails (002E0054) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1475
20 Contents
B SOAP versus REST API 1601
Contents 21
22
About this Book and the Library
The Administration Guide provides an introduction to NetIQ Access Manager and details about how
to configure and maintain Access Manager features.
To know more about Access Manager, see Access Manager Overview.
Intended Audience
This book is intended for Access Manager administrators. It is assumed that you have knowledge of
evolving Internet protocols, such as:
Extensible Markup Language (XML)
Simple Object Access Protocol (SOAP)
Security Assertion Markup Language (SAML)
Public Key Infrastructure (PKI) digital signature concepts and Internet security
Secure Socket Layer/Transport Layer Security (SSL/TLS)
Hypertext Transfer Protocol (HTTP and HTTPS)
Uniform Resource Identifiers (URIs)
Domain Name System (DNS)
Web Services Description Language (WSDL)
NOTE: Contact [email protected] for any query related to Access Manager SDK.
This section describes how to setup a basic Access Manager configuration, perform common
administration tasks, and manage components’ configuration. For configuring Access Manager, you
can use the latest version of Internet Explorer, Chrome, or Firefox browsers.
Topics include:
Chapter 1, “Configuring Administration Console,” on page 27
Chapter 2, “Setting Up a Basic Access Manager Configuration,” on page 43
Chapter 3, “Setting Up an Advanced Access Manager Configuration,” on page 277
Chapter 4, “Configuring Authentication,” on page 383
Chapter 5, “Device Fingerprinting,” on page 755
Chapter 6, “Integrating Access Manager with Microsoft Azure,” on page 767
Chapter 7, “Appmarks,” on page 781
Chapter 8, “Enabling Mobile Access,” on page 785
Chapter 9, “Branding of the User Portal Page,” on page 793
Chapter 10, “Access Manager Policies,” on page 795
Chapter 11, “High Availability and Fault Tolerance,” on page 973
This view allows you to quickly access other tasks that you occasionally need to manage the
configuration of the datastore are visible.
When you install or upgrade Access Manager and log in to Administration Console, the default view
is set to the Access Manager view.
2 Click the Roles and Tasks view or the Access Manager view .
WARNING: Locking has not been implemented on the pages for modifying Identity Server. If you
have multiple administrators, they need to coordinate with each other so that only one
administrator is modifying an Identity Server cluster at any given time.
Multiple Sessions: Do not start multiple sessions of Administration Console in the same browser on
a workstation. Browser sessions share settings that can result in problems when you apply changes
to configuration settings. However, if you are using two different brands of browsers simultaneously,
such as Internet Explorer and Firefox, it is possible to avoid the session conflicts.
Multiple Administration Consoles: As long as the primary console is running, all configuration
changes must be made at the primary console. If you make changes at both a primary console and a
secondary console, browser caching can cause you to create an invalid configuration.
The following sections explain how to create additional administrator accounts, how to delegate
rights to administrators, and how to manage policy view administrators:
Section 1.3.1, “Creating Multiple Admin Accounts,” on page 30
Section 1.3.2, “Managing Policy View Administrators,” on page 31
Section 1.3.3, “Managing Delegated Administrators,” on page 31
Section 1.3.4, “Changing Administrator’s Password,” on page 36
NOTE: Select the same Context that the existing administrator has. For example, novell.
You can also create delegated administrators and grant them rights to specific components of Access
Manager. For information about how to configure this type of user, see Section 1.3.3, “Managing
Delegated Administrators,” on page 31.
IMPORTANT: You need to trust the users you assign as delegated administrators. They are granted
sufficient rights that they can compromise the security of the system. For example if you create
delegated administrators with View/Modify rights to policy containers, they have sufficient rights to
implement a cross-site scripting attack by using the Deny Message in an Access Gateway
Authorization policy.
Delegated administrators are also granted rights to the LDAP server. They can access the
configuration datastore with an LDAP browser. Any modifications made with the LDAP browser are
not logged by Access Manager.
By default, all users except the administrator are assigned no rights to the policy containers and the
devices. The administrator has all rights and cannot be configured to have less than all rights. The
administrator is the only user who has the rights to delegate rights to other users, and the only user
who can modify keystores, create certificates, and import certificates.
The configuration pages for delegated administrators control access to the Access Manager pages.
They do not control access to the tasks available for the Manage Roles & Tasks view in iManager. If
you want your delegated administrators to have rights to any of these tasks such as Directory
Administration or Groups, you must use eDirectory methods to grant the user rights to these tasks or
enable and configure Role-Based Services in iManager.
Delegated Administrators
All delegated administrators with View/Modify rights to a device have read rights to the master
policy container. To create or modify policies, a delegated administrator needs View/Modify rights to
a policy container. When a delegated administrator has View/Modify rights to any policy container,
the delegated administrator is also granted enough rights to allow the administrator to select shared
secret values, attributes, LDAP groups, and LDAP OUs to policies.
NOTE: Failure to enter a password will allow the user to login without a password.
9 (Optional) Simple Password: Select this check box to set the simple password.
NOTE: Simple Password is required for native file access on Windows and Macintosh using the
CIFS and AFP protocols. Simple Password is not required for normal eDirectory access. The
Universal Password feature supersedes Simple Password. When the Universal Password feature
10 (Optional) Copy from Template or User Object: Copies the attributes from a user template that
you've created.
11 (Optional) Create Home Directory: You can create a home directory for this new User object if
you have sufficient eDirectory rights. To do this, specify the path where you want to create the
user's home directory.
11a Volume: Applies only to NCP-enabled volumes.
11b Path: You must specify a valid, existing directory path.The last directory typed in the path is
the one that is created; all other directories in the path must already exist. For example, if
you specify the path corp/home/sclark, the directories corp and home must already exist.
The directory sclark is the only directory created.
12 (Optional) Enter or Select the title, location, department, telephone number, fax number, email
address of the delegated user from the list.
13 (Optional) Enter the description if there are any to the user. You are able to add, remove and
edit the information as per the requirement.
14 Click OK.
After creating a user, assign rights to the newly created user. For more information, see “Policy
Container Administrators” on page 33.
NOTE: The password is not case-sensitive by default. To make your password case-sensitive, see
Enforcing Case-Sensitive Universal Passwords (https://www.netiq.com/documentation/edirectory-
91/edir_admin/data/b1j691df.html).
Converting a secondary console into a primary console is designed as a disaster recovery solution
when the primary console is no longer available.
NOTE: If these steps do not work, see “Troubleshooting Identity Server Import and
Installation” in the NetIQ Access Manager 4.5 Installation and Upgrade Guide.
IMPORTANT: The new IP address must be configured in Administration Console before you change it
on Access Gateway. If you change the address on Access Gateway first, Administration Console does
not trust Access Gateway and cannot establish the communication.
1 Click Devices > Access Gateways > Edit > Adapter List.
2 (Conditional) If the machine belongs to a cluster, select Access Gateway from the Cluster
Member list.
3 From the Adapter List, select the subnet mask that contains the IP address you want to change.
4 Select the old IP address, click Change IP Address, specify the new IP address, then click OK.
This option changes all configuration instances of the old IP address to the new IP address. For
example, any reverse proxies that have been assigned the old IP address as a listening address
are modified to use the new IP address as the listening address.
5 Click OK.
6 To apply your changes, click the Access Gateways link, then click Update > OK.
7 If you are physically moving the machine, move it before completing the rest of these steps.
8 Check the IP address that Administration Console uses for managing Access Gateway. Click
Access Gateways > [Name of Access Gateway] > Edit.
9 If the old IP address is listed as the Management IP Address, select the new IP address. If your
Access Gateway has multiple IP addresses, select the one that you want Administration Console
to use for communication with Access Gateway.
NOTE: If NAT IP address is not provided or if a mapping already exists for the selected
Administration Console IP, this message is displayed:
4 Click OK.
Configuration
The initial setup for Access Manager consists of setting up Identity Server and Access Gateway to
protect resources running on an HTTP web server. You must set up user stores for Identity Server and
configure Access Gateway to protect resources running on an HTTP web server.
Section 2.1, “Prerequisites for a Basic Access Manager Setup,” on page 43
Section 2.2, “Configuring Identity Servers Clusters,” on page 44
Section 2.3, “Configuring Identity Server Shared Settings,” on page 62
Section 2.4, “Configuring Access Gateway,” on page 106
Section 2.5, “Configuring Access Gateways Clusters,” on page 113
Section 2.6, “Protecting Web Resources Through Access Gateway,” on page 120
Section 2.7, “Configuring Trusted Providers for Single Sign-On,” on page 184
Section 2.8, “Configuring Single Sign-On to Specific Applications,” on page 216
Section 2.9, “Configuring a Protected Identity Server Through Access Gateways,” on page 239
Section 2.10, “Managing Access to User Portal,” on page 246
Section 2.11, “Sample Configuration for Protecting an Application Through Access Manager,” on
page 251
A cluster of Identity Servers must reside behind a Layer 4 (L4) switch. Clients access the virtual IP
address of the cluster presented on the L4 switch, and the L4 switch alleviates server load by
balancing traffic across the cluster. If your Identity Server is on the same machine as an
Administration Console, and your second Identity Server is on the same machine as a secondary
Administration Console, ensure that you are familiar with Section 11.1, “Installing Secondary
Administration Console,” on page 973 before proceeding.
Whenever a user accesses the virtual IP address (port 8080) assigned to the L4 switch, the system
routes the user to one of Identity Servers in the cluster, as traffic necessitates.
IMPORTANT: You must not use a DNS round robin setup instead of an L4 switch for load balancing.
The DNS solution works only as long as all members of the cluster are working and in a good state. If
one of them goes down and traffic is still sent to that member, the entire cluster is compromised and
all devices using the cluster start generating errors.
This section describes how to set up and manage a cluster of Identity Servers:
Section 2.2.1, “Configuration Notes,” on page 45
Section 2.2.2, “Prerequisites for Configuring an Identity Servers Cluster,” on page 46
Section 2.2.3, “Managing a Cluster of Identity Servers,” on page 47
With some L4 switches, you must configure only the services that you are using. For example, if you
configure the SSL service for the L4 switch and you have not configured SSL in Access Manager, then
the HTTP service on the L4 switch does not work. If the health check for the SSL service fails, the L4
switch assumes that all the services configured to use the same virtual IP are down.
Field Description
Name Specify a name for the cluster. This field is populated with the name you provided in
the New Cluster dialog box. You can change this name here, if necessary.
IMPORTANT: Carefully determine your settings for the base URL, protocol, and
domain. After you have configured trust relationships between providers, changing
these settings invalidates the trust model and requires a reimport of the provider’s
metadata.
Modifying the base URL also invalidates the trust between the Embedded Service
Provider of Access Manager devices. To re-establish the trust after modifying the base
URL, you must restart the Embedded Service Provider on each device.
Base URL Specify the application path for Identity Server. Identity Server protocols rely on this
base URL to generate URL endpoints for each protocol.
Protocol: Select the communication protocol. Specify HTTPS to run securely (in
the SSL mode) and for provisioning. Use HTTP only if you do not require security
or have installed an SSL terminator in front of Identity Server.
Domain: Specify the DNS name assigned to Identity Server. When you are using
an L4 switch, this DNS name must resolve to the virtual IP address set up on the
L4 switch for Identity Servers. Using an IP address is not recommended.
Port: Default ports are 8080 for HTTP or 8443 for HTTPS. If you want to use port
80 or 443, specify the port here.
On Linux, configure the operating system to translate the port. See
Translating Identity Server Configuration Port in the NetIQ Access Manager
4.5 Installation and Upgrade Guide.
On Windows, modify the Tomcat server.xml file located in the
\Program Files\Novell\Tomcat\conf directory for Windows.
Change the ports from 8080 and 8443 to 80 and 443 and restart the Tomcat
service.
Application: Specify Identity Server application. Leave the default value nidp.
Field Description
LDAP Access Specify the maximum number of LDAP connections Identity Server can create to
access the configuration store. You can adjust this value for system performance.
Default Specify the session timeout you want assigned as a default value when you create a
Timeout contract. This value is also assigned to a session when Identity Server cannot
associate a contract with the authenticated session. During federation, if the
authentication request uses a type rather than a contract, Identity Server cannot
always associate a contract with the request.
Limit User Specify whether user sessions are limited. If selected, you can specify the maximum
Sessions number of concurrent sessions a user is allowed to authenticate.
To limit user sessions, you must also consider the session timeout value (the default
is 60 minutes). If the user closes the browser without logging out (or an error causes
the browser to close), the session is not cleared until the session timeout expires. If
the user session limit is reached and those sessions have not been cleared with a
logout, the user cannot log in again until the session timeout expires for one of the
sessions.
When you enable this option, it affects performance in a cluster with multiple
Identity Servers. When a user is limited to a specific number of sessions, Identity
Servers must check with the other servers before establishing a new session.
Deleting You can configure Identity Server to delete the previous user sessions if the number
Previous User of open sessions reaches the maximum limit of allowed sessions that you have
Sessions specified in Limit User Sessions. Set the DELETE OLD SESSIONS OF USER
option to true and restart Identity Server. For information about how to configure
this option, see “Configuring Identity Server Global Options” on page 56. Previous
sessions are cleared across Identity Server clusters only when a fresh authentication
request comes in. When Identity Server deletes previous user sessions, it sends a
logout request to the service provider through the SOAP back channel.
For example, a user is accessing a protected resource from a machine and wants to
access the same protected resource from another device. Identity Server will not
give access to the user if the Limit User Sessions has reached a maximum limit.
Identity Server must terminate the old session of the user so that the user can
access the new session seamlessly.
Allow multiple Specify whether a user with more than one session to the server is presented with
browser an option to log out of all sessions. If you do not select this option, only the current
session logout session can be logged out. Deselect this option in instances where multiple users log
in as guests. Then, when one user logs out, none of the other guests are logged out.
When you enable this option, you must also restart any Embedded Service Providers
that use this Identity Server configuration.
LDAP Specify the duration (in seconds) that an LDAP request to the user store can take before
timing out.
Proxy Specify the duration (in seconds) that a request to another cluster member can take
before timing out. When a member of a cluster receives a request from a user who has
authenticated with another cluster member, the member sends a request to the
authenticating member for information about the user.
Request Specify the duration (in seconds) that an HTTP request to an application can take before
timing out.
Liberty: Uses a structured version of SAML to exchange authentication and data between
trusted identity providers and service providers and provides the framework for user
federation.
SAML 1.1: Uses XML for exchanging authentication and data between trusted identity
providers and service providers.
SAML 2.0: Uses XML for exchanging encrypted authentication and data between trusted
identity providers and service providers and provides the framework for user federation.
WS Federation: Allows disparate security mechanisms to exchange information about
identities, attributes, and authentication.
WS-Trust: Allows secure communication and integration between services by using
security tokens.
OAuth & OpenID Connect: Allows Identity Server to act as an authorization server to issue
access token to a client application based on user’s grant.
9 Click Next.
10 Specify the following details:
Name: The name of the organization.
Display Name: The display name for the organization.
URL: The organization’s URL for contact purposes.
Company, First Name, Last Name, Email, Telephone, and Contact Type are optional fields.
IMPORTANT: The information you specify on this page is published in the metadata for Liberty
1.2 and SAML protocols. The metadata is traded with federation partners and supplies various
information regarding contact and organization information located at Identity Server.
Prerequisites
An Identity Server cluster with two or more Identity Servers.
Sufficient memory on Identity Servers to store additional authentication information. When an
Identity Server is selected to be a failover peer, Identity Server stores about 1 KB of session
information for each user authenticated on the other machine.
Field Description
Cluster Communication Specify a communications channel over which the cluster members
Backchannel maintain the integrity of the cluster. For example, this TCP channel is
used to detect new cluster members as they join the cluster, and to
detect members that leave the cluster. A small percentage of this TCP
traffic is used to help cluster members determine which cluster
member can handle a request more efficiently. This back channel must
not be confused with the IP address/port over which cluster members
provide proxy requests to peer cluster members.
Port: Specify the TCP port of the cluster back channel on all
Identity Servers in the cluster. 7801 is the default TCP port.
Encrypt: Encrypts the content of the messages that are sent
between cluster members.
Level Four Switch Port Configure the L4 switch to translate the port of the incoming request to
Translation a new port when the request is sent to a cluster member. Because the
cluster members communicate with each other over the same IP
address/port as the L4 switch, the cluster implementation needs to
know what that port is. The translated port is the port on the cluster
members where other cluster members can contact it. This is the IP
address and port where cluster members provide proxy requests to
other cluster members.
Port translation is enabled on switch: Specify whether the port of
the L4 switch is different from the port of the cluster member. For
example, enable this option when the L4 switch is using port 443
and Identity Server is using port 8443.
Cluster member translated port: Specify the port of the cluster
member.
IDP Failover Peer Server For configuration information, see Configuring Session Failover.
Count
For information about deleting an Identity Server, see Section 2.2.3, “Managing a Cluster of Identity
Servers,” on page 47.
The sessions of any logged-in users are destroyed and no user can log in and access protected
resources until the trust relationships are reestablished.
Perform the following steps to modify the base URL and reestablish trust relationships:
1 Click Devices > Identity Servers > Edit.
2 Change the protocol, domain, port, and application settings, as necessary.
3 Click OK.
4 On the Identity Servers page, click Update.
This re-creates the trusted Identity Server configuration to use the new base URL and metadata.
NOTE: Access Manager 4.2 onwards, configuring the following options through files is deprecated.
You must configure these option by using Administration Console.
Property Value
Allow Auth Policy Execution Select false to disable Identity Server to execute authorization
policies. The default value is true.
Cluster Cookie Domain Set this property to change the Domain attribute for Identity Server
cluster cookie.
Cluster Cookie Path Set this property to change the Path attribute for Identity Server
cluster cookie. The default value is /nidp.
DECODE RELAY STATE PARAM Select true to enable the relay state URL decoding. The default value
is false.
DELETE OLD SESSIONS OF Select true to enable Identity Server to delete the previous user
USER sessions if the number of open sessions reaches the maximum limit
of allowed sessions that you have specified in Limit User Sessions.
The default value is false.
HTTP ONLY CLUSTER COOKIE Select false to disable the HTTPOnly flags for Identity Server cluster
cookies. The default value is true.
HTTP POPULATE LOGINNAME Select true to auto-populate the email ID on the Identity Server login
FROM SAML AUTH REQUEST page for a SAML 2.0 authentication. The default value is false.
(This option is available in For more information about this option, see “Auto-Populating the
Access Manager 4.5 Service Username on the Identity Server Login Page” on page 689.
Pack 1 or later versions)
HTTP POPULATE PARSED Select true to auto-populate the username instead of the entire email
LOGINNAME FROM SAML ID on the Identity Server login page for a SAML 2.0 authentication.
AUTH REQUEST For example, to populate steve.smith instead of
[email protected]. The default value is false.
(This option is available in
Access Manager 4.5 Service For more information about this option, see “Auto-Populating the
Pack 1 or later versions) Username on the Identity Server Login Page” on page 689.
HTTP POPULATE LOGINNAME Select true to auto-populate the email ID on the Identity Server login
FROM WSFED AUTH page for a WS-Fed authentication request. The default value is false.
REQUEST
HTTP POPULATE PARSED Select true to auto-populate the username instead of the entire email
LOGINNAME FROM WSFED ID on the Identity Server login page for a WS-Fed authentication. For
AUTH REQUEST example, to populate steve.smith instead of
[email protected]. The default value is false.
(This option is available in
Access Manager 4.5 Service
Pack 1 or later versions)
IS SAML2 POST INFLATE Select true to enable Identity Server to receive deflated SAML 2.0
POST messages from its trusted providers. The default value is false.
IS SAML2 POST SIGN Select true to enable the identity provider to sign the entire SAML 2.0
RESPONSE response for all service providers.
LOGIN CSRF CHECK Select true to enable Cross-Site Request Forgery (CSRF) check for the
Password Class and TOTP Class.
JAVA:
<%
String sid = request.getParameter("sid")!=null ?
request.getParameter(NIDPConstants.SID) :
(String)request.getAttribute(NIDPConstants.SID);
NIDPSessionData sData =
NIDPContext.getNIDPContext().getSession(request).ge
tSessionData(sid);
boolean csrfCheckRequired =
NIDPEdirConfigUtil.isConfigured(NIDPConfigKeys.LOGI
N_CSRF_CHECK.name()) ?
NIDPEdirConfigUtil.getValueAsBoolean(NIDPConfigKeys
.LOGIN_CSRF_CHECK.name()) : false;
%>
HTML:
OAUTH TOKENS IN BINARY Select true to send tokens in the binary format.
FORMAT
By default, the value is set to false and tokens are sent in the JWT
format.
NOTE: : When the value is set to true, few features, such as token
encryption using resource server keys and token revocation, will not
be available.
RENAME SESSION ID Select false to prevent changing the session ID automatically. The
default value is true.
SAML1X ATTRIBUTE MATCH Select true to perform a strict check on the name space of the
BY NAME attributes received in assertion.
For example, see Section 32.3.24, “SAML 1.1 Service Provider Re-
requests for Authentication,” on page 1325.
SAML2 ATTRIBUTE This option can be used to identify globally the value of
CONSUMING INDEX AttributeConsumingServiceIndex of SAML 2 authentication
requests. If SAML2 ATTRIBUTE CONSUMING INDEX is not configured
in SAML 2.0 options, then Access Manager considers the SAML2
ATTRIBUTE CONSUMING INDEX configuration in Identity Server
global options. If you require to assign the property values for
multiple entries, you can use comma (,) as separator.
You can provide the value in the format specified in the following
example:
SECURE CLUSTER COOKIE Select false to disable the secure flags for cluster cookies. The default
value is true.
STS CHANGE ISSUER Specify the value in this format: SPentityID:UPNDomain ->
new IssuerID. For example,
urn:federation:MicrosoftOnline:support.namnetiq.in -> https://
namnetiq.in/nidp/wsfed/
urn:federation:MicrosoftOnline:namnetiq.in ->
https://namnetiq.in/nidp/wsfed/,
urn:federation:MicrosoftOnline:support.namnetiq.i
n -> https://namnetiq.in/nidp/wsfed/,
urn:federation:MicrosoftOnline:engineering.namnet
iq.in -> https://namnetiq.com/nidp/wsfed/
STS OFFICE365 MULTI Select true to enable users to access Office 365 services by using the
DOMAIN SUPPORT AUTO Issuer URI specific to the domain they belong to. The default value is
false.
WSF SERVICES LIST Select full to enable users to access the Services page.
WSFED ASSERTION VALIDITY Specify the assertion validity time in second for WS Federation
Provider (SP) to accommodate clock skew between the service
provider and SAML identity provider.
WSTRUST AUTHORIZATION Specify the user names who can perform ActAs operations. Allowed
ALLOWED ACTAS VALUES user names are the user accounts that the intermediate web service
provider uses to authenticate with STS when sending a request with
ActAs elements.
You can specify more than one user name separated by a comma.
WSTRUST AUTHORIZATION Specify the user names who can perform OnBehalfOf operations.
ALLOWED ONBEHALF Allowed user names are the user accounts that the intermediate web
VALUES service provider uses to authenticate with STS when sending a
request with OnBehalfOf elements.
You can specify more than one user name separated by a comma.
WSTRUST AUTHORIZATION Specify the user names who can perform both ActAs and OnBehalfOf
ALLOWED VALUES operations.
You can specify more than one user name separated by a comma.
SESSION ASSURANCE USER Specify the user-agent string for that you want to disable the session
AGENT EXCLUDE LIST validation.
SESSION ASSURANCE USER Specify the user-agent REGEX for that you want to disable the session
AGENT REGEX EXCLUDE LIST validation.
SESSION ASSURANCE URL Specify the URL for that you want to disable the session validation.
EXCLUDE LIST
For example, see “Disabling Advanced Session Assurance for Identity
Server” on page 1029.
SESSION ASSURANCE URL Specify the URL REGEX for that you want to disable the session
REGEX EXCLUDE LIST validation.
SESSION ASSURANCE IDC Specify the time in second till which Identity Server will accept the
COOKIE GRACEPERIOD old IDC cookie after issuing a new cookie. The default value is 15
second.
OTHER Specify Property Name and Property Value if you want to configure
any other property.
When you set this option to false, the following will happen after
authentication:
The target URL query is not URL encoded
The user is not redirected to the service provider
The following message is displayed:
"family_name": "Lastname"
"family_name": [
"Lastname"
]
The Shared Settings page also contains tabs for configuring the server details for NetIQ Advanced
Authentication and Self Service Password Reset products. You need to configure these details when
integrating Access Manager with these products.
Configuring Advanced Authentication Server
Configuring Self Service Password Reset Server Details in Identity Server
Supports WSTrust and Select this option if you require to add the LDAP attributes and the virtual
OAuth attributes to an attribute set.
For the OAuth scope, you can add LDAP attributes or only the virtual
attributes that are LDAP attributes or are constants.
Select set to use as Select an existing attribute set that you have created, which you can use as a
template template for the new set, or select None. To modify an existing attribute set,
select that set as a template.
3 Click Next.
4 To add an attribute to the set, click New.
5 Specify the following details:
Field Description
Local Attribute Select an attribute from the list of all server profile, LDAP, shared secret attributes
and virtual attributes.
For example, you can select All Roles to use in role policies, which enables trusted
providers to send role information in authentication assertions. Share secret
attributes must be created before they can be added to an attribute set. For
instructions, see “Creating Shared Secret Names” on page 66.
Constant Specify a value that is constant for all users of this attribute set. The name of the
attribute that is associated with this value is specified in Remote Attribute.
Remote Attribute Specify the name of the attribute defined at the external provider. The text for
this field is case-sensitive.
A value is optional if you are mapping a local attribute. If you leave this field
blank, the system sends an internal value that is recognized between
Identity Servers.
For a SAML 1.1 and SAML 2.0 identity consumer (service provider), a name
identifier received in an assertion is automatically given a remote attribute
name of saml:NameIdentifier. This allows the name identifier to be mapped
to a profile attribute that can then be used in policy definitions.
A value is required if you are mapping a constant.
An attribute set with a constant is usually set up when Identity Server is
acting as an identity provider for a SAML or Liberty service provider. The
name must match the attribute name that the service provider is using.
Remote Specify the namespace defined for the attribute by the remote system:
namespace If you are defining an attribute set for LDAP, select none. If you want a
service provider to accept any namespace specified by an identity provider,
select none. If you want an identity provider to use a default namespace,
select none. The urn:oasis:names:tc:SAML:1.0:assertion value
is sent as the default.
If you are defining an attribute set for WS Federation, select the radio button
and specify the following name:
http://schemas.xmlsoap.org/claims
If you want to specify a new namespace, select the radio buttonand specify
the name.
6 Click OK.
7 Click Finish.
The system displays the map on the Attribute Sets page and indicates whether it is in use by a
provider.
8 (Conditional) To configure a provider to use the attribute set, see Section 2.7.6, “Selecting
Attributes for a Trusted Provider,” on page 198.
1 Click Devices > Identity Server > Shared Settings > Attribute Sets.
2 Click the name of the attribute set that you want to edit.
3 The system displays an attribute set page with the following tabs:
General: Click to edit the name of the attribute set.
Mapping: Click to edit the attribute map.
For more information about how to use shared secrets with policies, see Section 10.5.4, “Creating
and Managing Shared Secrets,” on page 938.
Identity Server needs to be configured to use shared secrets. For information about this process, see
“Configuring a User Store for Secrets” on page 389.
Shared secret names can be created on the Custom Attributes page or in the associated policy that
consumes them.
1 Click Devices > Identity Servers > Shared Settings > Custom Attributes > New.
2 Specify a new shared secret name and, optionally, a secret entry name.
3 Click OK.
4 (Optional) To create additional entries for the secret, click the name of the secret, click New,
specify an entry name, and click OK.
WARNING: Identity Server cannot determine whether a secret is being used by a policy. Before you
delete a shared secret, you must ensure that it is not being used.
2.3.4.2 Prerequisites
To perform complex user attribute transformations, you must have a basic understanding of
JavaScript. To see sample JavaScripts with examples, see “Sample JavaScripts with Examples” on
page 92.
NOTE: You cannot delete a data source that is being used by an attribute source.
Field Description
Database Driver Select a driver from the list. The associated driver name is auto-populated. If
you select Others (Unsupported), specify the driver name in the adjacent
field.
Max Connections Specify the maximum number of connections. The default value 20.
Idle TimeOut Specify the idle timeout. The default value is 600000 milliseconds. Set this
value based on the server setting. For example, if the server timeout value is
600000, then the timeout value must not exceed 600000.
Connection TimeOut Specify the connection timeout. The default value is 10000 milliseconds. Set
this value based on the server setting.
URL Specify the database URL based on the database driver selected.
Based on the database type, you need to add the corresponding jars.
For Oracle:
1. Download the JDBC connector for the Oracle database from Oracle.com (https://
www.oracle.com/technetwork/database/enterprise-edition/downloads/index-
092322.html).
2. Copy the JDBC connector jar to the following folder:
On Windows
Administration Console: C:\Program
Files\Novell\Tomcat\webapps\nps\WEB-INF\lib
Identity Server: C:\Program Files\Novell\Tomcat\webapps\nidp\WEB-
INF\lib
Field Description
Directory Type Select the type of directory. If you select Others (Unsupported),
specify a directory name in the adjacent field: sunonedir, custom1,
custom2, custom3, custom4, others.
LDAP Operation TimeOut Specify the LDAP operation timeout. The default value is 15000
milliseconds. You can set this value based on the server setting.
Idle Connection TimeOut Specify the connection timeout. The default value is 10000
milliseconds. Set this value based on the server setting. For
example, if the server timeout is 15000 milliseconds, then the LDAP
timeout value must not exceed 15000.
Field Description
For a secure connection, select Use Secure LDAP Connection. The port
number changes to 636.
You must import the trusted root if you select a secure connection. To
import the trusted root, click Auto Import Trusted Root. The trusted
certificate of the server will be imported to the Identity provider trust
store. Update the Identity provider each time.
Field Description
Web Service Name Specify a display name for the web service.
Base URL Specify the base URL in the <protocol>://<host>:<port> format. For
example: http://172.16.0.0:80
This is a common URL that can be used for the endpoints that use the same
host and port. A common URL is used because the authentication and data
connection properties will be common for all endpoints.
For example, you can use the base URL as www.abc.com/rest if you want to
retrieve user attributes from the following REST endpoints:
www.abc.com/rest/getUserDepartmentInfo
www.abc.com/rest/getUserInfo
Connection Specify the duration until which Access Manager must try connecting to the
Timeout REST web server in milliseconds. The default value is 15000 milliseconds. If the
host is not reachable, clicking Test will give the timeout error after the specified
duration.
Authentication Select the type of authentication that will be required for connecting to the
Type required web service.
If you select Basic Auth, the Authorization header with the specified username
and password gets added automatically to the request header, which is used for
retrieving data from a REST endpoint.
This ensures that the Authorization header gets added under the request
header in the attribute source page.
Credentials This field is displayed only when you select Authentication Type as Basic Auth.
Admin: Specify the username and password for accessing the REST endpoints.
Select this option if the REST web server requires a common credential to
access all endpoints.
Custom: Specify required LDAP attribute of users for accessing the REST
endpoints. Use this option if the access to REST web server endpoints require
specific user credentials.
You must specify the credentials that authorizes a user to retrieve the
information from the REST web server.
7 To test the data source connection after specifying the details, click Test under Test Connectivity.
You can also view the error logs at the following location:
Linux: /opt/novell/nam/logs/adminconsole/tomcat/catalina.out
Windows: c:\Program Files\Novell\Tomcat\logs\stdout.log
NOTE: For a REST web service, clicking Test checks the connection to the web service
irrespective of the endpoint's resource path and credentials. It checks the connection based on
the IP address and port.
NOTE: If you change the IP address of the LDAP or REST web service data source, then, you
must import the trusted root of the updated server to the Identity Server trust store.
For more information about the fields on this page, see “Creating a Data Source” on page 69.
4 Click OK.
5 Update Identity Server.
IMPORTANT: You must update Identity Server every time you edit the properties of a data source
that is being used by an attribute source and the attribute source in turn, being used by the virtual
attribute.
NOTE: You cannot delete an attribute source that is being used by a virtual attribute.
Field Description
Name The default value is %P1% or {P1} based on the selection of data source.
Specify the same name in Query or in fields that use the value of the attribute.
Show / Add Test Click this to display the test value, and specify a value in Test value.
Values?
This value is used later when testing the query string or the web service.
For REST web service, the input parameters can be used in creating resource API
path, request headers, request body and the Advanced: Javascript response
parsing functions. These can be tested using the test values. To use the input
parameters, you must provide the parameter in the {<parameter name>}
format, such as {P1}.
When you click Test, the Test Results pane displays the status of the request and
response based on the specified values.
NOTE: For LDAP and database, the attribute source does not support multi-valued inputs. If you
input multiple values, only one value is picked for the calculation.
For REST web service, the attribute source supports multi-valued inputs for a parameter.
6 (Conditional) For LDAP or database, specify the following details in Step 2: Provide query and
output parameters:
Field Description
The query must use the value specified in Step 1: Provide input parameters.
Test Click to test the input values based on the filter and output parameters.
For security reasons, you are prompted to enter the data source credentials. Test
Result displays the status along with the test results. You can also view the error
logs at the following location:
Linux: /opt/novell/nam/logs/adminconsole/tomcat/catalina.out
See “A Sample LDAP Scenario” on page 79 and “A Sample Database Scenario” on page 79.
7 (Conditional) For REST web service, specify the following details in Step 2: Configure Request
and Response:
Base URL Auto-populated based on the details specified for the data source.
Resource/API Specify the path of resource or API to be used along with the base URL to send a
Path request to the REST web service.
If REST web service requires the input parameters defined in Step 1: Provide input
parameters, select Plain Text or Javascript and use the parameter within
Resource/ API Path.
Plain Text Select this when you need to add simple values, such as a constant value and
unmodified input parameter values. You can use Plain Text in the following
scenarios:
If the REST web server requires a constant value, such as user1, to be
available in the resource/ API path, select Plain Text and specify Resource/
API Path as /getuserinfo/user1.
If the REST web server requires a user name to be available in Resource/ API
Path for different users, use the input parameter {P1} with the givenName
value to specify Resource/ API Path, such as /getuserinfo/{P1}.
Javascript Select this when you need to add and modify complex values in Resource/ API
Path. For example, if in the endpoint URL, REST web server requires the user’s
name in lower case along with the last name in lowercase, you can specify the
following in Resource/ API Path:
function main({P1},{P2})
var ret='/getuserinfo/'+ {P1}.toLowerCase()+"/
"+{P2}.toLowerCase();
return ret;
}
NOTE: The input parameter can include multiple values, such as email (it can have
values [email protected] and [email protected]). The multi-valued input
parameter in the JavaScript main function are sent as a JavaScript array. If this
attribute contains a single value for a specific user, this attribute is sent as a string
to the JavaScript main function. So, ensure to check whether a parameter is sent
as a string (single value) or as an array (multiple values) before processing it in the
JavaScript main function.
Method Select the request method that is accepted by the REST web server.
Request Headers Add request headers based on the REST endpoint configuration. By default, the
and Body Authorization header gets generated if you have selected Basic Auth during the
creation of the REST web service Data source.
You can add multiple headers for specific endpoints when configuring request
headers. You can use the input parameter in the header value such as, {P1}.
Specify the body message in plain text or JSON format. To specify the message
using JavaScript, select Javascript.
When you write a script, ensure that you request for the values that are either in
string or in JSON format.
Plain Text Select to include a constant input value or any input parameter value in the
request body.The following example helps in understanding how to use the values
in request body using plain text format:
If the body request should contain the constant values such as, john123
(userid), and abc (department) then you can specify Request Body as
{"userid": "john123", "department" : "abc"}
If the body request should contain some specific value that is variable and is
not modified, then you can specify Request Body as { "userid":
{P1}, "department" : {P2}}
Javascript Select to include a complex request body that requires modified input parameter
values.The following example helps in understanding how to use the values in
request body using JavaScript format:
Response To extract a specific response portion from the REST web server response, select
Parsing Function the required response parsing function from the list.
and Parameters
When a response is returned, you can use response parsing function to retrieve
specific parameters that get mapped to the response parameters. This helps in
retrieving the required values from the response. The Advanced: Javascript
response parsing function can return single value (string, number, JSON) or multi-
valued (array of strings, array of JSON) that get mapped to response parameters.
Choose the required response parsing function along with its inputs under
Response Parsing Function and Parameters. If you do not require to use the
functions, you can choose No Response Parsing Function.
For more information about each function, see “Response Parsing Functions” on
page 86.
Add Click to add parameter names to map to the values retrieved from the analyzed
response.
{
attribute1: "abc"
attribute2: "pqr"
}
You get Response_As_Is under Response Parameters and you can specify
attribute1 and attribute2 under Response Parameters. This maps
the Response Parameters to the attribute values in the JSON response.
Hence, attribute1 is mapped to abc and attribute2 is mapped to
pqr.
Sample Array Response:
result[0]
result[1]
You get Response_As_Is under Response Parameters and you can specify
param1 and param2 under Response Parameters. This maps the Response
Parameters to the attribute values in the array response. Hence, param1 is
mapped to result[0] and param2 is mapped to result[1].
For more information about mapping the parameters with the required
attribute, see “Retrieving Attributes from a REST Web Service” on page 85.
{"id":"cn={P1},cn=system,cn=usrapplication,ou=abc,ou=example,o=com"
}
]
}
e. Select JSON Parse with Match Conditions.
f. Specify the following Inputs:
JSON Array Parse String: roles
IMPORTANT: If the attribute source is being used by a virtual attribute, you need to update Identity
Server every time you edit the properties of an attribute source.
NOTE: You cannot delete a virtual attribute that is being used by an attribute set. Before deleting a
virtual attribute, ensure that it is not being used by a policy.
Field Description
Name Specify a name for the attribute. If you use advanced JavaScript option, specify the
same name in Advanced JavaScript. The default value is P1.
Parameter Select an attribute from the list. To specify additional values, click +.
Value
NOTE: If an attribute source returns a null or an empty value, the corresponding
input parameter takes an empty string value.
Show / Add Click to display Test value. You can add, edit, and delete a test value.
Test Values?
5 Click Step 2: Provide a modification function and specify the following details:
Select a function: Select a function. The corresponding JavaScript is displayed in Script.
Expand the script to view. You can further customize these scripts and use them in
Advanced JavaScript.
The following table lists the pre-defined JavaScript functions with examples:
To UpperCase Converts the input value to upper case.This If P1=alice, then the
function works on arrays and single-valued input. It result displays ALICE.
uses the toUpperCase() JavaScript function.
To LowerCase Converts the input value to lower case.This function If P1=ALICE, then the
works on arrays and single-valued input. It uses the result displays alice.
toLowerCase() JavaScript function.
Find and Finds and replaces a string from all instances of the If P1=abcde
Replace input value.
Find=e
Works only on one input parameter that is selected
in Step 1: Provide input parameters Replace=a, then the
result displays abcda
Regex Replace Finds and replaces a substring from all instances of If [email protected]
the input value by using a regular expression.
[email protected]
For example, to search /, you must escape it first
using \. Use the following syntax: /\// Replace=@microfocus.
com
This function works on arrays and single-valued
input. It uses the following JavaScript functions: The result displays:
replace() [email protected]
[email protected],
[email protected]
Works only on one input parameter that is selected Then, the result
in Step 1: Provide input parameters displays:
abc+ def
Multi value
Separator=:
Advanced Specify a customized JavaScript In this field. You See the “Sample
JavaScript need to create a JavaScript function with name JavaScripts with
“main” and specify the code in it. You can write Examples” on page 92.
your custom code or you can also copy the existing
pre-defined code.You can also call multiple
functions in the “main” function.
IMPORTANT: After JavaScript processing, if the output is a null value, the value of the
virtual attribute is empty.
The pre-defined function can handle both single-valued and multi-valued inputs. If the
input is multi-valued, the pre-defined function is applied on each values.
Advanced JavaScript:
Sample JavaScript:
function main(P1, P2)
{
//some logic
//you can call yourFunction(name) and use its return value
return some value;
}
function yourFunction(name)
{
//some code
//return some value;
}
For advanced JavaScript, the input parameter name in the main function of the JavaScript
must match the input parameter name specified in Step 1: Provide input parameters. The
return value can be a single value or an array.
When the input is multi-valued, it is sent as an array to the main function.
When Identity Server computes the value of a virtual attribute, it calls a function named
main that is available in the script provided for it. The value (single value or array) returned
by main is the value of the virtual attribute.
For example: Consider a scenario where P1 contains bmw and nissan, you can use the
JavaScript instanceof function to check if the input is single-valued or multi-valued. If it
is multi-valued, then JavaScript iterates over the values P1=['bmw', 'nissan']
function main (P1){
if( P1 instanceof Array) {
var a =P1[0] //will assign 'bmw' value to variable a
//do something
}
else{
// if the P1 is single value not a array
//do something
}
}
IMPORTANT: You must update Identity Server every time you edit the properties of a virtual
attribute.
To change the body content to JavaScript and provide cn from defined input parameters, perform
the following steps:
1 In Step1: Provide input parameters, specify {P1} as input parameter with parameter value cn.
Add the test values for {P1} as user and system.
2 In step 2: Configure Request and Response, change the request body message as follows:
function main({P1}) {
var cnValues = "cn=" + {P1}[0] + ",cn=" + {P1}[1]+
",cn=userapplication,cn=app1,ou=example,o=com";
var json = {
"users": [
{"id":cnValues}
]
};
return json;
}
You can provide multiple test values to a parameter {P1} and use the values as array in the JavaScript
function for Resource/ API Path and Body.
NOTE: If {P1} has only one input value, Access Manager interprets {P1} in JavaScript as a string and
not as an array. Hence, for a single input value use {P1} instead of using {P1}[0].
If multiple values are available for {P1}, JavaScript returns all elements that are separated by a
comma (,). For example, test1,test2. Whereas, {P1} in plain text returns only the first value. For
example, test1.
{ "name": "pqr",
"id": 223,
"subjects": [
"Spanish"
],
"department": "Dept1",
"branch": "IND"
}]
}
This sample response is used as an example for JSON Parse, JSON Parse with Match Conditions, JSON
Parse with Match Regex, and Advanced: Javascript.
JSON Parse with Match Conditions: This function finds an array from the response and then
apply match conditions on the array elements to find the attribute that matches all the
conditions. The following table includes the sample input value and its result when the data of a
student whose department is dept1 is retrieved:
Scenario: The value of students attribute that includes the attribute name department with
value dept1 is retrieved.
The full JSON response is displayed for name and id as the specified
regex condition is true for both dept1 and Dept1. As two matches
are available for the specified condition, the parameters are mapped
to two separate JSONs.
Scenario: Attribute values of the attributes are retrieved from the students JSON of array that
includes the attribute name as department and the value must be only dept1.
Name: id id=1234
department The exact match for both response parameters are displayed as
one match is available for name and one match for id in the
Regex: /dept1/ response that meets the mentioned condition.
Advanced JavaScript: Use this if you require any custom JavaScript to parse any kind of data
returned by a web service. If a function is an array, the order of the parameters under Response
Parameters is significant. However, the order is not significant for JSON as it maps to the same
name. The following is an example script for parsing the response with Advanced: Javascript:
XML Parse with XPath: You can use this if the web service response is in the form of XML, and
you require to provide the XPath to extract the attribute from the xml based on the standard
XPath format.
Sample Response in xml format (Response_As_Is): The following is a sample response that is
sent by a REST web service:
/bookstore/ All values are retrieved from title nodes in test test=[Harry Potter,
book/title/text() the xml response. Learning XML, ABCD]
/bookstore/ The value is retrieved from title nodes test test=Harry Potter
book[1]/title/ within the first book node in the xml
text() response.
Response Parameters: When you select a response parsing function, you require to specify an
output parameter under Response Parameters to get the required parameter mapped to the output
parameter. You can use the parameter name specified under Response Parameters while configuring
virtual attributes.
function main(P1){
return "PID:"+P1;
}
4 Test the script. The results return: PID: P1. For example, if partnerID=part123, then, the test
result is PID:part123.
5 Update Identity Server.
6 Use it in the Identity injection policy.
Example 2:
Consider a scenario where the authenticated user, named Carlos, is a manager and has
administrator rights to a protected human resource application. When Carlos accesses this
application, his roles must be passed to the application.
Example 3:
Consider a scenario where an Access Manager user wants to access Amazon Web Services (AWS).
AWS has multiple roles and each AWS role can have various access rights or policies assigned to it.
Based on the level of access, you can access authorized Amazon services. This information about
roles must be sent dynamically by Access Manager to AWS to provide single sign-on to the Access
Manager user.
For more information about AWS configuration, see Section 4.2.12, “Integrating Amazon Web
Services with Access Manager,” on page 670.
In this scenario, you have a constant value created using <Role ARN, Trusted SAML Provider ARN>
mapped to Remote AWS attribute Role (this value is the AWS format).
Suppose you have configured the admin and finance roles in AWS. The following are role ARNs:
For admin: arn:aws:iam::638116851885:role/admin
For finance: arn:aws:iam::638116851885:role/finance
Example 4:
You want to send the groups associated with the user to a service provider named cloudsp. However,
you want to send only the groups relevant to that service, and not the complete group DN. Check for
a function that checks if the group cn starts with “cloudsp”. If available, send it to the group cn.
In this scenario, the cn of the groups relevant to cloudsp start with “cloudsp”. For example,
"cn=cloudspa,ou=group,o=mycompany". So, when a cloudsp user authenticates at Identity Server,
you need to extract all cn values from the local LDAP attribute groupMembership and filter only
those names starting with cloudsp and send it in assertion to cloudsp.
Solution:
1. In Step1: Provide input parameters, select P1 as an attribute which has the groups.
2. Use the following code in Step 2: Provide a modification function > Advanced Javascript:
function mapGroups(attribute){
var result = [];
if(attribute instanceof Array){
var j =0;
for(var i=0; i<attribute.length; i++){
var grp = checkGroup(attribute[i]);
if( grp != 'NA')
result[j++] = grp;
}
}else{
var grp = checkGroup(attribute);
if( grp != 'NA')
result[0] = grp;
}
return result;
}
function checkGroup(group){
if(/^cn=cloudsp.*,/.test(group) == true){
var startindex = 3;// it starts with cn
var endindex = group.indexOf(",");
return group.substring( startindex, endindex);
}else
return 'NA';
}
3. To test JavaScript, click the + and add multiple test values. Specify the test values:
cn=cloudspgroupa,ou=group,o=mycompany
cn=cloudspgroupb,ou=group,o=mycompany
cn=cloudspgroupk,ou=group,o=mycompany
cn=testgroupa,ou=group,o=mycompany
Output:
cloudspgroupa
cloudspgroupb
cloudspgroupk
Explanation:
The JavaScript in-built string function substring is used to extract the cn value from the group./
^cn=cloudsp.*,/.test(group) is a regular expression which matches a string that starts with cloudsp. It
has 0 or more characters followed by a comma (,).
Example 5:
(Utility Function Reuse) Consider a scenario where the Identity Server roles are in the format
companyX:rolename. A service provider abc wants the roles in the rolename format and in
upper case.
Example 6:
Consider a scenario where you do not want to modify an attribute value that is retrieved from an
external source. To send the same attribute value in the assertion to a federated provider or in a
policies, perform the following steps:
1. Click Devices > Identity Server > Shared Settings > Virtual Attributes > Virtual Attribute.
2. In Step1: Provide input parameters, select P1, and map it to an attribute retrieved from an
external source.
3. In Step 2: Provide a modification function, select Advanced JavaScript, and specify the following
script:
function main(P1){
return P1;
}
4. Test the script. The results returns the value of the attribute source specified as P1.
5. Update Identity Server.
NOTE: The corresponding trusted provider is not deleted. Delete the trusted provider manually.
Field Description
Server Specify the scheme, domain name or IP address, and port of the Advanced
Domain Authentication server.
Tenant Specify the name of the tenant that you want to use.
Name
This field populates the TOP tenant of Advanced Authentication by default. You can
(Access specify another tenant name that you want to use.
Manager 4.5
Service Pack
2 and later)
NOTE: When using the Plug-in-based methods, skip to Step 5 on page 104.
3 (Required only for OAuth-based approach) Select Integrate using OAuth under OAuth Event
Configuration.
4 (Required only for OAuth-based approach) Specify the following details:
Field Description
Event Name Specify an event name. This event name must be identical to the event name specified
in the Advanced Authentication administration portal.
Client ID Specify the client ID that was generated while creating the OAuth 2.0 event in the
Advanced Authentication administration portal.
Client Secret Specify the client secret that was generated while creating the OAuth 2.0 event in the
Advanced Authentication administration portal.
Webauth To use the Virtual Smartcard method, select Use the Advanced Authentication Virtual
Domain Smartcard. This populates the Webauth Domain URL.
(Access For example, if aaserver.domain.com is the DNS name of your web server then
Manager 4.5 webauth.domain.com is populated in Webauth Domain.
Service Pack
1 and later) When you enable this option, all the requests from Identity Server to OSP are
redirected to webauth.domain.com instead of aaserver.domain.com.
Access Manager uses the endpoint links to retrieve token and user details from the Advanced
Authentication server. These are default endpoint links. If the values of the URIs change
because of modification of the Advanced Authentication authorization server, then you can
change the values here.
Token URL /osp/a/TOP/auth/oauth2/ Access Manager uses this URL to exchange the
authcoderesolve authorization code with the access token.
User Info URL /osp/a/TOP/auth/oauth2/ Access Manager sends the access token to this
getattributes URL to get the user details from the Advanced
Authentication server.
The fields under Integration URLs are auto-populated after you specify the server domain
address.
IMPORTANT: If the values are not auto-populated then specify the default values as mentioned
in the following table.
Sign Data URL /osp/a/TOP/auth/oauth2/sign Access Manager uses this URL to retrieve the
signed data from the Advanced Authentication
server.
5 Click Apply.
6 Proceed with Section 4.3.3, “NetIQ Advanced Authentication,” on page 707 to create Advanced
Authentication classes.
IMPORTANT: Integration Links displays default URLs. These URLs must be modified to match the
URLs specified on the Self Service Password Reset server.
If you modify the integration links in the Self Service Password Reset server then you must
specify the same integration links in SSPR Portal Links and REST APIs. The values specified in
Integration Links come after Published SSPR URL to form a destination path.
IMPORTANT: In some of the default URLs, forwardURLs are appended to ensure that the user is
forwarded to correct URLs after performing the corresponding tasks.
User Profile URL: If a forwardURL is provided, the user is redirected to that URL after updating
user profile in user portal page. For example, if User Profile URL is set to /
private?forwardURL=https://idp.b2c.com:8443/nidp/portal, then the user is
directed to that URL after profile update.
User Registration URL: If a forwardURL is provided, the user is redirected to that URL after
registering as a new user on B2C portal page. For example, if User Registration URL is set to /
private?forwardURL=https://idp.b2c.com:8443/nidp/portal, then the user is
directed to that URL after registration.
Auto Registration URL: It automatically registers users when users log in using social
authentication. It compares the user specified attributes to the stored attributes. Specify /
public/newuser/profile/Social.
Forgot Password URL: If a forwardURL is provided, the user is redirected to that URL after
password reset. For example, if Forgot Password URL is set to /
private?forwardURL=https://idp.b2c.com:8443/AGLogout, then the user is directed
to that URL after the user resets password.
NOTE: Forgot Password URL is not accessible if the Logout after password change option is
enabled in Change Password module of Self Service Password Reset.
Health API: It is used to obtain the health status of the Service Password Reset server. The
default URL is /public/rest/health.
Back Channel Request Signing API: Access Manger uses this API to obtain information from Self
Service Password Reset server. The default URL is /public/rest/signing/form.
Connection Timeout: It is the time specified to establish the connection with Self Service
Password Reset server. The connection must establish within the specified time.
Read Timeout: It is the time specified to obtain information from the Self Service Password
Reset server after establishing the connection. Access Manager must obtain information within
the specified time.
Protected resource names need to be unique to the proxy service, but they don’t need to be unique
to Access Gateway because they are always accessed through their proxy service. For example, if you
have a proxy service named account and a proxy service named sales, they both can have a
protected resource named public.
This first reverse proxy is used for authentication. You need to configure the proxy service to use the
DNS name of Access Gateway as its Published DNS Name, and the web server and the resource on
that web server need to point to the page you want displayed to the users when they first access
your website. You can use Access Gateway configuration options to allow this first page to be a
public site with no authentication required until the users access the links on the page, or you can
require authentication on this first page.
Figure 2-2 Basic Configuration
Server 1 Server 3
Identity Server LDAP Directory
Server 2 Server 4
Access Gateway Web Server
Complete the following steps to first configure a protected resource as a public resource and then to
modify the configuration to require authentication:
1 Click Devices > Access Gateways, Edit > Reverse Proxy / Authentication.
2 In Identity Server Cluster, select the configuration you have assigned to Identity Server.
This sets up the trust relationship between Access Gateway and Identity Server that is used for
authentication.
3 In Reverse Proxy List, click New, specify a display name for the reverse proxy, and click OK.
4 Enable a listening address.
Field Description
Published DNS Name The DNS name you want the public to use to access your site. For this first
proxy server, the DNS name must resolve to Access Gateway IP address that
you selected as the listening address. For example, in Figure 2-2, this name
would be www.mytest.com.
Web Server IP Address The IP address of your web server. This is the web server with content that
you want to share with authorized users and protect from others. In Figure
2-2, this is Server 4, whose IP address is 10.15.70.21.
Host Header The name you want to send in the HTTP header to the web server. This can
either be the published DNS Name (the Forward Received Host Name
option) or the DNS name of the web Server (the Web Server Host Name
option).
Web Server Host Name The DNS name that Access Gateway must forward to the web server. This
option is not available if you select Forward Received Host Name for the
Host Header option. The name you use depends upon how you have set up
the web server. If your web server has been configured to verify that the
host name in the header matches its name, specify that name here. In
Figure 2-2, the Web Server Host Name is mywebserver.com.
9 Click OK.
10 Continue with Section 2.4.2, “Configuring a Public Protected Resource,” on page 108.
IMPORTANT: You must not modify the default NAM-Service proxy service.
2
3
4
1 5
Web Server
L4 Switch
Clustered
Access Gateways
1. The user requests access to a protected resource by sending a request to the L4 switch. The
request is sent to one of Access Gateway servers in the cluster.
2. Access Gateway redirects the request to Identity Server for authentication. Identity Server
presents the user with a login page, requesting a user name and a password.
3. Identity Server verifies the user’s credentials with the directory.
4. The validated credentials are sent through the L4 switch to the same Access Gateway that first
received the request.
5. Access Gateway verifies the user credentials with Identity Server.
6. If the credentials are valid, Access Gateway forwards the request to the web server.
IMPORTANT: You must not use a DNS round robin setup instead of an L4 switch for load balancing.
The DNS solution works only as long as all members of the cluster are working and in a good state. If
one of them goes down and traffic is still sent to that member, the entire cluster is compromised and
starts generating errors.
The following sections describe how to set up and manage a cluster of Access Gateways:
Section 2.5.1, “Prerequisites for Configuring an Access Gateways Cluster,” on page 114
Section 2.5.2, “Designing the Membership Type for a Cluster,” on page 114
Section 2.5.3, “Configuring a Cluster,” on page 115
Section 2.5.4, “Managing Access Gateway Cluster Configuration,” on page 116
IMPORTANT: If you have created a configuration for one or more of Access Gateways you are going
to put in a cluster, you need to carefully select the primary cluster server. The current configuration
of the primary cluster server is pushed to the other servers in the cluster. If you have created
configurations for the other servers in the cluster, these configurations are overwritten.
2
3
4
4 Identy Injecon
6 7
1
User Access Gateway Web Server Web Page
(with basic authencaon)
Web Servers
Proxy Service Caching
HTML Rewriting
Logging
URLs
Authentication Contracts and Procedures
Protected Resource Authorization
Identity Injection
Form Fill
This hierarchy allows you to have precise control over what is required to access a particular
resource, and also allows you to provide a single sign-on solution for all the resources protected by
Access Gateway. The authentication contract, authentication procedure, Authorization policy,
Identity Injection policy, and Form Fill policy are configured at the resource level so that you can
enable exactly what the resource requires. This allows you to decide where access decisions are
made:
You can configure Access Gateway to control access to the resource.
You can configure the web server for access control and configure Access Gateway to supply the
required information.
You can use the first method for some resources and the second method for other resources or
use both methods on the same resource.
Close
Close
Close response
Close response
<IfModule mpm_worker_module>
ThreadLimit 3000
StartServers 9
ServerLimit 10
MaxClients 30000
MinSpareThreads 9000
MaxSpareThreads 9000
ThreadsPerChild 3000
MaxRequestsPerChild 0
</IfModule>
2 In the /etc/init.d/novell-apache2 file, set the ulimit value to 8192 by using the
command ulimit -n 8192.
3 Restart Apache.