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
Terraform module to integrate Azure as a meshPlatform into meshStack instance.
4
-
5
-
With this module, service principals used by meshStack are created with the required permissions.
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.
6
4
7
5
## Prerequisites
8
6
9
-
Permissions on AAD level are needed to run this module.
10
-
Tenant wide admin consent must be granted for a succesful meshPlatform setup. Therefore to integrate a meshPlatform you need:
7
+
To run this module, you need the following:
11
8
12
-
> An Azure account with one of the following roles: Global Administrator, Privileged Role Administrator, Cloud Application Administrator, or Application Administrator. A user can also be authorized to grant tenant-wide consent if they are assigned a custom directory role that includes the permission to grant permissions to applications.[^1]
9
+
- Permissions on AAD level. An Azure account with one of the following roles[^1]:
[^1]: See [Azure public documentation](https://docs.microsoft.com/en-us/azure/active-directory/manage-apps/grant-admin-consent#prerequisites)
17
+
[^1]: Tenant wide admin consent must be granted for a successful meshPlatform setup. See [Azure public documentation](https://docs.microsoft.com/en-us/azure/active-directory/manage-apps/grant-admin-consent#prerequisites) for more details.
15
18
16
-
## How to use this module
19
+
## Module Structure
17
20
18
-
### Using Azure Portal
21
+
For an overview of the module structure, refer to [generated terraform docs](./TERRAFORM_DOCS.md)
3. Create a `main.tf` and an `output.tf` files in the created directory that references this module
78
-
>Sample files can be found in [examples](./examples/basic-azure-integration)
79
+
>See [Example Usages](#example-usages)
79
80
80
81
4. Run
81
82
@@ -90,61 +91,7 @@ Prerequisites:
90
91
# The JSON output contains sensitive values that must not be transmitted to meshcloud in plain text.
91
92
terraform output -json
92
93
```
94
+
93
95
## Example Usages
94
96
95
97
Check [examples](./examples/) for different use cases. As a quick start we recommend using [basic-azure-integration](./examples/basic-azure-integration) example.
|<a name="input_additional_permissions"></a> [additional\_permissions](#input\_additional\_permissions) | Additional Subscription-Level Permissions the SPP needs. | `list(string)` | `[]` | no |
131
-
|<a name="input_additional_required_resource_accesses"></a> [additional\_required\_resource\_accesses](#input\_additional\_required\_resource\_accesses) | Additional AAD-Level Resource Accesses the replicator SPP needs. | `list(object({ resource_app_id = string, resource_accesses = list(object({ id = string, type = string })) }))` | `[]` | no |
132
-
|<a name="input_idplookup_enabled"></a> [idplookup\_enabled](#input\_idplookup\_enabled) | Whether to create idplookup SPP or not. | `bool` | `true` | no |
133
-
|<a name="input_kraken_enabled"></a> [kraken\_enabled](#input\_kraken\_enabled) | Whether to create kraken SPP or not. | `bool` | `true` | no |
134
-
|<a name="input_mgmt_group_name"></a> [mgmt\_group\_name](#input\_mgmt\_group\_name) | The name or UUID of the Management Group. | `string` | n/a | yes |
135
-
|<a name="input_replicator_enabled"></a> [replicator\_enabled](#input\_replicator\_enabled) | Whether to create replicator SPP or not. | `bool` | `true` | no |
136
-
|<a name="input_spp_name_suffix"></a> [spp\_name\_suffix](#input\_spp\_name\_suffix) | Service principal name suffix. Make sure this is unique. | `string` | n/a | yes |
137
-
|<a name="input_subscriptions"></a> [subscriptions](#input\_subscriptions) | The scope to which UAMI blueprint service principal role assignment is applied. | `list(any)` | `[]` | no |
138
-
139
-
## Outputs
140
-
141
-
| Name | Description |
142
-
|------|-------------|
143
-
|<a name="output_idp_lookup_spp"></a> [idp\_lookup\_spp](#output\_idp\_lookup\_spp) | IDP Lookup Service Principal. |
144
-
|<a name="output_idp_lookup_spp_password"></a> [idp\_lookup\_spp\_password](#output\_idp\_lookup\_spp\_password) | Password for IDP Lookup Service Principal. |
145
-
|<a name="output_kraken_spp"></a> [kraken\_spp](#output\_kraken\_spp) | Kraken Service Principal. |
146
-
|<a name="output_kraken_spp_password"></a> [kraken\_spp\_password](#output\_kraken\_spp\_password) | Password for Kraken Service Principal. |
147
-
|<a name="output_replicator_spp"></a> [replicator\_spp](#output\_replicator\_spp) | Replicator Service Principal. |
148
-
|<a name="output_replicator_spp_password"></a> [replicator\_spp\_password](#output\_replicator\_spp\_password) | Password for Replicator Service Principal. |
149
-
|<a name="output_uami_blueprint_user_principal"></a> [uami\_blueprint\_user\_principal](#output\_uami\_blueprint\_user\_principal) | UAMI Blueprint Assignment Service Principal. |
150
-
|<a name="output_uami_blueprint_user_principal_password"></a> [uami\_blueprint\_user\_principal\_password](#output\_uami\_blueprint\_user\_principal\_password) | Password for UAMI Blueprint Assignment Service Principal. |
| <aname="input_additional_permissions"></a> [additional\_permissions](#input\_additional\_permissions)| Additional Subscription-Level Permissions the SPP needs. |`list(string)`|`[]`| no |
35
+
| <aname="input_additional_required_resource_accesses"></a> [additional\_required\_resource\_accesses](#input\_additional\_required\_resource\_accesses)| Additional AAD-Level Resource Accesses the replicator SPP needs. |`list(object({ resource_app_id = string, resource_accesses = list(object({ id = string, type = string })) }))`|`[]`| no |
36
+
| <aname="input_idplookup_enabled"></a> [idplookup\_enabled](#input\_idplookup\_enabled)| Whether to create idplookup SPP or not. |`bool`|`true`| no |
37
+
| <aname="input_kraken_enabled"></a> [kraken\_enabled](#input\_kraken\_enabled)| Whether to create kraken SPP or not. |`bool`|`true`| no |
38
+
| <aname="input_mgmt_group_name"></a> [mgmt\_group\_name](#input\_mgmt\_group\_name)| The name or UUID of the Management Group. |`string`| n/a | yes |
39
+
| <aname="input_replicator_enabled"></a> [replicator\_enabled](#input\_replicator\_enabled)| Whether to create replicator SPP or not. |`bool`|`true`| no |
40
+
| <aname="input_spp_name_suffix"></a> [spp\_name\_suffix](#input\_spp\_name\_suffix)| Service principal name suffix. Make sure this is unique. |`string`| n/a | yes |
41
+
| <aname="input_subscriptions"></a> [subscriptions](#input\_subscriptions)| The scope to which UAMI blueprint service principal role assignment is applied. |`list(any)`|`[]`| no |
42
+
43
+
## Outputs
44
+
45
+
| Name | Description |
46
+
|------|-------------|
47
+
| <aname="output_idp_lookup_spp"></a> [idp\_lookup\_spp](#output\_idp\_lookup\_spp)| IDP Lookup Service Principal. |
48
+
| <aname="output_idp_lookup_spp_password"></a> [idp\_lookup\_spp\_password](#output\_idp\_lookup\_spp\_password)| Password for IDP Lookup Service Principal. |
49
+
| <aname="output_kraken_spp"></a> [kraken\_spp](#output\_kraken\_spp)| Kraken Service Principal. |
50
+
| <aname="output_kraken_spp_password"></a> [kraken\_spp\_password](#output\_kraken\_spp\_password)| Password for Kraken Service Principal. |
51
+
| <aname="output_replicator_spp"></a> [replicator\_spp](#output\_replicator\_spp)| Replicator Service Principal. |
52
+
| <aname="output_replicator_spp_password"></a> [replicator\_spp\_password](#output\_replicator\_spp\_password)| Password for Replicator Service Principal. |
53
+
| <aname="output_uami_blueprint_user_principal"></a> [uami\_blueprint\_user\_principal](#output\_uami\_blueprint\_user\_principal)| UAMI Blueprint Assignment Service Principal. |
54
+
| <aname="output_uami_blueprint_user_principal_password"></a> [uami\_blueprint\_user\_principal\_password](#output\_uami\_blueprint\_user\_principal\_password)| Password for UAMI Blueprint Assignment Service Principal. |
0 commit comments