Skip to content

Commit 75d0a22

Browse files
authored
Merge pull request #216419 from dlepow/access
[APIM] Content access in dev portal
2 parents d7c84da + 8c0fbe5 commit 75d0a22

File tree

7 files changed

+51
-15
lines changed

7 files changed

+51
-15
lines changed

articles/api-management/api-management-howto-create-groups.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,8 @@ Once the association is added between the developer and the group, you can view
9696

9797
## <a name="next-steps"> </a>Next steps
9898

99-
* Once a developer is added to a group, they can view and subscribe to the products associated with that group. For more information, see [How create and publish a product in Azure API Management][How create and publish a product in Azure API Management],
100-
* In addition to creating and managing groups in the Azure portal, you can create and manage your groups using the API Management REST API [Group](/rest/api/apimanagement/apimanagementrest/azure-api-management-rest-api-group-entity) entity.
99+
* Once a developer is added to a group, they can view and subscribe to the products associated with that group. For more information, see [How create and publish a product in Azure API Management][How create and publish a product in Azure API Management].
100+
* You can control how the developer portal content appears to different users and groups you've configured. Learn more about [customizing the developer portal](api-management-howto-developer-portal-customize.md#customize-the-portals-content).
101101
* Learn how to manage the administrator [email settings](api-management-howto-configure-notifications.md#configure-email-settings) that are used in notifications to developers from your API Management instance.
102102

103103

articles/api-management/api-management-howto-developer-portal-customize.md

Lines changed: 40 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@ author: dlepow
66

77
ms.service: api-management
88
ms.topic: tutorial
9-
ms.date: 08/31/2021
9+
ms.date: 11/21/2022
1010
ms.author: danlep
11+
ms.custom: engagement-fy23
1112
---
1213

1314
# Tutorial: Access and customize the developer portal
@@ -25,7 +26,7 @@ In this tutorial, you learn how to:
2526
2627
You can find more details on the developer portal in the [Azure API Management developer portal overview](api-management-howto-developer-portal.md).
2728

28-
:::image type="content" source="media/api-management-howto-developer-portal-customize/cover.png" alt-text="API Management developer portal - administrator mode" border="false":::
29+
:::image type="content" source="media/api-management-howto-developer-portal-customize/cover.png" alt-text="Screenshot of the API Management developer portal - administrator mode." border="false":::
2930

3031
## Prerequisites
3132

@@ -80,14 +81,14 @@ If you're accessing the portal for the first time, the default content is automa
8081

8182
You can customize the content of the portal with the visual editor.
8283
* The menu sections on the left let you create or modify pages, media, layouts, menus, styles, or website settings.
83-
* The menu items on the bottom let you switch between viewports (for example, mobile or desktop), view the elements of the portal visible to authenticated or anonymous users, or save or undo actions.
84-
* Add rows to a page by clicking on a blue icon with a plus sign.
84+
* The menu items on the bottom let you switch between viewports (for example, mobile or desktop), view the elements of the portal visible to users in different groups, or save or undo actions.
85+
* Add sections to a page by clicking on a blue icon with a plus sign.
8586
* Widgets (for example, text, images, or APIs list) can be added by pressing a grey icon with a plus sign.
8687
* Rearrange items in a page with the drag-and-drop interaction.
8788

8889
### Layouts and pages
8990

90-
:::image type="content" source="media/api-management-howto-developer-portal-customize/pages-layouts.png" alt-text="Pages and layouts" border="false":::
91+
:::image type="content" source="media/api-management-howto-developer-portal-customize/pages-layouts.png" alt-text="Screenshot of the visual editor in the developer portal." border="false":::
9192

9293
Layouts define how pages are displayed. For example, in the default content, there are two layouts: one applies to the home page, and the other to all remaining pages.
9394

@@ -97,21 +98,21 @@ In the preceding image, content belonging to the layout is marked in blue, while
9798

9899
### Styling guide
99100

100-
:::image type="content" source="media/api-management-howto-developer-portal-customize/styling-guide.png" alt-text="Styling guide" border="false":::
101+
:::image type="content" source="media/api-management-howto-developer-portal-customize/styling-guide.png" alt-text="Screenshot of the styling guide in the developer portal." border="false":::
101102

102103
Styling guide is a panel created with designers in mind. It allows for overseeing and styling all the visual elements in your portal. The styling is hierarchical - many elements inherit properties from other elements. For example, button elements use colors for text and background. To change a button's color, you need to change the original color variant.
103104

104105
To edit a variant, select it and select the pencil icon that appears on top of it. After you make the changes in the pop-up window, close it.
105106

106107
### Save button
107108

108-
:::image type="content" source="media/api-management-howto-developer-portal-customize/save-button.png" alt-text="Save button" border="false":::
109+
:::image type="content" source="media/api-management-howto-developer-portal-customize/save-button.png" alt-text="Screenshot of the Save button in the developer portal." :::
109110

110111
Whenever you make a change in the portal, you need to save it manually by selecting the **Save** button in the menu at the bottom, or press [Ctrl]+[S]. When you save your changes, the modified content is automatically uploaded to your API Management service.
111112

112113
## Customize the portal's content
113114

114-
Before you make your portal available to the visitors, you should personalize the automatically generated content. Recommended changes include the layouts, styles, and the content of the home page.
115+
Before you make your portal available to the visitors, you should personalize the automatically generated content. Recommended changes include the layouts, styles, and the content of the home page. You can also make certain content elements accessible only to selected users or groups.
115116

116117
> [!NOTE]
117118
> Due to integration considerations, the following pages can't be removed or moved under a different URL: `/404`, `/500`, `/captcha`, `/change-password`, `/config.json`, `/confirm/invitation`, `/confirm-v2/identities/basic/signup`, `/confirm-v2/password`, `/internal-status-0123456789abcdef`, `/publish`, `/signin`, `/signin-sso`, `/signup`.
@@ -162,6 +163,35 @@ Although you don't need to adjust any styles, you may consider adjusting particu
162163
1. Select outside the pop-up windows to exit the container settings.
163164
1. Click **Save**.
164165

166+
### Visibility and access controls
167+
168+
You can control which portal content appears to different users, based on their identity. For example, you might want to display certain pages only to users who have access to a specific product or API. Or, make a section of a page appear only for certain [groups of users](api-management-howto-create-groups.md). The developer portal has built-in controls for these needs.
169+
170+
> [!NOTE]
171+
> Visibility and access controls are supported only in the managed developer portal. They are not supported in the [self-hosted portal](developer-portal-self-host.md).
172+
173+
* When you add or edit a page, select the **Access** tab to control the users or groups that can access the page
174+
175+
:::image type="content" source="media/api-management-howto-developer-portal-customize/page-access-control.png" alt-text="Screenshot of the page access control settings in the developer portal.":::
176+
177+
* When you customize page content such as a page section, menu, or button, select the **Change visibility** icon to control the users or groups that can see the element on the page
178+
179+
:::image type="content" source="media/api-management-howto-developer-portal-customize/change-visibility-button.png" alt-text="Screenshot of the change visibility button in the developer portal.":::
180+
181+
* You can change the visibility of the following page content: sections, menus, buttons, and sign-in for OAuth authorization.
182+
183+
* Media files such as images on a page inherit the visibility of the elements that contain them.
184+
185+
When a user visits the developer portal with visibility and access controls applied:
186+
187+
* The developer portal automatically hides buttons or navigation items that point to pages that a user doesn't have access to.
188+
189+
* An attempt by a user to access a page they aren't authorized to will result in a 404 Not Found error.
190+
191+
> [!TIP]
192+
> Using the administrative interface, you can preview pages as a user associated with any built-in or custom group by selecting the **Impersonate** icon in the menu at the bottom.
193+
>
194+
165195
### Customization example
166196

167197
In the following video, we demonstrate how to edit the content of the portal, customize the website's look, and publish the changes.
@@ -177,7 +207,7 @@ To make your portal and its latest changes available to visitors, you need to *p
177207
1. Make sure you saved your changes by selecting the **Save** icon.
178208
1. In the **Operations** section of the menu, select **Publish website**. This operation may take a few minutes.
179209

180-
:::image type="content" source="media/api-management-howto-developer-portal-customize/publish-portal.png" alt-text="Publish portal" border="false":::
210+
:::image type="content" source="media/api-management-howto-developer-portal-customize/publish-portal.png" alt-text="Screenshot of the Publish website button in the developer portal." border="false":::
181211

182212
### Publish from the Azure portal
183213

@@ -205,4 +235,5 @@ Learn more about the developer portal:
205235

206236
- [Azure API Management developer portal overview](api-management-howto-developer-portal.md)
207237
- [Migrate to the new developer portal](developer-portal-deprecated-migration.md) from the deprecated legacy portal.
238+
- Configure authentication to the developer portal with [usernames and passwords](developer-portal-basic-authentication.md), [Azure AD](api-management-howto-aad.md), or [Azure AD B2C](api-management-howto-aad-b2c.md).
208239
- Learn more about [customizing and extending](developer-portal-extend-custom-functionality.md) the functionality of the developer portal.

articles/api-management/api-management-howto-developer-portal.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ author: dlepow
88

99
ms.service: api-management
1010
ms.topic: article
11-
ms.date: 02/10/2022
11+
ms.date: 10/28/2022
1212
ms.author: danlep
1313
ms.custom: devx-track-azurepowershell
1414
---
@@ -23,14 +23,14 @@ As introduced in this article, you can customize and extend the developer portal
2323

2424
[!INCLUDE [premium-dev-standard-basic.md](../../includes/api-management-availability-premium-dev-standard-basic.md)]
2525

26-
## Migration from the legacy portal
26+
## Migrate from the legacy portal
2727

2828
> [!IMPORTANT]
2929
> The legacy developer portal is now deprecated and it will receive security updates only. You can continue to use it, as per usual, until its retirement in October 2023, when it will be removed from all API Management services.
3030
3131
Migration to the new developer portal is described in the [dedicated documentation article](developer-portal-deprecated-migration.md).
3232

33-
## Customization and styling of the managed portal
33+
## Customize and style the managed portal
3434

3535
Your API Management service includes a built-in, always up-to-date, **managed** developer portal. You can access it from the Azure portal interface.
3636

@@ -40,12 +40,14 @@ Your API Management service includes a built-in, always up-to-date, **managed**
4040

4141
* Take advantage of built-in widgets to add text, images, buttons, and other objects that the portal supports out-of-the-box.
4242

43+
* Control how the portal content appears to different [users and groups](api-management-howto-create-groups.md) configured in your API Management instance. For example, display certain pages only to groups that are associated with particular products, or to users that can access specific APIs.
44+
4345
> [!NOTE]
4446
> The managed developer portal receives and applies updates automatically. Changes that you've saved but not published to the developer portal remain in that state during an update.
4547
4648
## <a name="managed-vs-self-hosted"></a> Options to extend portal functionality
4749
In some cases you might need functionality beyond the customization and styling options provided in the managed developer portal. If you need to implement custom logic, which isn't supported out-of-the-box, you have [several options](developer-portal-extend-custom-functionality.md):
48-
* [Add custom HTML](developer-portal-extend-custom-functionality.md#use-custom-html-code-widget) directly through a developer portal widget designed for small customizations - for example, add HTML for a form or to embed a video player. The custom code is rendered in an inline frame (iframe).
50+
* [Add custom HTML](developer-portal-extend-custom-functionality.md#use-custom-html-code-widget) directly through a developer portal widget designed for small customizations - for example, add HTML for a form or to embed a video player. The custom code is rendered in an inline frame (IFrame).
4951
* [Create and upload a custom widget](developer-portal-extend-custom-functionality.md#create-and-upload-custom-widget) to develop and add more complex custom portal features.
5052
* [Self-host the portal](developer-portal-self-host.md), only if you need to make modifications to the core of the developer portal [codebase](https://github.com/Azure/api-management-developer-portal). This option requires advanced configuration. Azure Support's assistance is limited only to the basic setup of self-hosted portals.
5153

articles/api-management/developer-portal-self-host.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ This tutorial describes how to self-host the [API Management developer portal](a
1919
> * Maintaining and managing hosting infrastructure
2020
> * Manual updates, including for security patches, which may require you to resolve code conflicts when upgrading the codebase
2121
22+
> [!NOTE]
23+
> The self-hosted portal does not support visibility and access controls that are available in the managed developer portal.
24+
2225
If you have already uploaded or modified media files in the managed portal, see [Move from managed to self-hosted](#move-from-managed-to-self-hosted-developer-portal), later in this article.
2326

2427
[!INCLUDE [premium-dev-standard-basic.md](../../includes/api-management-availability-premium-dev-standard-basic.md)]
7.02 KB
Loading
25.6 KB
Loading
-1.02 KB
Loading

0 commit comments

Comments
 (0)