Skip to content

Commit a1226b2

Browse files
authored
Update f5-big-ip-ldap-header-easybutton.md
1 parent a1c0673 commit a1226b2

File tree

1 file changed

+45
-60
lines changed

1 file changed

+45
-60
lines changed

articles/active-directory/manage-apps/f5-big-ip-ldap-header-easybutton.md

Lines changed: 45 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
---
2-
title: Configure F5 BIG-IP’s Easy Button for Header-based and LDAP SSO
3-
description: Learn to configure F5’s BIG-IP Access Policy Manager (APM) and Azure Active Directory (Azure AD) for secure hybrid access to header-based applications that also require session augmentation through Lightweight Directory Access Protocol (LDAP) sourced attributes.
2+
title: Configure the F5 BIG-IP Easy Button for Header-based and LDAP SSO
3+
description: Learn to configure the F5 BIG-IP Access Policy Manager (APM) and Azure AD for secure hybrid access to header-based applications that also require session augmentation through Lightweight Directory Access Protocol (LDAP) sourced attributes.
44
services: active-directory
55
author: gargi-sinha
66
manager: martinco
77
ms.service: active-directory
88
ms.subservice: app-mgmt
99
ms.topic: how-to
1010
ms.workload: identity
11-
ms.date: 11/15/2022
11+
ms.date: 12/14/2022
1212
ms.author: gasinh
1313
ms.collection: M365-identity-device-management
1414
---
@@ -17,7 +17,8 @@ ms.collection: M365-identity-device-management
1717

1818
In this article, you can learn to secure header and LDAP-based applications using Azure Active Directory (Azure AD), by using the F5 BIG-IP Easy Button Guided Configuration 16.1. Integrating a BIG-IP with Azure AD provides many benefits:
1919

