Skip to content

Commit e6c1194

Browse files
committed
draft complete
1 parent 6e67289 commit e6c1194

File tree

8 files changed

+75
-58
lines changed

8 files changed

+75
-58
lines changed

articles/api-management/TOC.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,13 @@
8585
href: /security/benchmark/azure/baselines/api-management-security-baseline?toc=/azure/api-management/&bc=/azure/api-management/breadcrumb/toc.json
8686
- name: Authentication and authorization
8787
href: authentication-authorization-overview.md
88+
- name: API security
89+
items:
90+
- name: Defender for APIs (preview)
91+
href: protect-with-defender-for-apis.md
92+
- name: Mitigate OWASP API threats
93+
href: mitigate-owasp-api-threats.md
94+
displayName: OWASP top 10, vulnerability, vulnerabilities
8895
- name: Observability
8996
href: observability.md
9097
displayName: monitoring
@@ -286,11 +293,6 @@
286293
href: api-management-howto-manage-protocols-ciphers.md
287294
- name: Defend against DDoS attacks
288295
href: protect-with-ddos-protection.md
289-
- name: Mitigate OWASP API threats
290-
href: mitigate-owasp-api-threats.md
291-
displayName: OWASP top 10, vulnerability, vulnerabilities
292-
- name: Protect APIs with Defender for APIs
293-
href: protect-with-defender-for-apis.md
294296
- name: Manage API authorizations
295297
items:
296298
- name: Authorizations overview

articles/api-management/api-management-gateways-overview.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ The following table compares features available in the managed gateway versus th
7676
| [TLS settings](api-management-howto-manage-protocols-ciphers.md) | ✔️ | ✔️ | ✔️ |
7777
| **HTTP/2** (Client-to-gateway) ||| ✔️ |
7878
| **HTTP/2** (Gateway-to-backend) ||| ✔️ |
79+
| API threat detection with [Defender for APIs](protect-with-defender-for-apis.md) | ✔️ |||
7980

