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
*[Import the OpenTelemetry Bills of Materials (BOM)](https://opentelemetry.io/docs/zero-code/java/spring-boot-starter/getting-started/).
104
+
* Add the [Spring Cloud Azure Starter Monitor](https://mvnrepository.com/artifact/com.azure.spring/cloud-starter-azure-monitor) dependency.
105
+
* Follow [these instructions](/azure//developer/java/spring-framework/developer-guide-overview#configuring-spring-boot-3) for the Azure SDK JAR (Java Archive) files.
106
+
107
+
For Quarkus native applications:
108
+
* Add the [Quarkus OpenTelemetry Exporter for Azure](https://mvnrepository.com/artifact/io.quarkiverse.opentelemetry.exporter/quarkus-opentelemetry-exporter-azure) dependency.
109
+
95
110
#### [Node.js](#tab/nodejs)
96
111
97
112
Install these packages:
@@ -202,6 +217,11 @@ Point the Java virtual machine (JVM) to the jar file by adding `-javaagent:"path
202
217
> [!TIP]
203
218
> If you develop a Spring Boot application, you can optionally replace the JVM argument by a programmatic configuration. For more information, see [Using Azure Monitor Application Insights with Spring Boot](./java-spring-boot.md).
204
219
220
+
221
+
##### [Java-Native](#tab/java-native)
222
+
223
+
Several automatic instrumentations are enabled through configuration changes; no code changes are required
224
+
205
225
##### [Node.js](#tab/nodejs)
206
226
207
227
```typescript
@@ -222,7 +242,7 @@ from azure.monitor.opentelemetry import configure_azure_monitor
222
242
# Import the tracing api from the `opentelemetry` package.
223
243
from opentelemetry import trace
224
244
225
-
# Configure OpenTelemetry to use Azure Monitor with the
245
+
# Configure OpenTelemetry to use Azure Monitor with the
- To review the source code, see the [Azure Monitor Java autoinstrumentation GitHub repository](https://github.com/Microsoft/ApplicationInsights-Java).
347
-
- To learn more about OpenTelemetry and its community, see the [OpenTelemetry Java GitHub repository](https://github.com/open-telemetry/opentelemetry-java-instrumentation).
348
-
- To enable usage experiences, see [Enable web or browser user monitoring](javascript.md).
349
-
- See the [release notes](https://github.com/microsoft/ApplicationInsights-Java/releases) on GitHub.
370
+
- Review the source code in the [Azure Monitor Java autoinstrumentation GitHub repository](https://github.com/Microsoft/ApplicationInsights-Java).
371
+
- Learn more about OpenTelemetry and its community in the [OpenTelemetry Java GitHub repository](https://github.com/open-telemetry/opentelemetry-java-instrumentation).
372
+
- Enable usage experiences by seeing [Enable web or browser user monitoring](javascript.md).
373
+
- Review the [release notes](https://github.com/microsoft/ApplicationInsights-Java/releases) on GitHub.
374
+
375
+
### [Java Native](#tab/java-native)
376
+
- See [Add and modify Azure Monitor OpenTelemetry](opentelemetry-add-modify.md) for details on adding and modifying Azure Monitor OpenTelemetry.
377
+
- Review the source code in the [Azure Monitor OpenTelemetry Distro in Spring Boot native image Java application](https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/spring/spring-cloud-azure-starter-monitor) and [Quarkus OpenTelemetry Exporter for Azure](https://github.com/quarkiverse/quarkus-opentelemetry-exporter/tree/main/quarkus-opentelemetry-exporter-azure).
378
+
- Learn more about OpenTelemetry and its community in the [OpenTelemetry Java GitHub repository](https://github.com/open-telemetry/opentelemetry-java-instrumentation).
379
+
- Learn more features for Spring Boot native image applications in [OpenTelemetry SpringBoot starter](https://opentelemetry.io/docs/zero-code/java/spring-boot-starter/.)
380
+
- Learn more features for Quarkus native applications in [Quarkus OpenTelemetry Exporter for Azure](https://quarkus.io/guides/opentelemetry).
381
+
- Review the [release notes](https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/spring/spring-cloud-azure-starter-monitor/CHANGELOG.md) on GitHub.
350
382
351
383
### [Node.js](#tab/nodejs)
352
384
@@ -359,18 +391,18 @@ Azure Monitor OpenTelemetry sample applications are available for all supported
359
391
360
392
### [Python](#tab/python)
361
393
362
-
-For details on adding and modifying Azure Monitor OpenTelemetry, see [Add and modify Azure Monitor OpenTelemetry](opentelemetry-add-modify.md).
363
-
-To review the source code and extra documentation, see the [Azure Monitor Distro GitHub repository](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/monitor/azure-monitor-opentelemetry/README.md).
364
-
-To see extra samples and use cases, see[Azure Monitor Distro samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/monitor/azure-monitor-opentelemetry/samples).
365
-
-See the [changelog](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/monitor/azure-monitor-opentelemetry/CHANGELOG.md) on GitHub.
366
-
-To install the PyPI package, check for updates, or view release notes, see the [Azure Monitor Distro PyPI Package](https://pypi.org/project/azure-monitor-opentelemetry/) page.
367
-
-To become more familiar with Azure Monitor Application Insights and OpenTelemetry, see the [Azure Monitor Example Application](https://github.com/Azure-Samples/azure-monitor-opentelemetry-python).
368
-
-To learn more about OpenTelemetry and its community, see the [OpenTelemetry Python GitHub repository](https://github.com/open-telemetry/opentelemetry-python).
369
-
-To see available OpenTelemetry instrumentations and components, see the [OpenTelemetry Contributor Python GitHub repository](https://github.com/open-telemetry/opentelemetry-python-contrib).
370
-
-To enable usage experiences, [enable web or browser user monitoring](javascript.md).
394
+
-See [Add and modify Azure Monitor OpenTelemetry](opentelemetry-add-modify.md) for details on adding and modifying Azure Monitor OpenTelemetry.
395
+
-Review the source code and extra documentation in the [Azure Monitor Distro GitHub repository](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/monitor/azure-monitor-opentelemetry/README.md).
396
+
-See extra samples and use cases in[Azure Monitor Distro samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/monitor/azure-monitor-opentelemetry/samples).
397
+
-Review the [changelog](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/monitor/azure-monitor-opentelemetry/CHANGELOG.md) on GitHub.
398
+
-Install the PyPI package, check for updates, or view release notes on the [Azure Monitor Distro PyPI Package](https://pypi.org/project/azure-monitor-opentelemetry/) page.
399
+
-Become more familiar with Azure Monitor Application Insights and OpenTelemetry in the [Azure Monitor Example Application](https://github.com/Azure-Samples/azure-monitor-opentelemetry-python).
400
+
-Learn more about OpenTelemetry and its community in the [OpenTelemetry Python GitHub repository](https://github.com/open-telemetry/opentelemetry-python).
401
+
-See available OpenTelemetry instrumentations and components in the [OpenTelemetry Contributor Python GitHub repository](https://github.com/open-telemetry/opentelemetry-python-contrib).
402
+
-Enable usage experiences by [enabling web or browser user monitoring](javascript.md).
|resourceTypeList|For initiatives, a list of resource types to be evaluated for diagnostic setting existence.|Supported resources|All supported resources|
- Ensure the Resource Guard and the Recovery Services vault are in the same Azure region.
31
-
-Ensure the Backup admin does **not** have **Contributor** permissions on the Resource Guard. You can choose to have the Resource Guard in another subscription of the same directory or in another directory to ensure maximum isolation.
31
+
- Ensure the **Backup admin** doesn't have **Contributor**, **Backup MUA Admin**, or **Backup MUA Operator** roles added on the Resource Guard. You can choose to have the Resource Guard in another subscription of the same directory or in another directory to ensure maximum isolation.
32
32
- Ensure that your subscriptions containing the Recovery Services vault as well as the Resource Guard (in different subscriptions or tenants) are registered to use the **Microsoft.RecoveryServices** provider. For more details, see [Azure resource providers and types](../azure-resource-manager/management/resource-providers-and-types.md#register-resource-provider-1).
33
33
- Ensure that you [create a Resource Guard](multi-user-authorization.md#create-a-resource-guard) in a different subsctiption/tenant as that of the vault located in the same region.
34
34
- Ensure to [assign permissions to the Backup admin on the Resource Guard to enable MUA](multi-user-authorization.md#assign-permissions-to-the-backup-admin-on-the-resource-guard-to-enable-mua).
35
35
36
36
# [Backup vault](#tab/backup-vault)
37
37
38
38
- Ensure the Resource Guard and the Backup vault are in the same Azure region.
39
-
-Ensure the Backup admin does **not** have **Contributor** permissions on the Resource Guard. You can choose to have the Resource Guard in another subscription of the same directory or in another directory to ensure maximum isolation.
39
+
- Ensure the **Backup admin** doesn't have **Contributor**, **Backup MUA Admin**, or **Backup MUA Operator** roles added on the Resource Guard. You can choose to have the Resource Guard in another subscription of the same directory or in another directory to ensure maximum isolation.
40
40
- Ensure that your subscriptions contain the Backup vault as well as the Resource Guard (in different subscriptions or tenants) are registered to use the provider - **Microsoft.DataProtection**4. For more information, see [Azure resource providers and types](../azure-resource-manager/management/resource-providers-and-types.md#register-resource-provider-1).
Copy file name to clipboardExpand all lines: articles/backup/multi-user-authorization-concept.md
+25-17Lines changed: 25 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Multi-user authorization using Resource Guard
3
3
description: An overview of Multi-user authorization using Resource Guard.
4
4
ms.topic: conceptual
5
-
ms.date: 03/26/2024
5
+
ms.date: 06/11/2024
6
6
ms.service: backup
7
7
author: AbhishekMallick-MS
8
8
ms.author: v-abhmallick
@@ -19,7 +19,7 @@ Multi-user authorization (MUA) for Azure Backup allows you to add an additional
19
19
Azure Backup uses the Resource Guard as an additional authorization mechanism for a Recovery Services vault or a Backup vault. Therefore, to perform a critical operation (described below) successfully, you must have sufficient permissions on the associated Resource Guard as well.
20
20
21
21
> [!Important]
22
-
> To function as intended, the Resource Guard must be owned by a different user, and the vault admin must not have Contributorpermissions. You can place Resource Guard in a subscription or tenant different from the one containing the vaults to provide better protection.
22
+
> To function as intended, the Resource Guard must be owned by a different user, and the **vault admin** mustn't have **Contributor**, **Backup MUA Admin**, or **Backup MUA Operator**permissions on the Resource Guard. You can place Resource Guard in a subscription or tenant different from the one containing the vaults to provide better protection.
23
23
24
24
## Critical operations
25
25
@@ -32,21 +32,29 @@ The following table lists the operations defined as critical operations and can
|**Disable soft delete or security features**| Mandatory | Disable soft delete setting on a vault. |
38
+
|**Remove MUA protection**| Mandatory | Disable MUA protection on a vault. |
39
+
|**Delete protection**| Optional | Delete protection by stopping backups and performing delete data. |
40
+
|**Modify protection**| Optional | Add a new backup policy with reduced retention or change policy frequency to increase [RPO](azure-backup-glossary.md#recovery-point-objective-rpo). |
41
+
|**Modify policy**| Optional | Modify backup policy to reduce retention or change policy frequency to increase [RPO](azure-backup-glossary.md#recovery-point-objective-rpo). |
|**Stop backup and retain data**| Optional | Delete protection by stopping backups and performing retain data forever or retain as per policy. |
44
+
|**Disable immutability**| Optional | Disable immutability setting on a vault. |
45
+
43
46
44
47
# [Backup vault](#tab/backup-vault)
45
48
46
-
**Operation** | **Mandatory/ Optional**
47
-
--- | ---
48
-
Disable MUA protection | Mandatory
49
-
Delete backup instance | Optional
49
+
| Operation | Mandatory/ Optional | Description |
50
+
| --- | --- | --- |
51
+
|**Disable soft delete**| Mandatory | Disable soft delete setting on a vault. |
52
+
|**Remove MUA protection**| Mandatory | Disable MUA protection on a vault. |
53
+
|**Delete Backup Instance**| Optional | Delete protection by stopping backups and performing delete data. |
54
+
|**Stop backup and retain forever**| Optional | Delete protection by stopping backups and performing retain data forever. |
55
+
|**Stop backup and retain as per policy**| Optional | Delete protection by stopping backups and performing retain data as per policy. |
56
+
|**Disable immutability**| Optional | Disable immutability setting on a vault. |
57
+
50
58
51
59
---
52
60
@@ -69,7 +77,7 @@ Here's the flow of events in a typical scenario:
69
77
1. The Backup admin creates the Recovery Services vault or the Backup vault.
70
78
2. The Security admin creates the Resource Guard.
71
79
72
-
The Resource Guard can be in a different subscription or a different tenant with respect to the vault. Ensure that the Backup admin doesn't have Contributor permissions on the Resource Guard.
80
+
The Resource Guard can be in a different subscription or a different tenant with respect to the vault. Ensure that the Backup admin doesn't have **Contributor**, **Backup MUA Admin**, or **Backup MUA Operator** permissions on the Resource Guard.
73
81
74
82
3. The Security admin grants the Reader role to the Backup Admin for the Resource Guard (or a relevant scope). The Backup admin requires the reader role to enable MUA on the vault.
75
83
4. The Backup admin now configures the vault to be protected by MUA via the Resource Guard.
@@ -81,15 +89,15 @@ Here's the flow of events in a typical scenario:
81
89
82
90
83
91
>[!Note]
84
-
>- If you grant the **Contributor** role on the Resource Guard access temporarily to the Backup Admin, it also provides the delete permissions on the Resource Guard. We recommend you to provide **Backup MUA Operator** permissions only.
92
+
>- If you grant the **Contributor**or **Backup MUA Admin**role on the Resource Guard access temporarily to the Backup Admin, it also provides the delete permissions on the Resource Guard. We recommend you to provide **Backup MUA Operator** permissions only.
85
93
>- MUA provides protection on the above listed operations performed on the vaulted backups only. Any operations performed directly on the data source (that is, the Azure resource/workload that is protected) are beyond the scope of the Resource Guard.
86
94
87
95
## Usage scenarios
88
96
89
97
The following table lists the scenarios for creating your Resource Guard and vaults (Recovery Services vault and Backup vault), along with the relative protection offered by each.
90
98
91
99
>[!Important]
92
-
> The Backup admin must not have Contributorpermissions to the Resource Guard in any scenario.
100
+
> The **Backup admin** must not have **Contributor**, **Backup MUA Admin**, or **Backup MUA Operator**permissions to the Resource Guard in any scenario as this overrides adding MUA protection on the vault.
93
101
94
102
**Usage scenario** | **Protection due to MUA** | **Ease of implementation** | **Notes**
0 commit comments