20-
* Improved governance: See, [Zero Trust framework to enable remote work](https://www.microsoft.com/security/blog/2020/04/02/announcing-microsoft-zero-trust-assessment-tool/) and learn more about Azure AD pre-authentication. See also, [What is Conditional Access?](../conditional-access/overview.md) to learn about how it helps enforce organizational policies.
20+
* Improved governance: See, [Zero Trust framework to enable remote work](https://www.microsoft.com/security/blog/2020/04/02/announcing-microsoft-zero-trust-assessment-tool/) and learn more about Azure AD pre-authentication
21+
* See also, [What is Conditional Access?](../conditional-access/overview.md) to learn about how it helps enforce organizational policies
2122
* Full single sign-on (SSO) between Azure AD and BIG-IP published services
2223
* Manage identities and access from one control plane, the [Azure portal](https://portal.azure.com/)
2324

@@ -35,19 +36,14 @@ Having a BIG-IP in front of the app enables overlay of the service with Azure AD
3536

3637
The secure hybrid access solution for this scenario has:
3738

38-
**Application:** BIG-IP published service to be protected by Azure AD secure hybrid access (SHA)
39-
40-
**Azure AD:** Security Assertion Markup Language (SAML) Identity Provider (IdP) that verifies user credentials, Conditional Access (CA), and SAML-based SSO to the BIG-IP. With SSO, Azure AD provides the BIG-IP with required session attributes.
41-
42-
**HR system:** LDAP-based employee database as the source of truth for application permissions
43-
44-
**BIG-IP:** Reverse proxy and SAML service provider (SP) to the application, delegating authentication to the SAML IdP before performing header-based SSO to the back-end application
39+
* **Application** - BIG-IP published service to be protected by Azure AD secure hybrid access (SHA)
40+
* **Azure AD** - Security Assertion Markup Language (SAML) identity provider (IdP) that verifies user credentials, Conditional Access (CA), and SAML-based SSO to the BIG-IP. With SSO, Azure AD provides the BIG-IP with required session attributes.
41+
* **HR system** - LDAP-based employee database as the source of truth for application permissions
42+
* **BIG-IP** - Reverse proxy and SAML service provider (SP) to the application, delegating authentication to the SAML IdP, before performing header-based SSO to the back-end application
4543

4644
SHA for this scenario supports SP and IdP initiated flows. The following image illustrates the SP initiated flow.
4745

48-
![Secure hybrid access - SP initiated flow](./media/f5-big-ip-easy-button-ldap/sp-initiated-flow.png)
49-
50-
## User flow
46+
![Diagram of the secure hybrid access SP-initiated flow.](./media/f5-big-ip-easy-button-ldap/sp-initiated-flow.png)
5147

5248
1. User connects to application endpoint (BIG-IP)
5349
2. BIG-IP APM access policy redirects user to Azure AD (SAML IdP)
@@ -61,37 +57,26 @@ SHA for this scenario supports SP and IdP initiated flows. The following image i
6157

6258
Prior BIG-IP experience isn't necessary, but you need:
6359

64-
- An [Azure AD free](https://azure.microsoft.com/free/active-directory/) subscription, or above
65-
60+
- An [Azure free account](https://azure.microsoft.com/free/active-directory/), or above
6661
- A BIG-IP or [deploy a BIG-IP Virtual Edition (VE) in
6762
Azure](./f5-bigip-deployment-guide.md)
68-
6963
- Any of the following F5 BIG-IP license SKUs:
70-
7164
- F5 BIG-IP® Best bundle
72-
7365
- F5 BIG-IP Access Policy Manager™ (APM) standalone license
74-
7566
- F5 BIG-IP Access Policy Manager™ (APM) add-on license on a BIG-IP F5 BIG-IP® Local Traffic Manager™ (LTM)
76-
7767
- 90-day BIG-IP product [Free Trial](https://www.f5.com/trial/big-ip-trial.php)
78-
7968
- User identities [synchronized](../hybrid/how-to-connect-sync-whatis.md) from an on-premises directory to Azure AD
80-
81-
- An account with Azure AD application admin [permissions](/azure/active-directory/users-groups-roles/directory-assign-admin-roles#application-administrator)
82-
69+
- An account with Azure AD Application Admin [permissions](/azure/active-directory/users-groups-roles/directory-assign-admin-roles#application-administrator)
8370
- An [SSL Web certificate](./f5-bigip-deployment-guide.md#ssl-profile) for publishing services over HTTPS, or use default BIG-IP certificates while testing
84-
8571
- A header-based application or [set up a simple IIS header app](/previous-versions/iis/6.0-sdk/ms525396(v=vs.90)) for testing
86-
8772
- A user directory that supports LDAP, such as Windows Active Directory Lightweight Directory Services (AD LDS), OpenLDAP etc.
8873

8974
## BIG-IP configuration
9075

91-
This tutorial uses the latest Guided Configuration 16.1 with an Easy Button template. With the Easy Button, admins don't go back and forth between Azure AD and a BIG-IP to enable services for SHA. The deployment and policy management is handled between the APM Guided Configuration wizard and Microsoft Graph. This integration between BIG-IP APM and Azure AD ensures applications support identity federation, SSO, and Azure AD Conditional Access, reducing administrative overhead.
76+
This tutorial uses Guided Configuration 16.1 with an Easy Button template. With the Easy Button, admins don't go back and forth between Azure AD and a BIG-IP to enable services for SHA. The deployment and policy management is handled between the APM Guided Configuration wizard and Microsoft Graph. This integration between BIG-IP APM and Azure AD ensures applications support identity federation, SSO, and Azure AD Conditional Access, reducing administrative overhead.
9277

9378
>[!NOTE]
94-
>Replace example strings or values in this guide with those for your actual environment.
79+
>Replace example strings or values in this guide with those for your environment.
9580
9681
## Register Easy Button
9782

@@ -107,16 +92,16 @@ This first step creates a tenant app registration to authorize the **Easy Button
10792
6. Select **Register**.
10893
7. Navigate to **API permissions** and authorize the following Microsoft Graph **Application permissions**:
10994

110-
* Application.Read.All
111-
* Application.ReadWrite.All
112-
* Application.ReadWrite.OwnedBy
113-
* Directory.Read.All
114-
* Group.Read.All
115-
* IdentityRiskyUser.Read.All
116-
* Policy.Read.All
117-
* Policy.ReadWrite.ApplicationConfiguration
118-
* Policy.ReadWrite.ConditionalAccess
119-
* User.Read.All
95+
* Application.Read.All
96+
* Application.ReadWrite.All
97+
* Application.ReadWrite.OwnedBy
98+
* Directory.Read.All
99+
* Group.Read.All
100+
* IdentityRiskyUser.Read.All
101+
* Policy.Read.All
102+
* Policy.ReadWrite.ApplicationConfiguration
103+
* Policy.ReadWrite.ConditionalAccess
104+
* User.Read.All
120105

121106
8. Grant admin consent for your organization.
122107
9. On **Certificates & Secrets**, generate a new **client secret**. Make a note of this secret.
@@ -128,15 +113,15 @@ Initiate the APM **Guided Configuration** to launch the **Easy Button** template
128113

129114
1. Navigate to **Access > Guided Configuration > Microsoft Integration** and select **Azure AD Application**.
130115

131-
![Screenshot for Configure Easy Button, Install the template](./media/f5-big-ip-easy-button-ldap/easy-button-template.png)
116+
![Screenshot of the Azure AD Application option on Guided Configuration.](./media/f5-big-ip-easy-button-ldap/easy-button-template.png)
132117

133118
2. Review the list of steps and select **Next**
134119

135-
![Screenshot for Configure Easy Button, List configuration steps](./media/f5-big-ip-easy-button-ldap/config-steps.png)
120+
![Screenshot of the Next option.](./media/f5-big-ip-easy-button-ldap/config-steps.png)
136121

137122
3. Follow the steps to publish your application.
138123

139-
![Configuration steps](./media/f5-big-ip-easy-button-ldap/config-steps-flow.png#lightbox)
124+
![Screenshot of the configuration flow on Guided Configuration.](./media/f5-big-ip-easy-button-ldap/config-steps-flow.png#lightbox)
140125

141126

142127
### Configuration Properties
@@ -151,7 +136,7 @@ Some of these settings are global, therefore can be reused to publish more appli
151136
4. Confirm the BIG-IP can connect to your tenant.
152137
5. Select **Next**.
153138

154-
![Screenshot for Configuration General and Service Account properties](./media/f5-big-ip-easy-button-ldap/config-properties.png)
139+
![Screenshot of entries for General Properties and Azure Service Account Details, on Configuration Properties.](./media/f5-big-ip-easy-button-ldap/config-properties.png)
155140

156141
### Service Provider
157142

@@ -160,49 +145,49 @@ The Service Provider settings define the properties for the SAML SP instance of
160145
1. Enter **Host**, the public FQDN of the application being secured.
161146
2. Enter **Entity ID**, the identifier Azure AD uses to identify the SAML SP requesting a token.
162147

163-
![Screenshot for Service Provider settings](./media/f5-big-ip-easy-button-ldap/service-provider.png)
148+
![Screenshot of Host and Entity ID entries on Service Provider.](./media/f5-big-ip-easy-button-ldap/service-provider.png)
164149

165150
Use the optional **Security Settings** to specify whether Azure AD encrypts issued SAML assertions. Encrypting assertions between Azure AD and the BIG-IP APM provides assurance the content tokens can’t be intercepted, and personal or corporate data can't be compromised.
166151

167152
3. From the **Assertion Decryption Private Key** list, select **Create New**
168153

169-
![Screenshot for Configure Easy Button- Create New import](./media/f5-big-ip-oracle/configure-security-create-new.png)
154+
![Screenshot of the Create New option under Assertion Decryption Private Key, on Security Settings.](./media/f5-big-ip-oracle/configure-security-create-new.png)
170155

171156
4. Select **OK**. The **Import SSL Certificate and Keys** dialog opens in a new tab.
172157
5. Select **PKCS 12 (IIS)** to import your certificate and private key. After provisioning, close the browser tab to return to the main tab.
173158

174-
![Screenshot for Configure Easy Button- Import new cert](./media/f5-big-ip-oracle/import-ssl-certificates-and-keys.png)
159+
![Screenshot of Import Type, Certificate and Key Name, Certificate Key Source, and Password entries](./media/f5-big-ip-oracle/import-ssl-certificates-and-keys.png)
175160

176161
6. Check **Enable Encrypted Assertion**.
177162
7. If you enabled encryption, select your certificate from the **Assertion Decryption Private Key** list. BIG-IP APM uses this certificate private key to decrypt Azure AD assertions.
178163
8. If you enabled encryption, select your certificate from the **Assertion Decryption Certificate** list. BIG-IP uploads this certificate to Azure AD to encrypt the issued SAML assertions.
179164

180-
![Screenshot for Service Provider security settings](./media/f5-big-ip-easy-button-ldap/service-provider-security-settings.png)
165+
![Screenshot of Assertion Decryption Private Key and Assertion Decryption Certificate entries, on Security Settings.](./media/f5-big-ip-easy-button-ldap/service-provider-security-settings.png)
181166

182167
### Azure Active Directory
183168

184169
This section contains properties to manually configure a new BIG-IP SAML application in your Azure AD tenant. Easy Button has application templates for Oracle PeopleSoft, Oracle E-business Suite, Oracle JD Edwards, SAP ERP, and an SHA template for other apps.
185170

186171
For this scenario, select **F5 BIG-IP APM Azure AD Integration > Add**.
187172

188-
![Screenshot for Azure configuration add BIG-IP application](./media/f5-big-ip-easy-button-ldap/azure-config-add-app.png)
173+
![Screenshot of the Add option under Configuration Properties on Azure Configuration.](./media/f5-big-ip-easy-button-ldap/azure-config-add-app.png)
189174

190175
#### Azure Configuration
191176

192177
1. Enter **Display Name** of the app that the BIG-IP creates in your Azure AD tenant, and the icon that users see on [MyApps portal](https://myapplications.microsoft.com/).
193178
2. Make no entry for **Sign On URL (optional)**.
194179

195-
![Screenshot for Azure configuration add display info](./media/f5-big-ip-easy-button-ldap/azure-configuration-properties.png)
180+
![Screenshot of the Display Name entry under Configuration Properties on Azure Configuration.](./media/f5-big-ip-easy-button-ldap/azure-configuration-properties.png)
196181

197182
3. To locate the certificate you imported, select the **Refresh** icon next to the **Signing Key** and **Signing Certificate**.
198183
4. Enter the certificate password in **Signing Key Passphrase**.
199184
5. Enable **Signing Option** (optional) to ensure BIG-IP accepts tokens and claims signed by Azure AD.
200185

201-
![Screenshot for Azure configuration - Add signing certificates info](./media/f5-big-ip-easy-button-ldap/azure-configuration-sign-certificates.png)
186+
![Screenshot of Signing Key, Signing Certificate, and Signing Key Passphrase entries on SAML Signing Certificate.](./media/f5-big-ip-easy-button-ldap/azure-configuration-sign-certificates.png)
202187

203188
6. **User and User Groups** are dynamically queried from your Azure AD tenant and authorize access to the application. Add a user or group for testing, otherwise access is denied.
204189

205-
![Screenshot for Azure configuration - Add users and groups](./media/f5-big-ip-easy-button-ldap/azure-configuration-add-user-groups.png)
190+
![Screenshot of the Add option on User and User Groups.](./media/f5-big-ip-easy-button-ldap/azure-configuration-add-user-groups.png)
206191

207192
#### User Attributes & Claims
208193

@@ -213,7 +198,7 @@ For this example, include one more attribute:
213198
1. For **Claim Name** enter **employeeid**.
214199
2. For **Source Attribute** enter **user.employeeid**.
215200

216-
![Screenshot for user attributes and claims](./media/f5-big-ip-easy-button-ldap/user-attributes-claims.png)
201+
![Screenshot of the employeeid value under Additional Claims, on User Attributes and Claims.](./media/f5-big-ip-easy-button-ldap/user-attributes-claims.png)
217202

218203
#### Additional User Attributes
219204

@@ -226,12 +211,12 @@ On the **Additional User Attributes** tab, you can enable session augmentation f
226211
5. For **Service Port** enter 389, 636 (Secure), or another port your LDAP service uses.
227212
6. For **Base Search DN** enter the exact distinguished name of the location containing the account the APM will authenticate with for LDAP service queries.
228213

229-
![Screenshot for additional user attributes](./media/f5-big-ip-easy-button-ldap/additional-user-attributes.png)
214+
![Screenshot of LDAP Server Properties entries on Additional User Attributes.](./media/f5-big-ip-easy-button-ldap/additional-user-attributes.png)
230215

231216
7. For **Search DN** enter the distinguished name of the location containing the user account objects that the APM queries via LDAP.
232217
8. Set both membership options to **None** and add the name of the user object attribute to be returned from the LDAP directory. For this scenario: **eventroles**.
233218

234-
![Screenshot for LDAP query properties](./media/f5-big-ip-easy-button-ldap/user-properties-ldap.png)
219+
![Screenshot of LDAP Query Properties entries.](./media/f5-big-ip-easy-button-ldap/user-properties-ldap.png)
235220

236221
#### Conditional Access Policy
237222

@@ -249,7 +234,7 @@ To select a policy to be applied to the application being published:
249234
>[!NOTE]
250235
>Selected policies have an **Include** or **Exclude** option checked. If both options are checked, the selected policy is not enforced.
251236
252-
![Screenshot for CA policies](./media/f5-big-ip-kerberos-easy-button/conditional-access-policy.png)
237+
![Screenshot of excluded policies, under Selected Policies, on Conditional Access Policy.](./media/f5-big-ip-kerberos-easy-button/conditional-access-policy.png)
253238

254239
>[!NOTE]
255240
>The policy list is enumerated once, when you initially select this tab. Use the **Refresh** button to manually force the wizard to query your tenant. This button appears when the application is deployed.
@@ -263,7 +248,7 @@ A virtual server is a BIG-IP data plane object represented by a virtual IP addre
263248
3. Check **Enable Redirect Port** and then enter **Redirect Port** to redirects incoming HTTP client traffic to HTTPS.
264249
4. The Client SSL Profile enables the virtual server for HTTPS, so client connections are encrypted over TLS. Select the **Client SSL Profile** you created or leave the default while testing.
265250

266-
![Screenshot for Virtual server](./media/f5-big-ip-easy-button-ldap/virtual-server.png)
251+
![Screenshot of Desitnation Address, Service Port, and Common entries under General Properties on Virtual Server Properties.](./media/f5-big-ip-easy-button-ldap/virtual-server.png)
267252

268253
### Pool Properties
269254

@@ -273,7 +258,7 @@ The **Application Pool** tab has the services behind a BIG-IP represented as a p
273258
2. Choose the **Load Balancing Method** such as Round Robin.
274259
3. For **Pool Servers** select a node or specify an IP and port for the server hosting the header-based application.
275260

276-
![Screenshot for Application pool](./media/f5-big-ip-oracle/application-pool.png)
261+
![Screenshot of IP Address/Node Name and Port entries under Applicaiton Pool, on Pool Properties.](./media/f5-big-ip-oracle/application-pool.png)
277262

278263
>[!NOTE]
279264
>Our back-end application sits on HTTP port 80. Switch to 443 if yours is HTTPS.
@@ -294,7 +279,7 @@ Enabling SSO allows users to access BIG-IP published services without entering c
294279
* **Header Name:** eventroles
295280
* **Header Value:** %{session.ldap.last.attr.eventroles}
296281

297-
![Screenshot for SSO and HTTP headers](./media/f5-big-ip-easy-button-ldap/sso-headers.png)
282+
![Screenshot of SSO Headers entries under SSO Headers on SSO and HTTP Headers.](./media/f5-big-ip-easy-button-ldap/sso-headers.png)
298283

299284
>[!NOTE]
300285
>APM session variables in curly brackets are case-sensitive. For example, if you enter OrclGUID and the Azure AD attribute name is orclguid, an attribute mapping failure occurs.
@@ -328,7 +313,7 @@ From a browser, in the [Microsoft MyApps portal](https://myapplications.microsof
328313

329314
See the following screenshot for output of the injected headers in our headers-based application.
330315

331-
![Screenshot for App views](./media/f5-big-ip-easy-button-ldap/app-view.png)
316+
![Screenshot of output values under Server Variables on My Events.](./media/f5-big-ip-easy-button-ldap/app-view.png)
332317

333318
For increased security, organizations using this pattern can block direct access to the application, thereby forcing a strict path through the BIG-IP.
334319

@@ -340,7 +325,7 @@ In BIG-IP, you can disable the Guided Configuration **strict management mode**.
340325

341326
For your applications configurations, you can navigate to **Access > Guided Configuration** and select the small **padlock** icon on the far-right of the row.
342327

343-
![Screenshot for Configure Easy Button - Strict Management](./media/f5-big-ip-oracle/strict-mode-padlock.png)
328+
![Screenshot of the padlock option.](./media/f5-big-ip-oracle/strict-mode-padlock.png)
344329

345330
At this point, changes with the wizard UI are no longer possible, but all BIG-IP objects associated with the published instance of the application are unlocked for direct management.
346331

0 commit comments

Comments
 (0)