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: README.md
+27-4Lines changed: 27 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,8 @@
2
2
3
3
Terraform module to integrate Azure as a meshPlatform into meshStack instance. With this module, service principals used by meshStack are created with the required permissions. The output of this module is a set of credentials that need to be configured in meshStack as described in [meshcloud public docs](https://docs.meshcloud.io/docs/meshstack.how-to.integrate-meshplatform.html).
4
4
5
+
We currently support [Microsoft Enterprise Agreements](https://www.microsoft.com/en-us/licensing/licensing-programs/enterprise?activetab=enterprise-tab%3aprimaryr2) and [Microsoft Customer Agreements](https://www.microsoft.com/en-us/licensing/how-to-buy/microsoft-customer-agreement) when integrating Azure as a meshPlatform.
@@ -10,18 +12,25 @@ Terraform module to integrate Azure as a meshPlatform into meshStack instance. W
10
12
11
13
To run this module, you need the following:
12
14
13
-
- Permissions on AAD level. An Azure account with one of the following roles:
15
+
-[Terraform installed](https://learn.hashicorp.com/tutorials/terraform/install-cli) (already installed in Azure Portal)
16
+
-[Azure CLI installed](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) (already installed in Azure Portal)
17
+
- Permissions on AAD level. If using Microsoft Customer Agreement, AAD level permissions must be set in the Tenant Directory that will create the subscriptions (*Source Tenant*) as well as the Tenant Directory that will receive the subscriptions (*Destination Tenant*). An Azure account with one of the following roles:
14
18
1. Global Administrator
15
19
2. Privileged Role Administrator AND (Cloud) Application Administrator
16
20
- Permissions on Azure Resource Level: User Access Administrator on the Management Group that should be managed by meshStack
21
+
22
+
### If using an Enterprise Agreement
17
23
- Permissions on [Enterprise Agreement level](https://learn.microsoft.com/en-us/azure/cost-management-billing/manage/understand-ea-roles): Account Owner for the enrollment account that should be used for creating subscriptions
18
-
-[Terraform installed](https://learn.hashicorp.com/tutorials/terraform/install-cli) (already installed in Azure Portal)
19
-
-[Azure CLI installed](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) (already installed in Azure Portal)
24
+
25
+
### If using a Microsoft Customer Agreement
26
+
- Permissions in Source Tenant for granting access to the billing account used for subscription creation: Account Administrator
20
27
21
28
## How to Use This Module
22
29
23
30
### Using Azure Portal
24
31
32
+
> If using a **Microsoft Customer Agreement**, go through these steps in the **Destination Tenant**
33
+
25
34
1. Login into [Azure Portal](https://portal.azure.com/) with your Admin user.
26
35
27
36
2. Open a cloud shell.
@@ -52,7 +61,21 @@ To run this module, you need the following:
52
61
terraform output -json
53
62
```
54
63
55
-
7. Grant access on the enrollment account as described in the [meshcloud public docs](https://docs.meshcloud.io/docs/meshstack.how-to.integrate-meshplatform-azure-manually.html#set-up-subscription-provisioning).
64
+
#### If Using an Enterprise Agreement
65
+
1. Grant access on the enrollment account as described in the section [Use an Enteprise Enrollment](https://docs.meshcloud.io/docs/meshstack.how-to.integrate-meshplatform-azure-manually.html#use-an-enterprise-enrollment).
66
+
67
+
#### If Using Microsoft Customer Agreement
68
+
1. Switch to the Tenant Directory that contains your Billing Account and follow the steps to [Register an Application](https://learn.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app#register-an-application) and [Add Credentials](https://learn.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app#add-credentials). Make sure to copy down the **Directory (tenant) ID**, **Application (client) ID**, **Object ID** and the **App Secret** value that was generated. The App Secret is only visible during the creation process.
69
+
2. You must grant the Enterprise Application permissions on the Billing Account, Billing Profile, or Invoice Section so that it can generate new subscriptions. Follow the steps in [this guide](https://learn.microsoft.com/en-us/azure/cost-management-billing/manage/understand-mca-roles#manage-billing-roles-in-the-azure-portal) to grant the necessary permissions. You must grant one of the following permissions
70
+
- Billing Account or Billing Profile: Owner, Contributor
3. Write down the Billing Scope ID that looks something like this <samp>/providers/Microsoft.Billing/billingAccounts/5e98e158-xxxx-xxxx-xxxx-xxxxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx_xxxx-xx-xx/billingProfiles/AW4F-xxxx-xxx-xxx/invoiceSections/SH3V-xxxx-xxx-xxx</samp>
73
+
4. Use the following information to configure the platform in meshStack
74
+
- Billing Scope
75
+
- Destination Tenant ID
76
+
- Source Tenant ID
77
+
- Billing Account Principal Client ID (Application Client ID that will be used to create new subscriptions)
78
+
- Principal Client Secret (Application Secret created in the Source Tenant)
0 commit comments