8081
<sup>1</sup> Depends on how the gateway is deployed, but is the responsibility of the customer.<br/>
8182
<sup>2</sup> Connectivity to the self-hosted gateway v2 [configuration endpoint](self-hosted-gateway-overview.md#fqdn-dependencies) requires DNS resolution of the default endpoint hostname; custom domain name is currently not supported.<br/>
192 KB
Loading
233 KB
Loading
175 KB
Loading
170 KB
Loading

articles/api-management/mitigate-owasp-api-threats.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn how to protect against common API-based vulnerabilities, as i
44
author: mikebudzynski
55
ms.service: api-management
66
ms.topic: conceptual
7-
ms.date: 05/31/2022
7+
ms.date: 04/13/2023
88
ms.author: mibudz
99
---
1010

@@ -14,6 +14,9 @@ The Open Web Application Security Project ([OWASP](https://owasp.org/about/)) Fo
1414

1515
The OWASP [API Security Project](https://owasp.org/www-project-api-security/) focuses on strategies and solutions to understand and mitigate the unique *vulnerabilities and security risks of APIs*. In this article, we'll discuss recommendations to use Azure API Management to mitigate the top 10 API threats identified by OWASP.
1616

17+
> [!NOTE]
18+
> In addition to following the recommendations in this article, you can enable [Defender for APIs](https://aka.ms/apiSecurityOverview) (preview), a capability of Microsoft Defender for Cloud, for API security insights, recommendations, and threat detection. [Learn more about using Defender for APIs with API Management](protect-with-defender-for-apis.md)
19+
1720
## Broken object level authorization
1821

1922
API objects that aren't protected with the appropriate level of authorization may be vulnerable to data leaks and unauthorized data manipulation through weak object access identifiers. For example, an attacker could exploit an integer object identifier, which can be iterated.
@@ -308,7 +311,10 @@ More information about this threat: [API10:2019 Insufficient logging and monito
308311

309312
## Next steps
310313

314+
Learn more about:
315+
311316
* [Authentication and authorization in API Management](authentication-authorization-overview.md)
312317
* [Security baseline for API Management](/security/benchmark/azure/baselines/api-management-security-baseline)
313318
* [Security controls by Azure policy](security-controls-policy.md)
314319
* [Landing zone accelerator for API Management](/azure/cloud-adoption-framework/scenarios/app-platform/api-management/landing-zone-accelerator)
320+
* [Defender for APIs](https://aka.ms/apiSecurityOverview)
Lines changed: 60 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,100 +1,108 @@
11
---
2-
title: Protect APS in API Management with Defender for APIs
3-
description: Learn how to use Azure Defender for APIs to identify and protect API threat in your Azure API Management instance.
2+
title: Protect APIs in API Management with Defender for APIs
3+
description: Learn how to enable enhanced API security features in Azure API Management by using Microsoft Defender for Cloud.
44
services: api-management
55
author: dlepow
66

77
ms.service: api-management
88
ms.topic: how-to
9-
ms.date: 04/06/2023
9+
ms.date: 04/14/2023
1010
ms.author: danlep
1111
---
12-
# Use Azure Defender for APIs to protect against API threats
12+
# Enable enhanced API security features using Microsoft Defender for Cloud
1313
<!-- Update links to D4APIs docs when available -->
14-
This article shows how to identify and protect against API threats exposed in your API Management instance by using Azure [Defender for APIs](https://aka.ms/apiSecurityOverview) (preview). Background about this feature and considerations for use are also provided.
1514

16-
[!INCLUDE [api-management-availability-premium-dev-standard-basic](../../includes/api-management-availability-premium-dev-standard-basic.md)]
15+
Defender for APIs (preview), a new capability of Microsoft Defender for Cloud, offers full lifecycle protection, detection, and response coverage for APIs that are managed in Azure API Management. The service empowers security practitioners to gain visibility into their business-critical APIs, understand their security posture, prioritize vulnerability fixes, and detect active runtime threats within minutes.
1716

18-
## Preview limitations
17+
This article shows how to use the Azure portal to enable Defender for APIs from your API Management instance and view a summary of security recommendations and alerts for onboarded APIs. You can also enable Defender for APIs directly in the Microsoft Defender for Cloud console, where more API security insights and inventory experiences are available.
1918

20-
* Currently, Defender for APIs only discovers and analyzes REST APIs.
21-
* This feature isn't supported in the API Management [self-hosted gateway](self-hosted-gateway-overview.md).
22-
* This feature isn't supported for APIs in API Management [workspaces](workspaces-overview.md).
23-
* In [multi-region](api-management-howto-deploy-multi-region.md) deployments of API Management, some ML-based detections, data classification capabilities, and security insights that are available in the primary region currently don't work in secondary regions. In secondary regions, data residency requirements are still met.
19+
To learn more, see:
2420

25-
## Benefits
21+
* [Microsoft Defender for APIs – Benefits and features](https://aka.ms/apiSecurityOverview)
22+
* [Microsoft Defender for Cloud](/azure/defender-for-cloud/defender-for-cloud-introduction)
2623

27-
Defender for APIs, a part of Microsoft [Defender for Cloud](/azure/defender-for-cloud/defender-for-cloud-introduction), offers full lifecycle protection, detection, and response coverage for APIs. The service empowers security practitioners to gain visibility into their business-critical APIs, understand their security posture, prioritize vulnerability fixes, and detect active runtime threats within minutes. Currently, the service supports APIs managed in Azure API Management.
24+
[!INCLUDE [api-management-availability-premium-dev-standard-basic](../../includes/api-management-availability-premium-dev-standard-basic.md)]
2825

29-
Defender for APIs has the following key capabilities:
26+
## Preview limitations
3027

31-
* **API inventory** - Discover and catalog all APIs managed in API Management.
28+
* Currently, Defender for APIs discovers and analyzes REST APIs only.
29+
* Defender for APIs currently doesn't onboard APIs that are exposed using the API Management [self-hosted gateway](self-hosted-gateway-overview.md) or managed using API Management [workspaces](workspaces-overview.md).
30+
* Some ML-based detections and security insights (data classification, authentication check, unused and external APIs) for instances with [multi-region](api-management-howto-deploy-multi-region.md) deployments aren't supported in secondary regions. In such cases, data residency requirements are still met. 
3231

33-
* **API security insights** - Identify external, unused, and unauthenticated APIs, and attack paths, and provide hardening recommendations.
32+
## Prerequisites
3433

35-
* **API data classification** - Classify APIs that handle sensitive data for risk prioritization.
34+
* At least one API Management instance in an Azure subscription. Defender for APIs is enabled at the level of a subscription.
35+
* One or more supported APIs must be imported to the API Management instance.
36+
* Permissions to [enable the Defender for APIs plan](azure/defender-for-cloud/permissions).
37+
* Owner or Contributor permissions on the API Management instance.
3638

37-
* **OWASP API Top 10 threat detection** - Detect exploits using ML-based and rule-based detections, monitor API traffic for compromise.
39+
## Onboard to Defender for APIs
3840

39-
* **Threat response** - Integrate or export alerts into SIEM systems for investigation and threat response workflows.
41+
Onboarding APIs to Defender for APIs is a two-step process: enabling the Defender for APIs plan, and onboarding unprotected APIs in your API Management instances.  
4042

41-
* **Integration with [cloud security graph](/azure/defender-for-cloud/concept-attack-path)** - Query API inventory, insights, and recommendations for prioritized remediation and attack path analysis.
43+
> [!CAUTION]
44+
> Onboarding APIs to Defender for APIs may increase compute, memory, and network utilization of your API Management instance. Do not onboard all APIs at one time if your API Management instance is running at high utilization. Use caution by gradually onboarding APIs, while monitoring the utilization of your instance (for example, using [the capacity metric](api-management-capacity.md)) and scaling out as needed.
4245
43-
## Prerequisites
46+
### Enable the Defender for APIs plan for a subscription
4447

45-
* One or more API Management instances in an Azure subscription. Defender for APIs is enabled at the level of an Azure subscription.
46-
* At least one REST API must be imported to an instance.
48+
1. Sign in to the [portal](https://portal.azure.com), and go to your API Management instance.
4749

48-
## Onboard to Defender for APIs
49-
Onboarding APIs from Azure API Management to Defender for APIs is a two-step process:  
50+
1. In the left menu, select **Microsoft Defender for Cloud (preview)**.
51+
52+
1. Select **Enable Defender on the subscription**.
5053

51-
1. First, enable the Defender for APIs plan for a subscription 
54+
:::image type="content" source="media/protect-with-defender-for-apis/enable-defender-for-apis.png" alt-text="Screenshot showing how to enable Defender for APIs in the portal.":::
5255

53-
1. Sign in to the [portal](https://portal.azure.com), and go to **Defender for Cloud**.
54-
1. In the left menu, select **Environment settings**
55-
1. In **Defender plans**, enable **APIs**.
56+
1. On the **Defender plan** page, select **On** for the **APIs** plan.
5657

57-
After the Defender for APIs plan is turned on, APIs in the API Management instances that are available for onboarding are listed on the **Recommendations** page.
58-
1. Next, onboard unprotected APIs to Defender for APIs
58+
1. Select **Save**.
5959

60-
1. In the portal, go to **Defender for Cloud** > **Recommendations**.
61-
1. Search for **Defender for APIs**.
62-
1. Under **Enable enhanced security features**, select **Azure API Management APIs should be onboarded to Defender for APIs**.
63-
1. Select an API that you wish to onboard to Defender for APIs from the list of **Unhealthy** resources.
64-
1. Select **Fix**.
6560

66-
For details, see [Quickstart: Enabling enhanced API security features from Microsoft Defender for Cloud](https://aka.ms/apiSecurityApimOnboarding).
61+
### Onboard unprotected APIs to Defender for APIs
6762

68-
> [!WARNING]
69-
> Onboarding APIs to Defender for APIs will increase compute and memory utilization by your API Management instance and may affect gateway performance. Onboard APIs gradually, monitor the gateway performance, and scale out the API Management instance as needed. For more information, see [Performance considerations](#performance-considerations).
63+
1. In the portal, go back to your API Management instance.
64+
1. In the left menu, select **Microsoft Defender for Cloud (preview)**.
65+
1. Under **Recommendations**, select **Azure API Management APIs should be onboarded to Defender for APIs**.
66+
:::image type="content" source="media/protect-with-defender-for-apis/defender-for-apis-recommendations.png" alt-text="Screenshot of Defender for APIs recommendations in the portal.":::
67+
1. On the next screen, review details about the recommendation:
68+
* Severity 
69+
* Refresh interval for security findings
70+
* Description and remediation steps
71+
* Affected resources, classified as **Healthy** (onboarded to Defender for APIs), **Unhealthy** (not onboarded), or **Not applicable**, along with associated metadata from API Management
72+
73+
> [!NOTE]
74+
> Affected resources include all API collections (that is, APIs and their associated operations) from all API Management instances under the subscription.
75+
76+
1. From the list of **Unhealthy** resources, select the API(s) that you wish to onboard to Defender for APIs.
77+
1. Select **Fix**, and then select **Fix resources**.
78+
:::image type="content" source="media/protect-with-defender-for-apis/fix-unhealthy-resources.png" alt-text="Screenshot of onboarding unhealthy APIs in the portal.":::
79+
1. Track the status of onboarded resources under **Notifications**.
7080

7181
> [!NOTE]
72-
> Defender for APIs will take 30 minutes to generate its first security insights after onboarding an API. Thereafter, security insights are refreshed every 30 minutes.
82+
> Defender for APIs takes 30 minutes to generate its first security insights after onboarding an API. Thereafter, security insights are refreshed every 30 minutes.
7383
>
7484
75-
## View security insights
76-
77-
After APIs are onboarded and security insights are generated, view security insights in the portal.
85+
## View security coverage
7886

79-
1. In the portal, go to **Defender for Cloud** > **Workload protections**.
80-
1. Select **API security**.
87+
After you onboard the APIs from API Management, Defender for APIs receives API traffic that will be used to build security insights and monitor for threats. Defender for APIs generates security recommendations for risky and vulnerable APIs.
8188

82-
Review security insights for an onboarded API (called an *API collection* in Defender for APIs) or operation (*API endpoint*).
89+
You can view a summary of all security recommendations and alerts for onboarded APIs by selecting **Microsoft Defender for Cloud (preview)** in the menu for your API Management instance:
8390

84-
## Performance considerations
91+
1. In the portal, go to your API Management instance and select **Microsoft Defender for Cloud (preview**) from the left menu.
92+
1. Review **Recommendations** and **Security insights and alerts**.
8593

86-
Onboarding APIs to Defender for APIs can affect the performance of the API Management instance in which they're managed. Onboard APIs gradually and monitor your API Management instances for performance changes. Performance impacts by Defender for APIs can be mitigated by scaling or upgrading an API Management instance.
94+
:::image type="content" source="media/protect-with-defender-for-apis/view-security-insights.png" alt-text="Screenshot of API security insights in the portal.":::
8795

88-
* **Reduced gateway performance** - The performance of your API Management gateway (throughput of API requests) may be reduced when many APIs are onboarded from an instance.
89-
* **Possible outage** - If you onboard multiple APIs from an API Management instance at one time, it is possible to cause a gateway outage.
90-
* **Monitor capacity metric** - Monitor the [capacity](api-management-capacity.md) metric to evaluate changes in the load on an API Management instance caused by onboarding to Defender for APIs. Look at long-term trends or averages when making decisions to [scale](api-management-capacity.md#use-capacity-for-scaling-decisions) an API Management instance
96+
For the security alerts received, Defender for APIs suggests necessary steps to perform the required analysis and validate the potential exploit or anomaly associated with the APIs. Follow the steps in the security alert to fix and return the APIs to healthy status.
9197

98+
To learn more about the benefits of Defender for APIs, including additional API inventory experiences within Defender for Cloud, see [Microsoft Defender for APIs – Benefits and features](https://aka.ms/apiSecurityOverview).
9299

93100
## Next steps
94101

95102
* Learn more about Defender for APIs:
96-
* [Benefits and features](https://aka.ms/apiSecurityOverview)
103+
* [Benefits and features](https://aka.ms/apiSecurityOverview)
97104
* [API security alerts](https://aka.ms/apiSecurityAlerts)
98105
* [API security threats](https://aka.ms/apiSecurityRecommendations)
99106
* [API security troubleshooting guide](https://aka.ms/apiSecurityTroubleshooting)
107+
* [Pricing](https://azure.microsoft.com/pricing/details/defender-for-cloud/)
100108
* Learn how to [upgrade and scale](upgrade-and-scale.md) an API Management instance.

0 commit comments

Comments
 (0)