You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/active-directory/manage-apps/f5-big-ip-ldap-header-easybutton.md
+45-60Lines changed: 45 additions & 60 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,14 @@
1
1
---
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.
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:
19
19
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
21
22
* Full single sign-on (SSO) between Azure AD and BIG-IP published services
22
23
* Manage identities and access from one control plane, the [Azure portal](https://portal.azure.com/)
23
24
@@ -35,19 +36,14 @@ Having a BIG-IP in front of the app enables overlay of the service with Azure AD
35
36
36
37
The secure hybrid access solution for this scenario has:
37
38
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
45
43
46
44
SHA for this scenario supports SP and IdP initiated flows. The following image illustrates the SP initiated flow.
- 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)
83
70
- 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
-
85
71
- 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
-
87
72
- A user directory that supports LDAP, such as Windows Active Directory Lightweight Directory Services (AD LDS), OpenLDAP etc.
88
73
89
74
## BIG-IP configuration
90
75
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.
92
77
93
78
>[!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.
95
80
96
81
## Register Easy Button
97
82
@@ -107,16 +92,16 @@ This first step creates a tenant app registration to authorize the **Easy Button
107
92
6. Select **Register**.
108
93
7. Navigate to **API permissions** and authorize the following Microsoft Graph **Application permissions**:
109
94
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
120
105
121
106
8. Grant admin consent for your organization.
122
107
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
128
113
129
114
1. Navigate to **Access > Guided Configuration > Microsoft Integration** and select **Azure AD Application**.
130
115
131
-

116
+

132
117
133
118
2. Review the list of steps and select **Next**
134
119
135
-

120
+


140
125
141
126
142
127
### Configuration Properties
@@ -151,7 +136,7 @@ Some of these settings are global, therefore can be reused to publish more appli
151
136
4. Confirm the BIG-IP can connect to your tenant.
152
137
5. Select **Next**.
153
138
154
-

139
+

155
140
156
141
### Service Provider
157
142
@@ -160,49 +145,49 @@ The Service Provider settings define the properties for the SAML SP instance of
160
145
1. Enter **Host**, the public FQDN of the application being secured.
161
146
2. Enter **Entity ID**, the identifier Azure AD uses to identify the SAML SP requesting a token.
162
147
163
-

148
+

164
149
165
150
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.
166
151
167
152
3. From the **Assertion Decryption Private Key** list, select **Create New**
168
153
169
-

154
+

170
155
171
156
4. Select **OK**. The **Import SSL Certificate and Keys** dialog opens in a new tab.
172
157
5. Select **PKCS 12 (IIS)** to import your certificate and private key. After provisioning, close the browser tab to return to the main tab.
173
158
174
-

159
+

175
160
176
161
6. Check **Enable Encrypted Assertion**.
177
162
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.
178
163
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.
179
164
180
-

165
+

181
166
182
167
### Azure Active Directory
183
168
184
169
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.
185
170
186
171
For this scenario, select **F5 BIG-IP APM Azure AD Integration > Add**.
187
172
188
-

173
+

189
174
190
175
#### Azure Configuration
191
176
192
177
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/).
193
178
2. Make no entry for **Sign On URL (optional)**.
194
179
195
-

180
+

196
181
197
182
3. To locate the certificate you imported, select the **Refresh** icon next to the **Signing Key** and **Signing Certificate**.
198
183
4. Enter the certificate password in **Signing Key Passphrase**.
199
184
5. Enable **Signing Option** (optional) to ensure BIG-IP accepts tokens and claims signed by Azure AD.
200
185
201
-

186
+

202
187
203
188
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.
204
189
205
-

190
+

206
191
207
192
#### User Attributes & Claims
208
193
@@ -213,7 +198,7 @@ For this example, include one more attribute:
213
198
1. For **Claim Name** enter **employeeid**.
214
199
2. For **Source Attribute** enter **user.employeeid**.
215
200
216
-

201
+

217
202
218
203
#### Additional User Attributes
219
204
@@ -226,12 +211,12 @@ On the **Additional User Attributes** tab, you can enable session augmentation f
226
211
5. For **Service Port** enter 389, 636 (Secure), or another port your LDAP service uses.
227
212
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.
228
213
229
-

214
+

230
215
231
216
7. For **Search DN** enter the distinguished name of the location containing the user account objects that the APM queries via LDAP.
232
217
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**.
233
218
234
-

219
+

235
220
236
221
#### Conditional Access Policy
237
222
@@ -249,7 +234,7 @@ To select a policy to be applied to the application being published:
249
234
>[!NOTE]
250
235
>Selected policies have an **Include** or **Exclude** option checked. If both options are checked, the selected policy is not enforced.
251
236
252
-

237
+

253
238
254
239
>[!NOTE]
255
240
>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
263
248
3. Check **Enable Redirect Port** and then enter **Redirect Port** to redirects incoming HTTP client traffic to HTTPS.
264
249
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.
265
250
266
-

251
+

267
252
268
253
### Pool Properties
269
254
@@ -273,7 +258,7 @@ The **Application Pool** tab has the services behind a BIG-IP represented as a p
273
258
2. Choose the **Load Balancing Method** such as Round Robin.
274
259
3. For **Pool Servers** select a node or specify an IP and port for the server hosting the header-based application.
275
260
276
-

261
+

277
262
278
263
>[!NOTE]
279
264
>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

282
+

298
283
299
284
>[!NOTE]
300
285
>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
328
313
329
314
See the following screenshot for output of the injected headers in our headers-based application.
330
315
331
-

316
+

332
317
333
318
For increased security, organizations using this pattern can block direct access to the application, thereby forcing a strict path through the BIG-IP.
334
319
@@ -340,7 +325,7 @@ In BIG-IP, you can disable the Guided Configuration **strict management mode**.
340
325
341
326
For your applications configurations, you can navigate to **Access > Guided Configuration** and select the small **padlock** icon on the far-right of the row.
342
327
343
-

328
+

344
329
345
330
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.
0 commit comments