diff --git a/.ci-mgmt.yaml b/.ci-mgmt.yaml index 71124b2a9..d9cbe3c27 100644 --- a/.ci-mgmt.yaml +++ b/.ci-mgmt.yaml @@ -1,5 +1,5 @@ provider: azuread -major-version: 5 +major-version: 6 generate-nightly-test-workflow: true env: ARM_CLIENT_ID: "d3b6ec3a-36fe-46c9-b3d9-5856a2e0e73c" # test-app @@ -21,9 +21,9 @@ plugins: - name: std version: "1.4.0" - name: azure - version: "5.52.0" + version: "6.3.0" - name: random - version: "4.14.0" + version: "4.16.0" - name: terraform version: "1.0.15" kind: converter diff --git a/Makefile b/Makefile index 4dcd6f5a6..7c55e9a67 100644 --- a/Makefile +++ b/Makefile @@ -3,7 +3,7 @@ PACK := azuread ORG := pulumi PROJECT := github.com/$(ORG)/pulumi-$(PACK) -PROVIDER_PATH := provider/v5 +PROVIDER_PATH := provider/v6 VERSION_PATH := $(PROVIDER_PATH)/pkg/version.Version TFGEN := pulumi-tfgen-$(PACK) PROVIDER := pulumi-resource-$(PACK) @@ -16,7 +16,7 @@ PULUMI_MISSING_DOCS_ERROR := true # Override during CI using `make [TARGET] PROVIDER_VERSION=""` or by setting a PROVIDER_VERSION environment variable # Local & branch builds will just used this fixed default version unless specified -PROVIDER_VERSION ?= 5.0.0-alpha.0+dev +PROVIDER_VERSION ?= 6.0.0-alpha.0+dev # Use this normalised version everywhere rather than the raw input to ensure consistency. VERSION_GENERIC = $(shell pulumictl convert-version --language generic --version "$(PROVIDER_VERSION)") @@ -120,8 +120,8 @@ install_plugins: export PATH := $(WORKING_DIR)/.pulumi/bin:$(PATH) install_plugins: .pulumi/bin/pulumi .pulumi/bin/pulumi plugin install resource time 0.0.15 .pulumi/bin/pulumi plugin install resource std 1.4.0 - .pulumi/bin/pulumi plugin install resource azure 5.52.0 - .pulumi/bin/pulumi plugin install resource random 4.14.0 + .pulumi/bin/pulumi plugin install resource azure 6.3.0 + .pulumi/bin/pulumi plugin install resource random 4.16.0 .pulumi/bin/pulumi plugin install converter terraform 1.0.15 lint_provider: provider diff --git a/README.md b/README.md index 36a9ba3fb..c1f3f9168 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ [![NPM version](https://badge.fury.io/js/%40pulumi%2Fazuread.svg)](https://npmjs.com/package/@pulumi/azuread) [![NuGet version](https://badge.fury.io/nu/pulumi.azuread.svg)](https://badge.fury.io/nu/pulumi.azured) [![Python version](https://badge.fury.io/py/pulumi-azuread.svg)](https://pypi.org/project/pulumi-azuread) -[![PkgGoDev](https://pkg.go.dev/badge/github.com/pulumi/pulumi-azuread/sdk/v5/go)](https://pkg.go.dev/github.com/pulumi/pulumi-azuread/sdk/v5/go) +[![PkgGoDev](https://pkg.go.dev/badge/github.com/pulumi/pulumi-azuread/sdk/v6/go)](https://pkg.go.dev/github.com/pulumi/pulumi-azuread/sdk/v6/go) [![License](https://img.shields.io/npm/l/%40pulumi%2Fpulumi.svg)](https://github.com/pulumi/pulumi-azuread/blob/master/LICENSE) # Microsoft Azure Active Directory Resource Provider @@ -25,51 +25,51 @@ This package is available in many languages in the standard packaging formats. To use from JavaScript or TypeScript in Node.js, install using either `npm`: - $ npm install @pulumi/azuread + npm install @pulumi/azuread or `yarn`: - $ yarn add @pulumi/azuread + yarn add @pulumi/azuread ### Python 3 To use from Python, install using `pip`: - $ pip install pulumi-azuread + pip install pulumi-azuread ### Go To use from Go, use `go get` to grab the latest version of the library - $ go get github.com/pulumi/pulumi-azuread/sdk/v5 + go get github.com/pulumi/pulumi-azuread/sdk/v6 ### .NET To use from .NET, install using `dotnet add package`: - $ dotnet add package Pulumi.Azuread + dotnet add package Pulumi.Azuread ## Configuration The following configuration points are available: -- `azuread:clientId` - The Client ID which should be used. This can also be sourced from the `ARM_CLIENT_ID` Environment +- `azuread:clientId` - The Client ID which should be used. This can also be sourced from the `ARM_CLIENT_ID` Environment Variable. -- `azuread:tenantId` - The Tenant ID which should be used. This can also be sourced from the `ARM_TENANT_ID` Environment +- `azuread:tenantId` - The Tenant ID which should be used. This can also be sourced from the `ARM_TENANT_ID` Environment Variable. -- `azuread:clientSecret` - The Client Secret which should be used. This can also be sourced from the `ARM_CLIENT_SECRET` +- `azuread:clientSecret` - The Client Secret which should be used. This can also be sourced from the `ARM_CLIENT_SECRET` Environment Variable. -- `azuread:certificatePassword` - The password associated with the Client Certificate. This can also be sourced from +- `azuread:certificatePassword` - The password associated with the Client Certificate. This can also be sourced from the `ARM_CLIENT_CERTIFICATE_PASSWORD` Environment Variable. -- `azuread:clientCertificatePath` - The path to the Client Certificate associated with the Service Principal which should +- `azuread:clientCertificatePath` - The path to the Client Certificate associated with the Service Principal which should be used. This can also be sourced from the `ARM_CLIENT_CERTIFICATE_PATH` Environment Variable. -- `azuread:environment` - The Cloud Environment which be used. Possible values are public, usgovernment, german and china. +- `azuread:environment` - The Cloud Environment which be used. Possible values are public, usgovernment, german and china. Defaults to `public`. This can also be sourced from the `ARM_ENVIRONMENT` environment variable. - `azuread:msiEndpoint` - The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically. This can also be sourced from the `ARM_MSI_ENDPOINT` Environment Variable. -- `azuread:useMsi` - Should Managed Service Identity be used for Authentication? This can also be sourced from the +- `azuread:useMsi` - Should Managed Service Identity be used for Authentication? This can also be sourced from the `ARM_USE_MSI` Environment Variable. Defaults to `false`. - + ## Reference For further information, please visit [the AzureAD provider docs](https://www.pulumi.com/registry/packages/azuread/) or for detailed reference documentation, please visit [the API docs](https://www.pulumi.com/registry/packages/azuread/api-docs/). diff --git a/examples/go.mod b/examples/go.mod index 87b14a926..c432dbf4f 100644 --- a/examples/go.mod +++ b/examples/go.mod @@ -1,4 +1,4 @@ -module github.com/pulumi/pulumi-azuread/examples/v5 +module github.com/pulumi/pulumi-azuread/examples/v6 go 1.21 diff --git a/provider/cmd/pulumi-resource-azuread/bridge-metadata.json b/provider/cmd/pulumi-resource-azuread/bridge-metadata.json index 03385fbd6..e830d07b5 100644 --- a/provider/cmd/pulumi-resource-azuread/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-azuread/bridge-metadata.json @@ -1227,9 +1227,6 @@ "azuread_service_principals": { "current": "azuread:index/getServicePrincipals:getServicePrincipals", "fields": { - "application_ids": { - "maxItemsOne": false - }, "client_ids": { "maxItemsOne": false }, diff --git a/provider/cmd/pulumi-resource-azuread/main.go b/provider/cmd/pulumi-resource-azuread/main.go index 83b4fe7ca..a778718a5 100644 --- a/provider/cmd/pulumi-resource-azuread/main.go +++ b/provider/cmd/pulumi-resource-azuread/main.go @@ -21,8 +21,8 @@ import ( "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge" - azuread "github.com/pulumi/pulumi-azuread/provider/v5" - "github.com/pulumi/pulumi-azuread/provider/v5/pkg/version" + azuread "github.com/pulumi/pulumi-azuread/provider/v6" + "github.com/pulumi/pulumi-azuread/provider/v6/pkg/version" ) //go:embed schema-embed.json diff --git a/provider/cmd/pulumi-resource-azuread/schema.json b/provider/cmd/pulumi-resource-azuread/schema.json index 0bf933a33..08f53923c 100644 --- a/provider/cmd/pulumi-resource-azuread/schema.json +++ b/provider/cmd/pulumi-resource-azuread/schema.json @@ -25,7 +25,7 @@ "respectSchemaVersion": true }, "go": { - "importBasePath": "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread", + "importBasePath": "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread", "generateResourceContainerTypes": true, "generateExtraInputTypes": true, "respectSchemaVersion": true @@ -491,7 +491,7 @@ "items": { "type": "string" }, - "description": "A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app.\n" + "description": "A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app.\n" }, "mappedClaimsEnabled": { "type": "boolean", @@ -2902,11 +2902,6 @@ "type": "boolean", "description": "Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application.\n" }, - "applicationId": { - "type": "string", - "description": "The application ID (client ID) for the associated application\n", - "deprecationMessage": "The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider" - }, "applicationTenantId": { "type": "string", "description": "The tenant ID where the associated application is registered.\n" @@ -2958,7 +2953,6 @@ "required": [ "accountEnabled", "appRoleAssignmentRequired", - "applicationId", "applicationTenantId", "clientId", "displayName", @@ -3242,7 +3236,7 @@ }, "resources": { "azuread:index/accessPackage:AccessPackage": { - "description": "Manages an Access Package within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Catalog owner`, `Access package manager` or `Global Administrator`\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-catalog\",\n description: \"Example catalog\",\n});\nconst exampleAccessPackage = new azuread.AccessPackage(\"example\", {\n catalogId: example.id,\n displayName: \"access-package\",\n description: \"Access Package\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-catalog\",\n description=\"Example catalog\")\nexample_access_package = azuread.AccessPackage(\"example\",\n catalog_id=example.id,\n display_name=\"access-package\",\n description=\"Access Package\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-catalog\",\n Description = \"Example catalog\",\n });\n\n var exampleAccessPackage = new AzureAD.AccessPackage(\"example\", new()\n {\n CatalogId = example.Id,\n DisplayName = \"access-package\",\n Description = \"Access Package\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackage(ctx, \"example\", \u0026azuread.AccessPackageArgs{\n\t\t\tCatalogId: example.ID(),\n\t\t\tDisplayName: pulumi.String(\"access-package\"),\n\t\t\tDescription: pulumi.String(\"Access Package\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackage;\nimport com.pulumi.azuread.AccessPackageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AccessPackageCatalog(\"example\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-catalog\")\n .description(\"Example catalog\")\n .build());\n\n var exampleAccessPackage = new AccessPackage(\"exampleAccessPackage\", AccessPackageArgs.builder()\n .catalogId(example.id())\n .displayName(\"access-package\")\n .description(\"Access Package\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:AccessPackageCatalog\n properties:\n displayName: example-catalog\n description: Example catalog\n exampleAccessPackage:\n type: azuread:AccessPackage\n name: example\n properties:\n catalogId: ${example.id}\n displayName: access-package\n description: Access Package\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAccess Packages can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackage:AccessPackage example_package 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages an Access Package within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Catalog owner`, `Access package manager` or `Global Administrator`\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-catalog\",\n description: \"Example catalog\",\n});\nconst exampleAccessPackage = new azuread.AccessPackage(\"example\", {\n catalogId: example.id,\n displayName: \"access-package\",\n description: \"Access Package\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-catalog\",\n description=\"Example catalog\")\nexample_access_package = azuread.AccessPackage(\"example\",\n catalog_id=example.id,\n display_name=\"access-package\",\n description=\"Access Package\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-catalog\",\n Description = \"Example catalog\",\n });\n\n var exampleAccessPackage = new AzureAD.AccessPackage(\"example\", new()\n {\n CatalogId = example.Id,\n DisplayName = \"access-package\",\n Description = \"Access Package\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackage(ctx, \"example\", \u0026azuread.AccessPackageArgs{\n\t\t\tCatalogId: example.ID(),\n\t\t\tDisplayName: pulumi.String(\"access-package\"),\n\t\t\tDescription: pulumi.String(\"Access Package\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackage;\nimport com.pulumi.azuread.AccessPackageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AccessPackageCatalog(\"example\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-catalog\")\n .description(\"Example catalog\")\n .build());\n\n var exampleAccessPackage = new AccessPackage(\"exampleAccessPackage\", AccessPackageArgs.builder()\n .catalogId(example.id())\n .displayName(\"access-package\")\n .description(\"Access Package\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:AccessPackageCatalog\n properties:\n displayName: example-catalog\n description: Example catalog\n exampleAccessPackage:\n type: azuread:AccessPackage\n name: example\n properties:\n catalogId: ${example.id}\n displayName: access-package\n description: Access Package\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAccess Packages can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackage:AccessPackage example_package 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "catalogId": { "type": "string", @@ -3315,7 +3309,7 @@ } }, "azuread:index/accessPackageAssignmentPolicy:AccessPackageAssignmentPolicy": { - "description": "Manages an assignment policy for an access package within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or one of the `Catalog Owner` and `Access Package Manager` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst exampleAccessPackageCatalog = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-catalog\",\n description: \"Example catalog\",\n});\nconst exampleAccessPackage = new azuread.AccessPackage(\"example\", {\n catalogId: exampleAccessPackageCatalog.id,\n displayName: \"access-package\",\n description: \"Access Package\",\n});\nconst exampleAccessPackageAssignmentPolicy = new azuread.AccessPackageAssignmentPolicy(\"example\", {\n accessPackageId: exampleAccessPackage.id,\n displayName: \"assignment-policy\",\n description: \"My assignment policy\",\n durationInDays: 90,\n requestorSettings: {\n scopeType: \"AllExistingDirectoryMemberUsers\",\n },\n approvalSettings: {\n approvalRequired: true,\n approvalStages: [{\n approvalTimeoutInDays: 14,\n primaryApprovers: [{\n objectId: example.objectId,\n subjectType: \"groupMembers\",\n }],\n }],\n },\n assignmentReviewSettings: {\n enabled: true,\n reviewFrequency: \"weekly\",\n durationInDays: 3,\n reviewType: \"Self\",\n accessReviewTimeoutBehavior: \"keepAccess\",\n },\n questions: [{\n text: {\n defaultText: \"hello, how are you?\",\n },\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nexample_access_package_catalog = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-catalog\",\n description=\"Example catalog\")\nexample_access_package = azuread.AccessPackage(\"example\",\n catalog_id=example_access_package_catalog.id,\n display_name=\"access-package\",\n description=\"Access Package\")\nexample_access_package_assignment_policy = azuread.AccessPackageAssignmentPolicy(\"example\",\n access_package_id=example_access_package.id,\n display_name=\"assignment-policy\",\n description=\"My assignment policy\",\n duration_in_days=90,\n requestor_settings={\n \"scope_type\": \"AllExistingDirectoryMemberUsers\",\n },\n approval_settings={\n \"approval_required\": True,\n \"approval_stages\": [{\n \"approval_timeout_in_days\": 14,\n \"primary_approvers\": [{\n \"object_id\": example.object_id,\n \"subject_type\": \"groupMembers\",\n }],\n }],\n },\n assignment_review_settings={\n \"enabled\": True,\n \"review_frequency\": \"weekly\",\n \"duration_in_days\": 3,\n \"review_type\": \"Self\",\n \"access_review_timeout_behavior\": \"keepAccess\",\n },\n questions=[{\n \"text\": {\n \"default_text\": \"hello, how are you?\",\n },\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var exampleAccessPackageCatalog = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-catalog\",\n Description = \"Example catalog\",\n });\n\n var exampleAccessPackage = new AzureAD.AccessPackage(\"example\", new()\n {\n CatalogId = exampleAccessPackageCatalog.Id,\n DisplayName = \"access-package\",\n Description = \"Access Package\",\n });\n\n var exampleAccessPackageAssignmentPolicy = new AzureAD.AccessPackageAssignmentPolicy(\"example\", new()\n {\n AccessPackageId = exampleAccessPackage.Id,\n DisplayName = \"assignment-policy\",\n Description = \"My assignment policy\",\n DurationInDays = 90,\n RequestorSettings = new AzureAD.Inputs.AccessPackageAssignmentPolicyRequestorSettingsArgs\n {\n ScopeType = \"AllExistingDirectoryMemberUsers\",\n },\n ApprovalSettings = new AzureAD.Inputs.AccessPackageAssignmentPolicyApprovalSettingsArgs\n {\n ApprovalRequired = true,\n ApprovalStages = new[]\n {\n new AzureAD.Inputs.AccessPackageAssignmentPolicyApprovalSettingsApprovalStageArgs\n {\n ApprovalTimeoutInDays = 14,\n PrimaryApprovers = new[]\n {\n new AzureAD.Inputs.AccessPackageAssignmentPolicyApprovalSettingsApprovalStagePrimaryApproverArgs\n {\n ObjectId = example.ObjectId,\n SubjectType = \"groupMembers\",\n },\n },\n },\n },\n },\n AssignmentReviewSettings = new AzureAD.Inputs.AccessPackageAssignmentPolicyAssignmentReviewSettingsArgs\n {\n Enabled = true,\n ReviewFrequency = \"weekly\",\n DurationInDays = 3,\n ReviewType = \"Self\",\n AccessReviewTimeoutBehavior = \"keepAccess\",\n },\n Questions = new[]\n {\n new AzureAD.Inputs.AccessPackageAssignmentPolicyQuestionArgs\n {\n Text = new AzureAD.Inputs.AccessPackageAssignmentPolicyQuestionTextArgs\n {\n DefaultText = \"hello, how are you?\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackageCatalog, err := azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackage, err := azuread.NewAccessPackage(ctx, \"example\", \u0026azuread.AccessPackageArgs{\n\t\t\tCatalogId: exampleAccessPackageCatalog.ID(),\n\t\t\tDisplayName: pulumi.String(\"access-package\"),\n\t\t\tDescription: pulumi.String(\"Access Package\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageAssignmentPolicy(ctx, \"example\", \u0026azuread.AccessPackageAssignmentPolicyArgs{\n\t\t\tAccessPackageId: exampleAccessPackage.ID(),\n\t\t\tDisplayName: pulumi.String(\"assignment-policy\"),\n\t\t\tDescription: pulumi.String(\"My assignment policy\"),\n\t\t\tDurationInDays: pulumi.Int(90),\n\t\t\tRequestorSettings: \u0026azuread.AccessPackageAssignmentPolicyRequestorSettingsArgs{\n\t\t\t\tScopeType: pulumi.String(\"AllExistingDirectoryMemberUsers\"),\n\t\t\t},\n\t\t\tApprovalSettings: \u0026azuread.AccessPackageAssignmentPolicyApprovalSettingsArgs{\n\t\t\t\tApprovalRequired: pulumi.Bool(true),\n\t\t\t\tApprovalStages: azuread.AccessPackageAssignmentPolicyApprovalSettingsApprovalStageArray{\n\t\t\t\t\t\u0026azuread.AccessPackageAssignmentPolicyApprovalSettingsApprovalStageArgs{\n\t\t\t\t\t\tApprovalTimeoutInDays: pulumi.Int(14),\n\t\t\t\t\t\tPrimaryApprovers: azuread.AccessPackageAssignmentPolicyApprovalSettingsApprovalStagePrimaryApproverArray{\n\t\t\t\t\t\t\t\u0026azuread.AccessPackageAssignmentPolicyApprovalSettingsApprovalStagePrimaryApproverArgs{\n\t\t\t\t\t\t\t\tObjectId: example.ObjectId,\n\t\t\t\t\t\t\t\tSubjectType: pulumi.String(\"groupMembers\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAssignmentReviewSettings: \u0026azuread.AccessPackageAssignmentPolicyAssignmentReviewSettingsArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\tReviewFrequency: pulumi.String(\"weekly\"),\n\t\t\t\tDurationInDays: pulumi.Int(3),\n\t\t\t\tReviewType: pulumi.String(\"Self\"),\n\t\t\t\tAccessReviewTimeoutBehavior: pulumi.String(\"keepAccess\"),\n\t\t\t},\n\t\t\tQuestions: azuread.AccessPackageAssignmentPolicyQuestionArray{\n\t\t\t\t\u0026azuread.AccessPackageAssignmentPolicyQuestionArgs{\n\t\t\t\t\tText: \u0026azuread.AccessPackageAssignmentPolicyQuestionTextArgs{\n\t\t\t\t\t\tDefaultText: pulumi.String(\"hello, how are you?\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackage;\nimport com.pulumi.azuread.AccessPackageArgs;\nimport com.pulumi.azuread.AccessPackageAssignmentPolicy;\nimport com.pulumi.azuread.AccessPackageAssignmentPolicyArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyRequestorSettingsArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyApprovalSettingsArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyAssignmentReviewSettingsArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyQuestionArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyQuestionTextArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n var exampleAccessPackageCatalog = new AccessPackageCatalog(\"exampleAccessPackageCatalog\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-catalog\")\n .description(\"Example catalog\")\n .build());\n\n var exampleAccessPackage = new AccessPackage(\"exampleAccessPackage\", AccessPackageArgs.builder()\n .catalogId(exampleAccessPackageCatalog.id())\n .displayName(\"access-package\")\n .description(\"Access Package\")\n .build());\n\n var exampleAccessPackageAssignmentPolicy = new AccessPackageAssignmentPolicy(\"exampleAccessPackageAssignmentPolicy\", AccessPackageAssignmentPolicyArgs.builder()\n .accessPackageId(exampleAccessPackage.id())\n .displayName(\"assignment-policy\")\n .description(\"My assignment policy\")\n .durationInDays(90)\n .requestorSettings(AccessPackageAssignmentPolicyRequestorSettingsArgs.builder()\n .scopeType(\"AllExistingDirectoryMemberUsers\")\n .build())\n .approvalSettings(AccessPackageAssignmentPolicyApprovalSettingsArgs.builder()\n .approvalRequired(true)\n .approvalStages(AccessPackageAssignmentPolicyApprovalSettingsApprovalStageArgs.builder()\n .approvalTimeoutInDays(14)\n .primaryApprovers(AccessPackageAssignmentPolicyApprovalSettingsApprovalStagePrimaryApproverArgs.builder()\n .objectId(example.objectId())\n .subjectType(\"groupMembers\")\n .build())\n .build())\n .build())\n .assignmentReviewSettings(AccessPackageAssignmentPolicyAssignmentReviewSettingsArgs.builder()\n .enabled(true)\n .reviewFrequency(\"weekly\")\n .durationInDays(3)\n .reviewType(\"Self\")\n .accessReviewTimeoutBehavior(\"keepAccess\")\n .build())\n .questions(AccessPackageAssignmentPolicyQuestionArgs.builder()\n .text(AccessPackageAssignmentPolicyQuestionTextArgs.builder()\n .defaultText(\"hello, how are you?\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\n exampleAccessPackageCatalog:\n type: azuread:AccessPackageCatalog\n name: example\n properties:\n displayName: example-catalog\n description: Example catalog\n exampleAccessPackage:\n type: azuread:AccessPackage\n name: example\n properties:\n catalogId: ${exampleAccessPackageCatalog.id}\n displayName: access-package\n description: Access Package\n exampleAccessPackageAssignmentPolicy:\n type: azuread:AccessPackageAssignmentPolicy\n name: example\n properties:\n accessPackageId: ${exampleAccessPackage.id}\n displayName: assignment-policy\n description: My assignment policy\n durationInDays: 90\n requestorSettings:\n scopeType: AllExistingDirectoryMemberUsers\n approvalSettings:\n approvalRequired: true\n approvalStages:\n - approvalTimeoutInDays: 14\n primaryApprovers:\n - objectId: ${example.objectId}\n subjectType: groupMembers\n assignmentReviewSettings:\n enabled: true\n reviewFrequency: weekly\n durationInDays: 3\n reviewType: Self\n accessReviewTimeoutBehavior: keepAccess\n questions:\n - text:\n defaultText: hello, how are you?\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn access package assignment policy can be imported using the ID, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageAssignmentPolicy:AccessPackageAssignmentPolicy example 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages an assignment policy for an access package within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or one of the `Catalog Owner` and `Access Package Manager` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst exampleAccessPackageCatalog = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-catalog\",\n description: \"Example catalog\",\n});\nconst exampleAccessPackage = new azuread.AccessPackage(\"example\", {\n catalogId: exampleAccessPackageCatalog.id,\n displayName: \"access-package\",\n description: \"Access Package\",\n});\nconst exampleAccessPackageAssignmentPolicy = new azuread.AccessPackageAssignmentPolicy(\"example\", {\n accessPackageId: exampleAccessPackage.id,\n displayName: \"assignment-policy\",\n description: \"My assignment policy\",\n durationInDays: 90,\n requestorSettings: {\n scopeType: \"AllExistingDirectoryMemberUsers\",\n },\n approvalSettings: {\n approvalRequired: true,\n approvalStages: [{\n approvalTimeoutInDays: 14,\n primaryApprovers: [{\n objectId: example.objectId,\n subjectType: \"groupMembers\",\n }],\n }],\n },\n assignmentReviewSettings: {\n enabled: true,\n reviewFrequency: \"weekly\",\n durationInDays: 3,\n reviewType: \"Self\",\n accessReviewTimeoutBehavior: \"keepAccess\",\n },\n questions: [{\n text: {\n defaultText: \"hello, how are you?\",\n },\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nexample_access_package_catalog = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-catalog\",\n description=\"Example catalog\")\nexample_access_package = azuread.AccessPackage(\"example\",\n catalog_id=example_access_package_catalog.id,\n display_name=\"access-package\",\n description=\"Access Package\")\nexample_access_package_assignment_policy = azuread.AccessPackageAssignmentPolicy(\"example\",\n access_package_id=example_access_package.id,\n display_name=\"assignment-policy\",\n description=\"My assignment policy\",\n duration_in_days=90,\n requestor_settings={\n \"scope_type\": \"AllExistingDirectoryMemberUsers\",\n },\n approval_settings={\n \"approval_required\": True,\n \"approval_stages\": [{\n \"approval_timeout_in_days\": 14,\n \"primary_approvers\": [{\n \"object_id\": example.object_id,\n \"subject_type\": \"groupMembers\",\n }],\n }],\n },\n assignment_review_settings={\n \"enabled\": True,\n \"review_frequency\": \"weekly\",\n \"duration_in_days\": 3,\n \"review_type\": \"Self\",\n \"access_review_timeout_behavior\": \"keepAccess\",\n },\n questions=[{\n \"text\": {\n \"default_text\": \"hello, how are you?\",\n },\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var exampleAccessPackageCatalog = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-catalog\",\n Description = \"Example catalog\",\n });\n\n var exampleAccessPackage = new AzureAD.AccessPackage(\"example\", new()\n {\n CatalogId = exampleAccessPackageCatalog.Id,\n DisplayName = \"access-package\",\n Description = \"Access Package\",\n });\n\n var exampleAccessPackageAssignmentPolicy = new AzureAD.AccessPackageAssignmentPolicy(\"example\", new()\n {\n AccessPackageId = exampleAccessPackage.Id,\n DisplayName = \"assignment-policy\",\n Description = \"My assignment policy\",\n DurationInDays = 90,\n RequestorSettings = new AzureAD.Inputs.AccessPackageAssignmentPolicyRequestorSettingsArgs\n {\n ScopeType = \"AllExistingDirectoryMemberUsers\",\n },\n ApprovalSettings = new AzureAD.Inputs.AccessPackageAssignmentPolicyApprovalSettingsArgs\n {\n ApprovalRequired = true,\n ApprovalStages = new[]\n {\n new AzureAD.Inputs.AccessPackageAssignmentPolicyApprovalSettingsApprovalStageArgs\n {\n ApprovalTimeoutInDays = 14,\n PrimaryApprovers = new[]\n {\n new AzureAD.Inputs.AccessPackageAssignmentPolicyApprovalSettingsApprovalStagePrimaryApproverArgs\n {\n ObjectId = example.ObjectId,\n SubjectType = \"groupMembers\",\n },\n },\n },\n },\n },\n AssignmentReviewSettings = new AzureAD.Inputs.AccessPackageAssignmentPolicyAssignmentReviewSettingsArgs\n {\n Enabled = true,\n ReviewFrequency = \"weekly\",\n DurationInDays = 3,\n ReviewType = \"Self\",\n AccessReviewTimeoutBehavior = \"keepAccess\",\n },\n Questions = new[]\n {\n new AzureAD.Inputs.AccessPackageAssignmentPolicyQuestionArgs\n {\n Text = new AzureAD.Inputs.AccessPackageAssignmentPolicyQuestionTextArgs\n {\n DefaultText = \"hello, how are you?\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackageCatalog, err := azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackage, err := azuread.NewAccessPackage(ctx, \"example\", \u0026azuread.AccessPackageArgs{\n\t\t\tCatalogId: exampleAccessPackageCatalog.ID(),\n\t\t\tDisplayName: pulumi.String(\"access-package\"),\n\t\t\tDescription: pulumi.String(\"Access Package\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageAssignmentPolicy(ctx, \"example\", \u0026azuread.AccessPackageAssignmentPolicyArgs{\n\t\t\tAccessPackageId: exampleAccessPackage.ID(),\n\t\t\tDisplayName: pulumi.String(\"assignment-policy\"),\n\t\t\tDescription: pulumi.String(\"My assignment policy\"),\n\t\t\tDurationInDays: pulumi.Int(90),\n\t\t\tRequestorSettings: \u0026azuread.AccessPackageAssignmentPolicyRequestorSettingsArgs{\n\t\t\t\tScopeType: pulumi.String(\"AllExistingDirectoryMemberUsers\"),\n\t\t\t},\n\t\t\tApprovalSettings: \u0026azuread.AccessPackageAssignmentPolicyApprovalSettingsArgs{\n\t\t\t\tApprovalRequired: pulumi.Bool(true),\n\t\t\t\tApprovalStages: azuread.AccessPackageAssignmentPolicyApprovalSettingsApprovalStageArray{\n\t\t\t\t\t\u0026azuread.AccessPackageAssignmentPolicyApprovalSettingsApprovalStageArgs{\n\t\t\t\t\t\tApprovalTimeoutInDays: pulumi.Int(14),\n\t\t\t\t\t\tPrimaryApprovers: azuread.AccessPackageAssignmentPolicyApprovalSettingsApprovalStagePrimaryApproverArray{\n\t\t\t\t\t\t\t\u0026azuread.AccessPackageAssignmentPolicyApprovalSettingsApprovalStagePrimaryApproverArgs{\n\t\t\t\t\t\t\t\tObjectId: example.ObjectId,\n\t\t\t\t\t\t\t\tSubjectType: pulumi.String(\"groupMembers\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAssignmentReviewSettings: \u0026azuread.AccessPackageAssignmentPolicyAssignmentReviewSettingsArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\tReviewFrequency: pulumi.String(\"weekly\"),\n\t\t\t\tDurationInDays: pulumi.Int(3),\n\t\t\t\tReviewType: pulumi.String(\"Self\"),\n\t\t\t\tAccessReviewTimeoutBehavior: pulumi.String(\"keepAccess\"),\n\t\t\t},\n\t\t\tQuestions: azuread.AccessPackageAssignmentPolicyQuestionArray{\n\t\t\t\t\u0026azuread.AccessPackageAssignmentPolicyQuestionArgs{\n\t\t\t\t\tText: \u0026azuread.AccessPackageAssignmentPolicyQuestionTextArgs{\n\t\t\t\t\t\tDefaultText: pulumi.String(\"hello, how are you?\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackage;\nimport com.pulumi.azuread.AccessPackageArgs;\nimport com.pulumi.azuread.AccessPackageAssignmentPolicy;\nimport com.pulumi.azuread.AccessPackageAssignmentPolicyArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyRequestorSettingsArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyApprovalSettingsArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyAssignmentReviewSettingsArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyQuestionArgs;\nimport com.pulumi.azuread.inputs.AccessPackageAssignmentPolicyQuestionTextArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n var exampleAccessPackageCatalog = new AccessPackageCatalog(\"exampleAccessPackageCatalog\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-catalog\")\n .description(\"Example catalog\")\n .build());\n\n var exampleAccessPackage = new AccessPackage(\"exampleAccessPackage\", AccessPackageArgs.builder()\n .catalogId(exampleAccessPackageCatalog.id())\n .displayName(\"access-package\")\n .description(\"Access Package\")\n .build());\n\n var exampleAccessPackageAssignmentPolicy = new AccessPackageAssignmentPolicy(\"exampleAccessPackageAssignmentPolicy\", AccessPackageAssignmentPolicyArgs.builder()\n .accessPackageId(exampleAccessPackage.id())\n .displayName(\"assignment-policy\")\n .description(\"My assignment policy\")\n .durationInDays(90)\n .requestorSettings(AccessPackageAssignmentPolicyRequestorSettingsArgs.builder()\n .scopeType(\"AllExistingDirectoryMemberUsers\")\n .build())\n .approvalSettings(AccessPackageAssignmentPolicyApprovalSettingsArgs.builder()\n .approvalRequired(true)\n .approvalStages(AccessPackageAssignmentPolicyApprovalSettingsApprovalStageArgs.builder()\n .approvalTimeoutInDays(14)\n .primaryApprovers(AccessPackageAssignmentPolicyApprovalSettingsApprovalStagePrimaryApproverArgs.builder()\n .objectId(example.objectId())\n .subjectType(\"groupMembers\")\n .build())\n .build())\n .build())\n .assignmentReviewSettings(AccessPackageAssignmentPolicyAssignmentReviewSettingsArgs.builder()\n .enabled(true)\n .reviewFrequency(\"weekly\")\n .durationInDays(3)\n .reviewType(\"Self\")\n .accessReviewTimeoutBehavior(\"keepAccess\")\n .build())\n .questions(AccessPackageAssignmentPolicyQuestionArgs.builder()\n .text(AccessPackageAssignmentPolicyQuestionTextArgs.builder()\n .defaultText(\"hello, how are you?\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\n exampleAccessPackageCatalog:\n type: azuread:AccessPackageCatalog\n name: example\n properties:\n displayName: example-catalog\n description: Example catalog\n exampleAccessPackage:\n type: azuread:AccessPackage\n name: example\n properties:\n catalogId: ${exampleAccessPackageCatalog.id}\n displayName: access-package\n description: Access Package\n exampleAccessPackageAssignmentPolicy:\n type: azuread:AccessPackageAssignmentPolicy\n name: example\n properties:\n accessPackageId: ${exampleAccessPackage.id}\n displayName: assignment-policy\n description: My assignment policy\n durationInDays: 90\n requestorSettings:\n scopeType: AllExistingDirectoryMemberUsers\n approvalSettings:\n approvalRequired: true\n approvalStages:\n - approvalTimeoutInDays: 14\n primaryApprovers:\n - objectId: ${example.objectId}\n subjectType: groupMembers\n assignmentReviewSettings:\n enabled: true\n reviewFrequency: weekly\n durationInDays: 3\n reviewType: Self\n accessReviewTimeoutBehavior: keepAccess\n questions:\n - text:\n defaultText: hello, how are you?\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn access package assignment policy can be imported using the ID, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageAssignmentPolicy:AccessPackageAssignmentPolicy example 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "accessPackageId": { "type": "string", @@ -3467,7 +3461,7 @@ } }, "azuread:index/accessPackageCatalog:AccessPackageCatalog": { - "description": "Manages an access package catalog within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Catalog owner`, `Catalog creator` or `Global Administrator`\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-access-package-catalog\",\n description: \"Example access package catalog\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-access-package-catalog\",\n description=\"Example access package catalog\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-access-package-catalog\",\n Description = \"Example access package catalog\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-access-package-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example access package catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AccessPackageCatalog(\"example\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-access-package-catalog\")\n .description(\"Example access package catalog\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:AccessPackageCatalog\n properties:\n displayName: example-access-package-catalog\n description: Example access package catalog\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn Access Package Catalog can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageCatalog:AccessPackageCatalog example 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages an access package catalog within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Catalog owner`, `Catalog creator` or `Global Administrator`\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-access-package-catalog\",\n description: \"Example access package catalog\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-access-package-catalog\",\n description=\"Example access package catalog\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-access-package-catalog\",\n Description = \"Example access package catalog\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-access-package-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example access package catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AccessPackageCatalog(\"example\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-access-package-catalog\")\n .description(\"Example access package catalog\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:AccessPackageCatalog\n properties:\n displayName: example-access-package-catalog\n description: Example access package catalog\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn Access Package Catalog can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageCatalog:AccessPackageCatalog example 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "description": { "type": "string", @@ -3536,7 +3530,7 @@ } }, "azuread:index/accessPackageCatalogRoleAssignment:AccessPackageCatalogRoleAssignment": { - "description": "Manages a single catalog role assignment within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `EntitlementManagement.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Identity Governance administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleGetAccessPackageCatalogRole = azuread.getAccessPackageCatalogRole({\n displayName: \"Catalog owner\",\n});\nconst exampleAccessPackageCatalog = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-access-package-catalog\",\n description: \"Example access package catalog\",\n});\nconst exampleAccessPackageCatalogRoleAssignment = new azuread.AccessPackageCatalogRoleAssignment(\"example\", {\n roleId: exampleGetAccessPackageCatalogRole.then(exampleGetAccessPackageCatalogRole =\u003e exampleGetAccessPackageCatalogRole.objectId),\n principalObjectId: example.then(example =\u003e example.objectId),\n catalogId: exampleAccessPackageCatalog.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_get_access_package_catalog_role = azuread.get_access_package_catalog_role(display_name=\"Catalog owner\")\nexample_access_package_catalog = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-access-package-catalog\",\n description=\"Example access package catalog\")\nexample_access_package_catalog_role_assignment = azuread.AccessPackageCatalogRoleAssignment(\"example\",\n role_id=example_get_access_package_catalog_role.object_id,\n principal_object_id=example.object_id,\n catalog_id=example_access_package_catalog.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleGetAccessPackageCatalogRole = AzureAD.GetAccessPackageCatalogRole.Invoke(new()\n {\n DisplayName = \"Catalog owner\",\n });\n\n var exampleAccessPackageCatalog = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-access-package-catalog\",\n Description = \"Example access package catalog\",\n });\n\n var exampleAccessPackageCatalogRoleAssignment = new AzureAD.AccessPackageCatalogRoleAssignment(\"example\", new()\n {\n RoleId = exampleGetAccessPackageCatalogRole.Apply(getAccessPackageCatalogRoleResult =\u003e getAccessPackageCatalogRoleResult.ObjectId),\n PrincipalObjectId = example.Apply(getUserResult =\u003e getUserResult.ObjectId),\n CatalogId = exampleAccessPackageCatalog.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetAccessPackageCatalogRole, err := azuread.GetAccessPackageCatalogRole(ctx, \u0026azuread.GetAccessPackageCatalogRoleArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Catalog owner\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackageCatalog, err := azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-access-package-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example access package catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageCatalogRoleAssignment(ctx, \"example\", \u0026azuread.AccessPackageCatalogRoleAssignmentArgs{\n\t\t\tRoleId: pulumi.String(exampleGetAccessPackageCatalogRole.ObjectId),\n\t\t\tPrincipalObjectId: pulumi.String(example.ObjectId),\n\t\t\tCatalogId: exampleAccessPackageCatalog.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogRoleArgs;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackageCatalogRoleAssignment;\nimport com.pulumi.azuread.AccessPackageCatalogRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n final var exampleGetAccessPackageCatalogRole = AzureadFunctions.getAccessPackageCatalogRole(GetAccessPackageCatalogRoleArgs.builder()\n .displayName(\"Catalog owner\")\n .build());\n\n var exampleAccessPackageCatalog = new AccessPackageCatalog(\"exampleAccessPackageCatalog\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-access-package-catalog\")\n .description(\"Example access package catalog\")\n .build());\n\n var exampleAccessPackageCatalogRoleAssignment = new AccessPackageCatalogRoleAssignment(\"exampleAccessPackageCatalogRoleAssignment\", AccessPackageCatalogRoleAssignmentArgs.builder()\n .roleId(exampleGetAccessPackageCatalogRole.applyValue(getAccessPackageCatalogRoleResult -\u003e getAccessPackageCatalogRoleResult.objectId()))\n .principalObjectId(example.applyValue(getUserResult -\u003e getUserResult.objectId()))\n .catalogId(exampleAccessPackageCatalog.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAccessPackageCatalog:\n type: azuread:AccessPackageCatalog\n name: example\n properties:\n displayName: example-access-package-catalog\n description: Example access package catalog\n exampleAccessPackageCatalogRoleAssignment:\n type: azuread:AccessPackageCatalogRoleAssignment\n name: example\n properties:\n roleId: ${exampleGetAccessPackageCatalogRole.objectId}\n principalObjectId: ${example.objectId}\n catalogId: ${exampleAccessPackageCatalog.id}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n exampleGetAccessPackageCatalogRole:\n fn::invoke:\n Function: azuread:getAccessPackageCatalogRole\n Arguments:\n displayName: Catalog owner\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCatalog role assignments can be imported using the ID of the assignment, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageCatalogRoleAssignment:AccessPackageCatalogRoleAssignment example 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages a single catalog role assignment within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `EntitlementManagement.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Identity Governance administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleGetAccessPackageCatalogRole = azuread.getAccessPackageCatalogRole({\n displayName: \"Catalog owner\",\n});\nconst exampleAccessPackageCatalog = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-access-package-catalog\",\n description: \"Example access package catalog\",\n});\nconst exampleAccessPackageCatalogRoleAssignment = new azuread.AccessPackageCatalogRoleAssignment(\"example\", {\n roleId: exampleGetAccessPackageCatalogRole.then(exampleGetAccessPackageCatalogRole =\u003e exampleGetAccessPackageCatalogRole.objectId),\n principalObjectId: example.then(example =\u003e example.objectId),\n catalogId: exampleAccessPackageCatalog.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_get_access_package_catalog_role = azuread.get_access_package_catalog_role(display_name=\"Catalog owner\")\nexample_access_package_catalog = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-access-package-catalog\",\n description=\"Example access package catalog\")\nexample_access_package_catalog_role_assignment = azuread.AccessPackageCatalogRoleAssignment(\"example\",\n role_id=example_get_access_package_catalog_role.object_id,\n principal_object_id=example.object_id,\n catalog_id=example_access_package_catalog.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleGetAccessPackageCatalogRole = AzureAD.GetAccessPackageCatalogRole.Invoke(new()\n {\n DisplayName = \"Catalog owner\",\n });\n\n var exampleAccessPackageCatalog = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-access-package-catalog\",\n Description = \"Example access package catalog\",\n });\n\n var exampleAccessPackageCatalogRoleAssignment = new AzureAD.AccessPackageCatalogRoleAssignment(\"example\", new()\n {\n RoleId = exampleGetAccessPackageCatalogRole.Apply(getAccessPackageCatalogRoleResult =\u003e getAccessPackageCatalogRoleResult.ObjectId),\n PrincipalObjectId = example.Apply(getUserResult =\u003e getUserResult.ObjectId),\n CatalogId = exampleAccessPackageCatalog.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetAccessPackageCatalogRole, err := azuread.GetAccessPackageCatalogRole(ctx, \u0026azuread.GetAccessPackageCatalogRoleArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Catalog owner\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackageCatalog, err := azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-access-package-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example access package catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageCatalogRoleAssignment(ctx, \"example\", \u0026azuread.AccessPackageCatalogRoleAssignmentArgs{\n\t\t\tRoleId: pulumi.String(exampleGetAccessPackageCatalogRole.ObjectId),\n\t\t\tPrincipalObjectId: pulumi.String(example.ObjectId),\n\t\t\tCatalogId: exampleAccessPackageCatalog.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogRoleArgs;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackageCatalogRoleAssignment;\nimport com.pulumi.azuread.AccessPackageCatalogRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n final var exampleGetAccessPackageCatalogRole = AzureadFunctions.getAccessPackageCatalogRole(GetAccessPackageCatalogRoleArgs.builder()\n .displayName(\"Catalog owner\")\n .build());\n\n var exampleAccessPackageCatalog = new AccessPackageCatalog(\"exampleAccessPackageCatalog\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-access-package-catalog\")\n .description(\"Example access package catalog\")\n .build());\n\n var exampleAccessPackageCatalogRoleAssignment = new AccessPackageCatalogRoleAssignment(\"exampleAccessPackageCatalogRoleAssignment\", AccessPackageCatalogRoleAssignmentArgs.builder()\n .roleId(exampleGetAccessPackageCatalogRole.applyValue(getAccessPackageCatalogRoleResult -\u003e getAccessPackageCatalogRoleResult.objectId()))\n .principalObjectId(example.applyValue(getUserResult -\u003e getUserResult.objectId()))\n .catalogId(exampleAccessPackageCatalog.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAccessPackageCatalog:\n type: azuread:AccessPackageCatalog\n name: example\n properties:\n displayName: example-access-package-catalog\n description: Example access package catalog\n exampleAccessPackageCatalogRoleAssignment:\n type: azuread:AccessPackageCatalogRoleAssignment\n name: example\n properties:\n roleId: ${exampleGetAccessPackageCatalogRole.objectId}\n principalObjectId: ${example.objectId}\n catalogId: ${exampleAccessPackageCatalog.id}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n exampleGetAccessPackageCatalogRole:\n fn::invoke:\n Function: azuread:getAccessPackageCatalogRole\n Arguments:\n displayName: Catalog owner\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCatalog role assignments can be imported using the ID of the assignment, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageCatalogRoleAssignment:AccessPackageCatalogRoleAssignment example 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "catalogId": { "type": "string", @@ -3601,7 +3595,7 @@ } }, "azuread:index/accessPackageResourceCatalogAssociation:AccessPackageResourceCatalogAssociation": { - "description": "Manages the resources added to access package catalogs within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Catalog owner` or `Global Administrator`\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"example-group\",\n securityEnabled: true,\n});\nconst exampleAccessPackageCatalog = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-catalog\",\n description: \"Example catalog\",\n});\nconst exampleAccessPackageResourceCatalogAssociation = new azuread.AccessPackageResourceCatalogAssociation(\"example\", {\n catalogId: exampleCatalog.id,\n resourceOriginId: exampleGroup.objectId,\n resourceOriginSystem: \"AadGroup\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"example-group\",\n security_enabled=True)\nexample_access_package_catalog = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-catalog\",\n description=\"Example catalog\")\nexample_access_package_resource_catalog_association = azuread.AccessPackageResourceCatalogAssociation(\"example\",\n catalog_id=example_catalog[\"id\"],\n resource_origin_id=example_group[\"objectId\"],\n resource_origin_system=\"AadGroup\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example-group\",\n SecurityEnabled = true,\n });\n\n var exampleAccessPackageCatalog = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-catalog\",\n Description = \"Example catalog\",\n });\n\n var exampleAccessPackageResourceCatalogAssociation = new AzureAD.AccessPackageResourceCatalogAssociation(\"example\", new()\n {\n CatalogId = exampleCatalog.Id,\n ResourceOriginId = exampleGroup.ObjectId,\n ResourceOriginSystem = \"AadGroup\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example-group\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageResourceCatalogAssociation(ctx, \"example\", \u0026azuread.AccessPackageResourceCatalogAssociationArgs{\n\t\t\tCatalogId: pulumi.Any(exampleCatalog.Id),\n\t\t\tResourceOriginId: pulumi.Any(exampleGroup.ObjectId),\n\t\t\tResourceOriginSystem: pulumi.String(\"AadGroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackageResourceCatalogAssociation;\nimport com.pulumi.azuread.AccessPackageResourceCatalogAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"example-group\")\n .securityEnabled(true)\n .build());\n\n var exampleAccessPackageCatalog = new AccessPackageCatalog(\"exampleAccessPackageCatalog\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-catalog\")\n .description(\"Example catalog\")\n .build());\n\n var exampleAccessPackageResourceCatalogAssociation = new AccessPackageResourceCatalogAssociation(\"exampleAccessPackageResourceCatalogAssociation\", AccessPackageResourceCatalogAssociationArgs.builder()\n .catalogId(exampleCatalog.id())\n .resourceOriginId(exampleGroup.objectId())\n .resourceOriginSystem(\"AadGroup\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: example-group\n securityEnabled: true\n exampleAccessPackageCatalog:\n type: azuread:AccessPackageCatalog\n name: example\n properties:\n displayName: example-catalog\n description: Example catalog\n exampleAccessPackageResourceCatalogAssociation:\n type: azuread:AccessPackageResourceCatalogAssociation\n name: example\n properties:\n catalogId: ${exampleCatalog.id}\n resourceOriginId: ${exampleGroup.objectId}\n resourceOriginSystem: AadGroup\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe resource and catalog association can be imported using the catalog ID and the resource origin ID, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageResourceCatalogAssociation:AccessPackageResourceCatalogAssociation example 00000000-0000-0000-0000-000000000000/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Catalog ID and the Resource Origin ID in the format `{CatalogID}/{ResourceOriginID}`.\n\n", + "description": "Manages the resources added to access package catalogs within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Catalog owner` or `Global Administrator`\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"example-group\",\n securityEnabled: true,\n});\nconst exampleAccessPackageCatalog = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-catalog\",\n description: \"Example catalog\",\n});\nconst exampleAccessPackageResourceCatalogAssociation = new azuread.AccessPackageResourceCatalogAssociation(\"example\", {\n catalogId: exampleCatalog.id,\n resourceOriginId: exampleGroup.objectId,\n resourceOriginSystem: \"AadGroup\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"example-group\",\n security_enabled=True)\nexample_access_package_catalog = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-catalog\",\n description=\"Example catalog\")\nexample_access_package_resource_catalog_association = azuread.AccessPackageResourceCatalogAssociation(\"example\",\n catalog_id=example_catalog[\"id\"],\n resource_origin_id=example_group[\"objectId\"],\n resource_origin_system=\"AadGroup\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example-group\",\n SecurityEnabled = true,\n });\n\n var exampleAccessPackageCatalog = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-catalog\",\n Description = \"Example catalog\",\n });\n\n var exampleAccessPackageResourceCatalogAssociation = new AzureAD.AccessPackageResourceCatalogAssociation(\"example\", new()\n {\n CatalogId = exampleCatalog.Id,\n ResourceOriginId = exampleGroup.ObjectId,\n ResourceOriginSystem = \"AadGroup\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example-group\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageResourceCatalogAssociation(ctx, \"example\", \u0026azuread.AccessPackageResourceCatalogAssociationArgs{\n\t\t\tCatalogId: pulumi.Any(exampleCatalog.Id),\n\t\t\tResourceOriginId: pulumi.Any(exampleGroup.ObjectId),\n\t\t\tResourceOriginSystem: pulumi.String(\"AadGroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackageResourceCatalogAssociation;\nimport com.pulumi.azuread.AccessPackageResourceCatalogAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"example-group\")\n .securityEnabled(true)\n .build());\n\n var exampleAccessPackageCatalog = new AccessPackageCatalog(\"exampleAccessPackageCatalog\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-catalog\")\n .description(\"Example catalog\")\n .build());\n\n var exampleAccessPackageResourceCatalogAssociation = new AccessPackageResourceCatalogAssociation(\"exampleAccessPackageResourceCatalogAssociation\", AccessPackageResourceCatalogAssociationArgs.builder()\n .catalogId(exampleCatalog.id())\n .resourceOriginId(exampleGroup.objectId())\n .resourceOriginSystem(\"AadGroup\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: example-group\n securityEnabled: true\n exampleAccessPackageCatalog:\n type: azuread:AccessPackageCatalog\n name: example\n properties:\n displayName: example-catalog\n description: Example catalog\n exampleAccessPackageResourceCatalogAssociation:\n type: azuread:AccessPackageResourceCatalogAssociation\n name: example\n properties:\n catalogId: ${exampleCatalog.id}\n resourceOriginId: ${exampleGroup.objectId}\n resourceOriginSystem: AadGroup\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe resource and catalog association can be imported using the catalog ID and the resource origin ID, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageResourceCatalogAssociation:AccessPackageResourceCatalogAssociation example 00000000-0000-0000-0000-000000000000/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Catalog ID and the Resource Origin ID in the format `{CatalogID}/{ResourceOriginID}`.\n\n", "properties": { "catalogId": { "type": "string", @@ -3666,7 +3660,7 @@ } }, "azuread:index/accessPackageResourcePackageAssociation:AccessPackageResourcePackageAssociation": { - "description": "Manages the resources added to access packages within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Catalog owner`, `Access package manager` or `Global Administrator`.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"example-group\",\n securityEnabled: true,\n});\nconst exampleAccessPackageCatalog = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-catalog\",\n description: \"Example catalog\",\n});\nconst exampleAccessPackageResourceCatalogAssociation = new azuread.AccessPackageResourceCatalogAssociation(\"example\", {\n catalogId: exampleCatalog.id,\n resourceOriginId: exampleGroup.objectId,\n resourceOriginSystem: \"AadGroup\",\n});\nconst exampleAccessPackage = new azuread.AccessPackage(\"example\", {\n displayName: \"example-package\",\n description: \"Example Package\",\n catalogId: exampleCatalog.id,\n});\nconst exampleAccessPackageResourcePackageAssociation = new azuread.AccessPackageResourcePackageAssociation(\"example\", {\n accessPackageId: exampleAccessPackage.id,\n catalogResourceAssociationId: exampleAccessPackageResourceCatalogAssociation.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"example-group\",\n security_enabled=True)\nexample_access_package_catalog = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-catalog\",\n description=\"Example catalog\")\nexample_access_package_resource_catalog_association = azuread.AccessPackageResourceCatalogAssociation(\"example\",\n catalog_id=example_catalog[\"id\"],\n resource_origin_id=example_group[\"objectId\"],\n resource_origin_system=\"AadGroup\")\nexample_access_package = azuread.AccessPackage(\"example\",\n display_name=\"example-package\",\n description=\"Example Package\",\n catalog_id=example_catalog[\"id\"])\nexample_access_package_resource_package_association = azuread.AccessPackageResourcePackageAssociation(\"example\",\n access_package_id=example_access_package.id,\n catalog_resource_association_id=example_access_package_resource_catalog_association.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example-group\",\n SecurityEnabled = true,\n });\n\n var exampleAccessPackageCatalog = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-catalog\",\n Description = \"Example catalog\",\n });\n\n var exampleAccessPackageResourceCatalogAssociation = new AzureAD.AccessPackageResourceCatalogAssociation(\"example\", new()\n {\n CatalogId = exampleCatalog.Id,\n ResourceOriginId = exampleGroup.ObjectId,\n ResourceOriginSystem = \"AadGroup\",\n });\n\n var exampleAccessPackage = new AzureAD.AccessPackage(\"example\", new()\n {\n DisplayName = \"example-package\",\n Description = \"Example Package\",\n CatalogId = exampleCatalog.Id,\n });\n\n var exampleAccessPackageResourcePackageAssociation = new AzureAD.AccessPackageResourcePackageAssociation(\"example\", new()\n {\n AccessPackageId = exampleAccessPackage.Id,\n CatalogResourceAssociationId = exampleAccessPackageResourceCatalogAssociation.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example-group\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackageResourceCatalogAssociation, err := azuread.NewAccessPackageResourceCatalogAssociation(ctx, \"example\", \u0026azuread.AccessPackageResourceCatalogAssociationArgs{\n\t\t\tCatalogId: pulumi.Any(exampleCatalog.Id),\n\t\t\tResourceOriginId: pulumi.Any(exampleGroup.ObjectId),\n\t\t\tResourceOriginSystem: pulumi.String(\"AadGroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackage, err := azuread.NewAccessPackage(ctx, \"example\", \u0026azuread.AccessPackageArgs{\n\t\t\tDisplayName: pulumi.String(\"example-package\"),\n\t\t\tDescription: pulumi.String(\"Example Package\"),\n\t\t\tCatalogId: pulumi.Any(exampleCatalog.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageResourcePackageAssociation(ctx, \"example\", \u0026azuread.AccessPackageResourcePackageAssociationArgs{\n\t\t\tAccessPackageId: exampleAccessPackage.ID(),\n\t\t\tCatalogResourceAssociationId: exampleAccessPackageResourceCatalogAssociation.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackageResourceCatalogAssociation;\nimport com.pulumi.azuread.AccessPackageResourceCatalogAssociationArgs;\nimport com.pulumi.azuread.AccessPackage;\nimport com.pulumi.azuread.AccessPackageArgs;\nimport com.pulumi.azuread.AccessPackageResourcePackageAssociation;\nimport com.pulumi.azuread.AccessPackageResourcePackageAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"example-group\")\n .securityEnabled(true)\n .build());\n\n var exampleAccessPackageCatalog = new AccessPackageCatalog(\"exampleAccessPackageCatalog\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-catalog\")\n .description(\"Example catalog\")\n .build());\n\n var exampleAccessPackageResourceCatalogAssociation = new AccessPackageResourceCatalogAssociation(\"exampleAccessPackageResourceCatalogAssociation\", AccessPackageResourceCatalogAssociationArgs.builder()\n .catalogId(exampleCatalog.id())\n .resourceOriginId(exampleGroup.objectId())\n .resourceOriginSystem(\"AadGroup\")\n .build());\n\n var exampleAccessPackage = new AccessPackage(\"exampleAccessPackage\", AccessPackageArgs.builder()\n .displayName(\"example-package\")\n .description(\"Example Package\")\n .catalogId(exampleCatalog.id())\n .build());\n\n var exampleAccessPackageResourcePackageAssociation = new AccessPackageResourcePackageAssociation(\"exampleAccessPackageResourcePackageAssociation\", AccessPackageResourcePackageAssociationArgs.builder()\n .accessPackageId(exampleAccessPackage.id())\n .catalogResourceAssociationId(exampleAccessPackageResourceCatalogAssociation.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: example-group\n securityEnabled: true\n exampleAccessPackageCatalog:\n type: azuread:AccessPackageCatalog\n name: example\n properties:\n displayName: example-catalog\n description: Example catalog\n exampleAccessPackageResourceCatalogAssociation:\n type: azuread:AccessPackageResourceCatalogAssociation\n name: example\n properties:\n catalogId: ${exampleCatalog.id}\n resourceOriginId: ${exampleGroup.objectId}\n resourceOriginSystem: AadGroup\n exampleAccessPackage:\n type: azuread:AccessPackage\n name: example\n properties:\n displayName: example-package\n description: Example Package\n catalogId: ${exampleCatalog.id}\n exampleAccessPackageResourcePackageAssociation:\n type: azuread:AccessPackageResourcePackageAssociation\n name: example\n properties:\n accessPackageId: ${exampleAccessPackage.id}\n catalogResourceAssociationId: ${exampleAccessPackageResourceCatalogAssociation.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe resource and catalog association can be imported using the access package ID, the access package ResourceRoleScope, the resource origin ID, and the access type, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageResourcePackageAssociation:AccessPackageResourcePackageAssociation example 00000000-0000-0000-0000-000000000000/11111111-1111-1111-1111-111111111111_22222222-2222-2222-2222-22222222/33333333-3333-3333-3333-33333333/Member\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Access Package ID, the access package ResourceRoleScope (in the format Role_Scope), the Resource Origin ID, and the Access Type, in the format `{AccessPackageID}/{ResourceRoleScope}/{ResourceOriginID}/{AccessType}`.\n\n", + "description": "Manages the resources added to access packages within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Catalog owner`, `Access package manager` or `Global Administrator`.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"example-group\",\n securityEnabled: true,\n});\nconst exampleAccessPackageCatalog = new azuread.AccessPackageCatalog(\"example\", {\n displayName: \"example-catalog\",\n description: \"Example catalog\",\n});\nconst exampleAccessPackageResourceCatalogAssociation = new azuread.AccessPackageResourceCatalogAssociation(\"example\", {\n catalogId: exampleCatalog.id,\n resourceOriginId: exampleGroup.objectId,\n resourceOriginSystem: \"AadGroup\",\n});\nconst exampleAccessPackage = new azuread.AccessPackage(\"example\", {\n displayName: \"example-package\",\n description: \"Example Package\",\n catalogId: exampleCatalog.id,\n});\nconst exampleAccessPackageResourcePackageAssociation = new azuread.AccessPackageResourcePackageAssociation(\"example\", {\n accessPackageId: exampleAccessPackage.id,\n catalogResourceAssociationId: exampleAccessPackageResourceCatalogAssociation.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"example-group\",\n security_enabled=True)\nexample_access_package_catalog = azuread.AccessPackageCatalog(\"example\",\n display_name=\"example-catalog\",\n description=\"Example catalog\")\nexample_access_package_resource_catalog_association = azuread.AccessPackageResourceCatalogAssociation(\"example\",\n catalog_id=example_catalog[\"id\"],\n resource_origin_id=example_group[\"objectId\"],\n resource_origin_system=\"AadGroup\")\nexample_access_package = azuread.AccessPackage(\"example\",\n display_name=\"example-package\",\n description=\"Example Package\",\n catalog_id=example_catalog[\"id\"])\nexample_access_package_resource_package_association = azuread.AccessPackageResourcePackageAssociation(\"example\",\n access_package_id=example_access_package.id,\n catalog_resource_association_id=example_access_package_resource_catalog_association.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example-group\",\n SecurityEnabled = true,\n });\n\n var exampleAccessPackageCatalog = new AzureAD.AccessPackageCatalog(\"example\", new()\n {\n DisplayName = \"example-catalog\",\n Description = \"Example catalog\",\n });\n\n var exampleAccessPackageResourceCatalogAssociation = new AzureAD.AccessPackageResourceCatalogAssociation(\"example\", new()\n {\n CatalogId = exampleCatalog.Id,\n ResourceOriginId = exampleGroup.ObjectId,\n ResourceOriginSystem = \"AadGroup\",\n });\n\n var exampleAccessPackage = new AzureAD.AccessPackage(\"example\", new()\n {\n DisplayName = \"example-package\",\n Description = \"Example Package\",\n CatalogId = exampleCatalog.Id,\n });\n\n var exampleAccessPackageResourcePackageAssociation = new AzureAD.AccessPackageResourcePackageAssociation(\"example\", new()\n {\n AccessPackageId = exampleAccessPackage.Id,\n CatalogResourceAssociationId = exampleAccessPackageResourceCatalogAssociation.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example-group\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageCatalog(ctx, \"example\", \u0026azuread.AccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.String(\"example-catalog\"),\n\t\t\tDescription: pulumi.String(\"Example catalog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackageResourceCatalogAssociation, err := azuread.NewAccessPackageResourceCatalogAssociation(ctx, \"example\", \u0026azuread.AccessPackageResourceCatalogAssociationArgs{\n\t\t\tCatalogId: pulumi.Any(exampleCatalog.Id),\n\t\t\tResourceOriginId: pulumi.Any(exampleGroup.ObjectId),\n\t\t\tResourceOriginSystem: pulumi.String(\"AadGroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccessPackage, err := azuread.NewAccessPackage(ctx, \"example\", \u0026azuread.AccessPackageArgs{\n\t\t\tDisplayName: pulumi.String(\"example-package\"),\n\t\t\tDescription: pulumi.String(\"Example Package\"),\n\t\t\tCatalogId: pulumi.Any(exampleCatalog.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAccessPackageResourcePackageAssociation(ctx, \"example\", \u0026azuread.AccessPackageResourcePackageAssociationArgs{\n\t\t\tAccessPackageId: exampleAccessPackage.ID(),\n\t\t\tCatalogResourceAssociationId: exampleAccessPackageResourceCatalogAssociation.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.AccessPackageCatalog;\nimport com.pulumi.azuread.AccessPackageCatalogArgs;\nimport com.pulumi.azuread.AccessPackageResourceCatalogAssociation;\nimport com.pulumi.azuread.AccessPackageResourceCatalogAssociationArgs;\nimport com.pulumi.azuread.AccessPackage;\nimport com.pulumi.azuread.AccessPackageArgs;\nimport com.pulumi.azuread.AccessPackageResourcePackageAssociation;\nimport com.pulumi.azuread.AccessPackageResourcePackageAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"example-group\")\n .securityEnabled(true)\n .build());\n\n var exampleAccessPackageCatalog = new AccessPackageCatalog(\"exampleAccessPackageCatalog\", AccessPackageCatalogArgs.builder()\n .displayName(\"example-catalog\")\n .description(\"Example catalog\")\n .build());\n\n var exampleAccessPackageResourceCatalogAssociation = new AccessPackageResourceCatalogAssociation(\"exampleAccessPackageResourceCatalogAssociation\", AccessPackageResourceCatalogAssociationArgs.builder()\n .catalogId(exampleCatalog.id())\n .resourceOriginId(exampleGroup.objectId())\n .resourceOriginSystem(\"AadGroup\")\n .build());\n\n var exampleAccessPackage = new AccessPackage(\"exampleAccessPackage\", AccessPackageArgs.builder()\n .displayName(\"example-package\")\n .description(\"Example Package\")\n .catalogId(exampleCatalog.id())\n .build());\n\n var exampleAccessPackageResourcePackageAssociation = new AccessPackageResourcePackageAssociation(\"exampleAccessPackageResourcePackageAssociation\", AccessPackageResourcePackageAssociationArgs.builder()\n .accessPackageId(exampleAccessPackage.id())\n .catalogResourceAssociationId(exampleAccessPackageResourceCatalogAssociation.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: example-group\n securityEnabled: true\n exampleAccessPackageCatalog:\n type: azuread:AccessPackageCatalog\n name: example\n properties:\n displayName: example-catalog\n description: Example catalog\n exampleAccessPackageResourceCatalogAssociation:\n type: azuread:AccessPackageResourceCatalogAssociation\n name: example\n properties:\n catalogId: ${exampleCatalog.id}\n resourceOriginId: ${exampleGroup.objectId}\n resourceOriginSystem: AadGroup\n exampleAccessPackage:\n type: azuread:AccessPackage\n name: example\n properties:\n displayName: example-package\n description: Example Package\n catalogId: ${exampleCatalog.id}\n exampleAccessPackageResourcePackageAssociation:\n type: azuread:AccessPackageResourcePackageAssociation\n name: example\n properties:\n accessPackageId: ${exampleAccessPackage.id}\n catalogResourceAssociationId: ${exampleAccessPackageResourceCatalogAssociation.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe resource and catalog association can be imported using the access package ID, the access package ResourceRoleScope, the resource origin ID, and the access type, e.g.\n\n```sh\n$ pulumi import azuread:index/accessPackageResourcePackageAssociation:AccessPackageResourcePackageAssociation example 00000000-0000-0000-0000-000000000000/11111111-1111-1111-1111-111111111111_22222222-2222-2222-2222-22222222/33333333-3333-3333-3333-33333333/Member\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Access Package ID, the access package ResourceRoleScope (in the format Role_Scope), the Resource Origin ID, and the Access Type, in the format `{AccessPackageID}/{ResourceRoleScope}/{ResourceOriginID}/{AccessType}`.\n\n", "properties": { "accessPackageId": { "type": "string", @@ -3729,7 +3723,7 @@ } }, "azuread:index/administrativeUnit:AdministrativeUnit": { - "description": "Manages an Administrative Unit within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `AdministrativeUnit.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.AdministrativeUnit(\"example\", {\n displayName: \"Example-AU\",\n description: \"Just an example\",\n hiddenMembershipEnabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.AdministrativeUnit(\"example\",\n display_name=\"Example-AU\",\n description=\"Just an example\",\n hidden_membership_enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.AdministrativeUnit(\"example\", new()\n {\n DisplayName = \"Example-AU\",\n Description = \"Just an example\",\n HiddenMembershipEnabled = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewAdministrativeUnit(ctx, \"example\", \u0026azuread.AdministrativeUnitArgs{\n\t\t\tDisplayName: pulumi.String(\"Example-AU\"),\n\t\t\tDescription: pulumi.String(\"Just an example\"),\n\t\t\tHiddenMembershipEnabled: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AdministrativeUnit;\nimport com.pulumi.azuread.AdministrativeUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AdministrativeUnit(\"example\", AdministrativeUnitArgs.builder()\n .displayName(\"Example-AU\")\n .description(\"Just an example\")\n .hiddenMembershipEnabled(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:AdministrativeUnit\n properties:\n displayName: Example-AU\n description: Just an example\n hiddenMembershipEnabled: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAdministrative units can be imported using their object ID, e.g.\n\n```sh\n$ pulumi import azuread:index/administrativeUnit:AdministrativeUnit example 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages an Administrative Unit within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `AdministrativeUnit.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.AdministrativeUnit(\"example\", {\n displayName: \"Example-AU\",\n description: \"Just an example\",\n hiddenMembershipEnabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.AdministrativeUnit(\"example\",\n display_name=\"Example-AU\",\n description=\"Just an example\",\n hidden_membership_enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.AdministrativeUnit(\"example\", new()\n {\n DisplayName = \"Example-AU\",\n Description = \"Just an example\",\n HiddenMembershipEnabled = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewAdministrativeUnit(ctx, \"example\", \u0026azuread.AdministrativeUnitArgs{\n\t\t\tDisplayName: pulumi.String(\"Example-AU\"),\n\t\t\tDescription: pulumi.String(\"Just an example\"),\n\t\t\tHiddenMembershipEnabled: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AdministrativeUnit;\nimport com.pulumi.azuread.AdministrativeUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AdministrativeUnit(\"example\", AdministrativeUnitArgs.builder()\n .displayName(\"Example-AU\")\n .description(\"Just an example\")\n .hiddenMembershipEnabled(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:AdministrativeUnit\n properties:\n displayName: Example-AU\n description: Just an example\n hiddenMembershipEnabled: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAdministrative units can be imported using their object ID, e.g.\n\n```sh\n$ pulumi import azuread:index/administrativeUnit:AdministrativeUnit example 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "description": { "type": "string", @@ -3827,7 +3821,7 @@ } }, "azuread:index/administrativeUnitMember:AdministrativeUnitMember": { - "description": "Manages a single administrative unit membership within Azure Active Directory.\n\n\u003e **Warning** Do not use this resource at the same time as the `members` property of the `azuread.AdministrativeUnit` resource for the same administrative unit. Doing so will cause a conflict and administrative unit members will be removed.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `AdministrativeUnit.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleAdministrativeUnit = new azuread.AdministrativeUnit(\"example\", {displayName: \"Example-AU\"});\nconst exampleAdministrativeUnitMember = new azuread.AdministrativeUnitMember(\"example\", {\n administrativeUnitObjectId: exampleAdministrativeUnit.id,\n memberObjectId: example.then(example =\u003e example.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_administrative_unit = azuread.AdministrativeUnit(\"example\", display_name=\"Example-AU\")\nexample_administrative_unit_member = azuread.AdministrativeUnitMember(\"example\",\n administrative_unit_object_id=example_administrative_unit.id,\n member_object_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleAdministrativeUnit = new AzureAD.AdministrativeUnit(\"example\", new()\n {\n DisplayName = \"Example-AU\",\n });\n\n var exampleAdministrativeUnitMember = new AzureAD.AdministrativeUnitMember(\"example\", new()\n {\n AdministrativeUnitObjectId = exampleAdministrativeUnit.Id,\n MemberObjectId = example.Apply(getUserResult =\u003e getUserResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAdministrativeUnit, err := azuread.NewAdministrativeUnit(ctx, \"example\", \u0026azuread.AdministrativeUnitArgs{\n\t\t\tDisplayName: pulumi.String(\"Example-AU\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAdministrativeUnitMember(ctx, \"example\", \u0026azuread.AdministrativeUnitMemberArgs{\n\t\t\tAdministrativeUnitObjectId: exampleAdministrativeUnit.ID(),\n\t\t\tMemberObjectId: pulumi.String(example.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.AdministrativeUnit;\nimport com.pulumi.azuread.AdministrativeUnitArgs;\nimport com.pulumi.azuread.AdministrativeUnitMember;\nimport com.pulumi.azuread.AdministrativeUnitMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleAdministrativeUnit = new AdministrativeUnit(\"exampleAdministrativeUnit\", AdministrativeUnitArgs.builder()\n .displayName(\"Example-AU\")\n .build());\n\n var exampleAdministrativeUnitMember = new AdministrativeUnitMember(\"exampleAdministrativeUnitMember\", AdministrativeUnitMemberArgs.builder()\n .administrativeUnitObjectId(exampleAdministrativeUnit.id())\n .memberObjectId(example.applyValue(getUserResult -\u003e getUserResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAdministrativeUnit:\n type: azuread:AdministrativeUnit\n name: example\n properties:\n displayName: Example-AU\n exampleAdministrativeUnitMember:\n type: azuread:AdministrativeUnitMember\n name: example\n properties:\n administrativeUnitObjectId: ${exampleAdministrativeUnit.id}\n memberObjectId: ${example.id}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAdministrative unit members can be imported using the object ID of the administrative unit and the object ID of the member, e.g.\n\n```sh\n$ pulumi import azuread:index/administrativeUnitMember:AdministrativeUnitMember example 00000000-0000-0000-0000-000000000000/member/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Administrative Unit Object ID and the target Member Object ID in the format `{AdministrativeUnitObjectID}/member/{MemberObjectID}`.\n\n", + "description": "Manages a single administrative unit membership within Azure Active Directory.\n\n\u003e **Warning** Do not use this resource at the same time as the `members` property of the `azuread.AdministrativeUnit` resource for the same administrative unit. Doing so will cause a conflict and administrative unit members will be removed.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `AdministrativeUnit.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleAdministrativeUnit = new azuread.AdministrativeUnit(\"example\", {displayName: \"Example-AU\"});\nconst exampleAdministrativeUnitMember = new azuread.AdministrativeUnitMember(\"example\", {\n administrativeUnitObjectId: exampleAdministrativeUnit.id,\n memberObjectId: example.then(example =\u003e example.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_administrative_unit = azuread.AdministrativeUnit(\"example\", display_name=\"Example-AU\")\nexample_administrative_unit_member = azuread.AdministrativeUnitMember(\"example\",\n administrative_unit_object_id=example_administrative_unit.id,\n member_object_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleAdministrativeUnit = new AzureAD.AdministrativeUnit(\"example\", new()\n {\n DisplayName = \"Example-AU\",\n });\n\n var exampleAdministrativeUnitMember = new AzureAD.AdministrativeUnitMember(\"example\", new()\n {\n AdministrativeUnitObjectId = exampleAdministrativeUnit.Id,\n MemberObjectId = example.Apply(getUserResult =\u003e getUserResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAdministrativeUnit, err := azuread.NewAdministrativeUnit(ctx, \"example\", \u0026azuread.AdministrativeUnitArgs{\n\t\t\tDisplayName: pulumi.String(\"Example-AU\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAdministrativeUnitMember(ctx, \"example\", \u0026azuread.AdministrativeUnitMemberArgs{\n\t\t\tAdministrativeUnitObjectId: exampleAdministrativeUnit.ID(),\n\t\t\tMemberObjectId: pulumi.String(example.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.AdministrativeUnit;\nimport com.pulumi.azuread.AdministrativeUnitArgs;\nimport com.pulumi.azuread.AdministrativeUnitMember;\nimport com.pulumi.azuread.AdministrativeUnitMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleAdministrativeUnit = new AdministrativeUnit(\"exampleAdministrativeUnit\", AdministrativeUnitArgs.builder()\n .displayName(\"Example-AU\")\n .build());\n\n var exampleAdministrativeUnitMember = new AdministrativeUnitMember(\"exampleAdministrativeUnitMember\", AdministrativeUnitMemberArgs.builder()\n .administrativeUnitObjectId(exampleAdministrativeUnit.id())\n .memberObjectId(example.applyValue(getUserResult -\u003e getUserResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAdministrativeUnit:\n type: azuread:AdministrativeUnit\n name: example\n properties:\n displayName: Example-AU\n exampleAdministrativeUnitMember:\n type: azuread:AdministrativeUnitMember\n name: example\n properties:\n administrativeUnitObjectId: ${exampleAdministrativeUnit.id}\n memberObjectId: ${example.id}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAdministrative unit members can be imported using the object ID of the administrative unit and the object ID of the member, e.g.\n\n```sh\n$ pulumi import azuread:index/administrativeUnitMember:AdministrativeUnitMember example 00000000-0000-0000-0000-000000000000/member/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Administrative Unit Object ID and the target Member Object ID in the format `{AdministrativeUnitObjectID}/member/{MemberObjectID}`.\n\n", "properties": { "administrativeUnitObjectId": { "type": "string", @@ -3868,7 +3862,7 @@ } }, "azuread:index/administrativeUnitRoleMember:AdministrativeUnitRoleMember": { - "description": "Manages a single directory role assignment scoped to an administrative unit within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `AdministrativeUnit.ReadWrite.All` and `RoleManagement.ReadWrite.Directory`, or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleAdministrativeUnit = new azuread.AdministrativeUnit(\"example\", {displayName: \"Example-AU\"});\nconst exampleDirectoryRole = new azuread.DirectoryRole(\"example\", {displayName: \"Security administrator\"});\nconst exampleAdministrativeUnitRoleMember = new azuread.AdministrativeUnitRoleMember(\"example\", {\n roleObjectId: exampleDirectoryRole.objectId,\n administrativeUnitObjectId: exampleAdministrativeUnit.id,\n memberObjectId: example.then(example =\u003e example.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_administrative_unit = azuread.AdministrativeUnit(\"example\", display_name=\"Example-AU\")\nexample_directory_role = azuread.DirectoryRole(\"example\", display_name=\"Security administrator\")\nexample_administrative_unit_role_member = azuread.AdministrativeUnitRoleMember(\"example\",\n role_object_id=example_directory_role.object_id,\n administrative_unit_object_id=example_administrative_unit.id,\n member_object_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleAdministrativeUnit = new AzureAD.AdministrativeUnit(\"example\", new()\n {\n DisplayName = \"Example-AU\",\n });\n\n var exampleDirectoryRole = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Security administrator\",\n });\n\n var exampleAdministrativeUnitRoleMember = new AzureAD.AdministrativeUnitRoleMember(\"example\", new()\n {\n RoleObjectId = exampleDirectoryRole.ObjectId,\n AdministrativeUnitObjectId = exampleAdministrativeUnit.Id,\n MemberObjectId = example.Apply(getUserResult =\u003e getUserResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAdministrativeUnit, err := azuread.NewAdministrativeUnit(ctx, \"example\", \u0026azuread.AdministrativeUnitArgs{\n\t\t\tDisplayName: pulumi.String(\"Example-AU\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDirectoryRole, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Security administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAdministrativeUnitRoleMember(ctx, \"example\", \u0026azuread.AdministrativeUnitRoleMemberArgs{\n\t\t\tRoleObjectId: exampleDirectoryRole.ObjectId,\n\t\t\tAdministrativeUnitObjectId: exampleAdministrativeUnit.ID(),\n\t\t\tMemberObjectId: pulumi.String(example.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.AdministrativeUnit;\nimport com.pulumi.azuread.AdministrativeUnitArgs;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport com.pulumi.azuread.AdministrativeUnitRoleMember;\nimport com.pulumi.azuread.AdministrativeUnitRoleMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleAdministrativeUnit = new AdministrativeUnit(\"exampleAdministrativeUnit\", AdministrativeUnitArgs.builder()\n .displayName(\"Example-AU\")\n .build());\n\n var exampleDirectoryRole = new DirectoryRole(\"exampleDirectoryRole\", DirectoryRoleArgs.builder()\n .displayName(\"Security administrator\")\n .build());\n\n var exampleAdministrativeUnitRoleMember = new AdministrativeUnitRoleMember(\"exampleAdministrativeUnitRoleMember\", AdministrativeUnitRoleMemberArgs.builder()\n .roleObjectId(exampleDirectoryRole.objectId())\n .administrativeUnitObjectId(exampleAdministrativeUnit.id())\n .memberObjectId(example.applyValue(getUserResult -\u003e getUserResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAdministrativeUnit:\n type: azuread:AdministrativeUnit\n name: example\n properties:\n displayName: Example-AU\n exampleDirectoryRole:\n type: azuread:DirectoryRole\n name: example\n properties:\n displayName: Security administrator\n exampleAdministrativeUnitRoleMember:\n type: azuread:AdministrativeUnitRoleMember\n name: example\n properties:\n roleObjectId: ${exampleDirectoryRole.objectId}\n administrativeUnitObjectId: ${exampleAdministrativeUnit.id}\n memberObjectId: ${example.id}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAdministrative unit role members can be imported using the object ID of the administrative unit and the unique ID of the role assignment, e.g.\n\n```sh\n$ pulumi import azuread:index/administrativeUnitRoleMember:AdministrativeUnitRoleMember example 00000000-0000-0000-0000-000000000000/roleMember/zX37MRLyF0uvE-xf2WH4B7x-6CPLfudNnxFGj800htpBXqkxW7bITqGb6Rj4kuTuS\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Administrative Unit Object ID and the role assignment ID in the format `{AdministrativeUnitObjectID}/roleMember/{RoleAssignmentID}`.\n\n", + "description": "Manages a single directory role assignment scoped to an administrative unit within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `AdministrativeUnit.ReadWrite.All` and `RoleManagement.ReadWrite.Directory`, or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleAdministrativeUnit = new azuread.AdministrativeUnit(\"example\", {displayName: \"Example-AU\"});\nconst exampleDirectoryRole = new azuread.DirectoryRole(\"example\", {displayName: \"Security administrator\"});\nconst exampleAdministrativeUnitRoleMember = new azuread.AdministrativeUnitRoleMember(\"example\", {\n roleObjectId: exampleDirectoryRole.objectId,\n administrativeUnitObjectId: exampleAdministrativeUnit.id,\n memberObjectId: example.then(example =\u003e example.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_administrative_unit = azuread.AdministrativeUnit(\"example\", display_name=\"Example-AU\")\nexample_directory_role = azuread.DirectoryRole(\"example\", display_name=\"Security administrator\")\nexample_administrative_unit_role_member = azuread.AdministrativeUnitRoleMember(\"example\",\n role_object_id=example_directory_role.object_id,\n administrative_unit_object_id=example_administrative_unit.id,\n member_object_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleAdministrativeUnit = new AzureAD.AdministrativeUnit(\"example\", new()\n {\n DisplayName = \"Example-AU\",\n });\n\n var exampleDirectoryRole = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Security administrator\",\n });\n\n var exampleAdministrativeUnitRoleMember = new AzureAD.AdministrativeUnitRoleMember(\"example\", new()\n {\n RoleObjectId = exampleDirectoryRole.ObjectId,\n AdministrativeUnitObjectId = exampleAdministrativeUnit.Id,\n MemberObjectId = example.Apply(getUserResult =\u003e getUserResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAdministrativeUnit, err := azuread.NewAdministrativeUnit(ctx, \"example\", \u0026azuread.AdministrativeUnitArgs{\n\t\t\tDisplayName: pulumi.String(\"Example-AU\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDirectoryRole, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Security administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAdministrativeUnitRoleMember(ctx, \"example\", \u0026azuread.AdministrativeUnitRoleMemberArgs{\n\t\t\tRoleObjectId: exampleDirectoryRole.ObjectId,\n\t\t\tAdministrativeUnitObjectId: exampleAdministrativeUnit.ID(),\n\t\t\tMemberObjectId: pulumi.String(example.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.AdministrativeUnit;\nimport com.pulumi.azuread.AdministrativeUnitArgs;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport com.pulumi.azuread.AdministrativeUnitRoleMember;\nimport com.pulumi.azuread.AdministrativeUnitRoleMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleAdministrativeUnit = new AdministrativeUnit(\"exampleAdministrativeUnit\", AdministrativeUnitArgs.builder()\n .displayName(\"Example-AU\")\n .build());\n\n var exampleDirectoryRole = new DirectoryRole(\"exampleDirectoryRole\", DirectoryRoleArgs.builder()\n .displayName(\"Security administrator\")\n .build());\n\n var exampleAdministrativeUnitRoleMember = new AdministrativeUnitRoleMember(\"exampleAdministrativeUnitRoleMember\", AdministrativeUnitRoleMemberArgs.builder()\n .roleObjectId(exampleDirectoryRole.objectId())\n .administrativeUnitObjectId(exampleAdministrativeUnit.id())\n .memberObjectId(example.applyValue(getUserResult -\u003e getUserResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAdministrativeUnit:\n type: azuread:AdministrativeUnit\n name: example\n properties:\n displayName: Example-AU\n exampleDirectoryRole:\n type: azuread:DirectoryRole\n name: example\n properties:\n displayName: Security administrator\n exampleAdministrativeUnitRoleMember:\n type: azuread:AdministrativeUnitRoleMember\n name: example\n properties:\n roleObjectId: ${exampleDirectoryRole.objectId}\n administrativeUnitObjectId: ${exampleAdministrativeUnit.id}\n memberObjectId: ${example.id}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAdministrative unit role members can be imported using the object ID of the administrative unit and the unique ID of the role assignment, e.g.\n\n```sh\n$ pulumi import azuread:index/administrativeUnitRoleMember:AdministrativeUnitRoleMember example 00000000-0000-0000-0000-000000000000/roleMember/zX37MRLyF0uvE-xf2WH4B7x-6CPLfudNnxFGj800htpBXqkxW7bITqGb6Rj4kuTuS\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Administrative Unit Object ID and the role assignment ID in the format `{AdministrativeUnitObjectID}/roleMember/{RoleAssignmentID}`.\n\n", "properties": { "administrativeUnitObjectId": { "type": "string", @@ -3933,7 +3927,7 @@ } }, "azuread:index/appRoleAssignment:AppRoleAssignment": { - "description": "Manages an app role assignment for a group, user or service principal. Can be used to grant admin consent for application permissions.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `AppRoleAssignment.ReadWrite.All` and `Application.Read.All`, or `AppRoleAssignment.ReadWrite.All` and `Directory.Read.All`, or `Application.ReadWrite.All`, or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n*App role assignment for accessing Microsoft Graph*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n useExisting: true,\n});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n resourceAccesses: [\n {\n id: msgraph.appRoleIds[\"User.Read.All\"],\n type: \"Role\",\n },\n {\n id: msgraph.oauth2PermissionScopeIds[\"User.ReadWrite\"],\n type: \"Scope\",\n },\n ],\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.applicationId});\nconst exampleAppRoleAssignment = new azuread.AppRoleAssignment(\"example\", {\n appRoleId: msgraph.appRoleIds[\"User.Read.All\"],\n principalObjectId: exampleServicePrincipal.objectId,\n resourceObjectId: msgraph.objectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"microsoftGraph\"],\n use_existing=True)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": well_known.result[\"microsoftGraph\"],\n \"resource_accesses\": [\n {\n \"id\": msgraph.app_role_ids[\"User.Read.All\"],\n \"type\": \"Role\",\n },\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"User.ReadWrite\"],\n \"type\": \"Scope\",\n },\n ],\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.application_id)\nexample_app_role_assignment = azuread.AppRoleAssignment(\"example\",\n app_role_id=msgraph.app_role_ids[\"User.Read.All\"],\n principal_object_id=example_service_principal.object_id,\n resource_object_id=msgraph.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.User_Read_All),\n Type = \"Role\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.User_ReadWrite),\n Type = \"Scope\",\n },\n },\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ApplicationId,\n });\n\n var exampleAppRoleAssignment = new AzureAD.AppRoleAssignment(\"example\", new()\n {\n AppRoleId = msgraph.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.User_Read_All),\n PrincipalObjectId = exampleServicePrincipal.ObjectId,\n ResourceObjectId = msgraph.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn appRoleIds.User.Read.All, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.User.ReadWrite, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAppRoleAssignment(ctx, \"example\", \u0026azuread.AppRoleAssignmentArgs{\n\t\t\tAppRoleId: msgraph.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\treturn appRoleIds.User.Read.All, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tPrincipalObjectId: exampleServicePrincipal.ObjectId,\n\t\t\tResourceObjectId: msgraph.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.AppRoleAssignment;\nimport com.pulumi.azuread.AppRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .useExisting(true)\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.User.Read.All()))\n .type(\"Role\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.User.ReadWrite()))\n .type(\"Scope\")\n .build())\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.applicationId())\n .build());\n\n var exampleAppRoleAssignment = new AppRoleAssignment(\"exampleAppRoleAssignment\", AppRoleAssignmentArgs.builder()\n .appRoleId(msgraph.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.User.Read.All()))\n .principalObjectId(exampleServicePrincipal.objectId())\n .resourceObjectId(msgraph.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.microsoftGraph}\n useExisting: true\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${wellKnown.result.microsoftGraph}\n resourceAccesses:\n - id: ${msgraph.appRoleIds\"User.Read.All\"[%!s(MISSING)]}\n type: Role\n - id: ${msgraph.oauth2PermissionScopeIds\"User.ReadWrite\"[%!s(MISSING)]}\n type: Scope\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.applicationId}\n exampleAppRoleAssignment:\n type: azuread:AppRoleAssignment\n name: example\n properties:\n appRoleId: ${msgraph.appRoleIds\"User.Read.All\"[%!s(MISSING)]}\n principalObjectId: ${exampleServicePrincipal.objectId}\n resourceObjectId: ${msgraph.objectId}\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*App role assignment for internal application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst internal = new azuread.Application(\"internal\", {\n displayName: \"internal\",\n appRoles: [{\n allowedMemberTypes: [\"Application\"],\n description: \"Apps can query the database\",\n displayName: \"Query\",\n enabled: true,\n id: \"00000000-0000-0000-0000-111111111111\",\n value: \"Query.All\",\n }],\n});\nconst internalServicePrincipal = new azuread.ServicePrincipal(\"internal\", {clientId: internal.applicationId});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: internal.applicationId,\n resourceAccesses: [{\n id: internalServicePrincipal.appRoleIds[\"Query.All\"],\n type: \"Role\",\n }],\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.applicationId});\nconst exampleAppRoleAssignment = new azuread.AppRoleAssignment(\"example\", {\n appRoleId: internalServicePrincipal.appRoleIds[\"Query.All\"],\n principalObjectId: exampleServicePrincipal.objectId,\n resourceObjectId: internalServicePrincipal.objectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ninternal = azuread.Application(\"internal\",\n display_name=\"internal\",\n app_roles=[{\n \"allowed_member_types\": [\"Application\"],\n \"description\": \"Apps can query the database\",\n \"display_name\": \"Query\",\n \"enabled\": True,\n \"id\": \"00000000-0000-0000-0000-111111111111\",\n \"value\": \"Query.All\",\n }])\ninternal_service_principal = azuread.ServicePrincipal(\"internal\", client_id=internal.application_id)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": internal.application_id,\n \"resource_accesses\": [{\n \"id\": internal_service_principal.app_role_ids[\"Query.All\"],\n \"type\": \"Role\",\n }],\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.application_id)\nexample_app_role_assignment = azuread.AppRoleAssignment(\"example\",\n app_role_id=internal_service_principal.app_role_ids[\"Query.All\"],\n principal_object_id=example_service_principal.object_id,\n resource_object_id=internal_service_principal.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new AzureAD.Application(\"internal\", new()\n {\n DisplayName = \"internal\",\n AppRoles = new[]\n {\n new AzureAD.Inputs.ApplicationAppRoleArgs\n {\n AllowedMemberTypes = new[]\n {\n \"Application\",\n },\n Description = \"Apps can query the database\",\n DisplayName = \"Query\",\n Enabled = true,\n Id = \"00000000-0000-0000-0000-111111111111\",\n Value = \"Query.All\",\n },\n },\n });\n\n var internalServicePrincipal = new AzureAD.ServicePrincipal(\"internal\", new()\n {\n ClientId = @internal.ApplicationId,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = @internal.ApplicationId,\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = internalServicePrincipal.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.Query_All),\n Type = \"Role\",\n },\n },\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ApplicationId,\n });\n\n var exampleAppRoleAssignment = new AzureAD.AppRoleAssignment(\"example\", new()\n {\n AppRoleId = internalServicePrincipal.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.Query_All),\n PrincipalObjectId = exampleServicePrincipal.ObjectId,\n ResourceObjectId = internalServicePrincipal.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := azuread.NewApplication(ctx, \"internal\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"internal\"),\n\t\t\tAppRoles: azuread.ApplicationAppRoleTypeArray{\n\t\t\t\t\u0026azuread.ApplicationAppRoleTypeArgs{\n\t\t\t\t\tAllowedMemberTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Application\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"Apps can query the database\"),\n\t\t\t\t\tDisplayName: pulumi.String(\"Query\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tId: pulumi.String(\"00000000-0000-0000-0000-111111111111\"),\n\t\t\t\t\tValue: pulumi.String(\"Query.All\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinternalServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"internal\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: internal.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: internal.ApplicationId,\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: internalServicePrincipal.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn appRoleIds.Query.All, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAppRoleAssignment(ctx, \"example\", \u0026azuread.AppRoleAssignmentArgs{\n\t\t\tAppRoleId: internalServicePrincipal.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\treturn appRoleIds.Query.All, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tPrincipalObjectId: exampleServicePrincipal.ObjectId,\n\t\t\tResourceObjectId: internalServicePrincipal.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationAppRoleArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.AppRoleAssignment;\nimport com.pulumi.azuread.AppRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Application(\"internal\", ApplicationArgs.builder()\n .displayName(\"internal\")\n .appRoles(ApplicationAppRoleArgs.builder()\n .allowedMemberTypes(\"Application\")\n .description(\"Apps can query the database\")\n .displayName(\"Query\")\n .enabled(true)\n .id(\"00000000-0000-0000-0000-111111111111\")\n .value(\"Query.All\")\n .build())\n .build());\n\n var internalServicePrincipal = new ServicePrincipal(\"internalServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(internal.applicationId())\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(internal.applicationId())\n .resourceAccesses(ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(internalServicePrincipal.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.Query.All()))\n .type(\"Role\")\n .build())\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.applicationId())\n .build());\n\n var exampleAppRoleAssignment = new AppRoleAssignment(\"exampleAppRoleAssignment\", AppRoleAssignmentArgs.builder()\n .appRoleId(internalServicePrincipal.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.Query.All()))\n .principalObjectId(exampleServicePrincipal.objectId())\n .resourceObjectId(internalServicePrincipal.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: azuread:Application\n properties:\n displayName: internal\n appRoles:\n - allowedMemberTypes:\n - Application\n description: Apps can query the database\n displayName: Query\n enabled: true\n id: 00000000-0000-0000-0000-111111111111\n value: Query.All\n internalServicePrincipal:\n type: azuread:ServicePrincipal\n name: internal\n properties:\n clientId: ${internal.applicationId}\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${internal.applicationId}\n resourceAccesses:\n - id: ${internalServicePrincipal.appRoleIds\"Query.All\"[%!s(MISSING)]}\n type: Role\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.applicationId}\n exampleAppRoleAssignment:\n type: azuread:AppRoleAssignment\n name: example\n properties:\n appRoleId: ${internalServicePrincipal.appRoleIds\"Query.All\"[%!s(MISSING)]}\n principalObjectId: ${exampleServicePrincipal.objectId}\n resourceObjectId: ${internalServicePrincipal.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Assign a user and group to an internal application*\n\n## Import\n\nApp role assignments can be imported using the object ID of the service principal representing the resource and the ID of the app role assignment (note: _not_ the ID of the app role), e.g.\n\n```sh\n$ pulumi import azuread:index/appRoleAssignment:AppRoleAssignment example 00000000-0000-0000-0000-000000000000/appRoleAssignment/aaBBcDDeFG6h5JKLMN2PQrrssTTUUvWWxxxxxyyyzzz\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Resource Service Principal Object ID and the ID of the App Role Assignment in the format `{ResourcePrincipalID}/appRoleAssignment/{AppRoleAssignmentID}`.\n\n", + "description": "Manages an app role assignment for a group, user or service principal. Can be used to grant admin consent for application permissions.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `AppRoleAssignment.ReadWrite.All` and `Application.Read.All`, or `AppRoleAssignment.ReadWrite.All` and `Directory.Read.All`, or `Application.ReadWrite.All`, or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n*App role assignment for accessing Microsoft Graph*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n useExisting: true,\n});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n resourceAccesses: [\n {\n id: msgraph.appRoleIds[\"User.Read.All\"],\n type: \"Role\",\n },\n {\n id: msgraph.oauth2PermissionScopeIds[\"User.ReadWrite\"],\n type: \"Scope\",\n },\n ],\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleAppRoleAssignment = new azuread.AppRoleAssignment(\"example\", {\n appRoleId: msgraph.appRoleIds[\"User.Read.All\"],\n principalObjectId: exampleServicePrincipal.objectId,\n resourceObjectId: msgraph.objectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"microsoftGraph\"],\n use_existing=True)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": well_known.result[\"microsoftGraph\"],\n \"resource_accesses\": [\n {\n \"id\": msgraph.app_role_ids[\"User.Read.All\"],\n \"type\": \"Role\",\n },\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"User.ReadWrite\"],\n \"type\": \"Scope\",\n },\n ],\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_app_role_assignment = azuread.AppRoleAssignment(\"example\",\n app_role_id=msgraph.app_role_ids[\"User.Read.All\"],\n principal_object_id=example_service_principal.object_id,\n resource_object_id=msgraph.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.User_Read_All),\n Type = \"Role\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.User_ReadWrite),\n Type = \"Scope\",\n },\n },\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleAppRoleAssignment = new AzureAD.AppRoleAssignment(\"example\", new()\n {\n AppRoleId = msgraph.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.User_Read_All),\n PrincipalObjectId = exampleServicePrincipal.ObjectId,\n ResourceObjectId = msgraph.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn appRoleIds.User.Read.All, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.User.ReadWrite, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAppRoleAssignment(ctx, \"example\", \u0026azuread.AppRoleAssignmentArgs{\n\t\t\tAppRoleId: msgraph.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\treturn appRoleIds.User.Read.All, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tPrincipalObjectId: exampleServicePrincipal.ObjectId,\n\t\t\tResourceObjectId: msgraph.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.AppRoleAssignment;\nimport com.pulumi.azuread.AppRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .useExisting(true)\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.User.Read.All()))\n .type(\"Role\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.User.ReadWrite()))\n .type(\"Scope\")\n .build())\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleAppRoleAssignment = new AppRoleAssignment(\"exampleAppRoleAssignment\", AppRoleAssignmentArgs.builder()\n .appRoleId(msgraph.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.User.Read.All()))\n .principalObjectId(exampleServicePrincipal.objectId())\n .resourceObjectId(msgraph.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.microsoftGraph}\n useExisting: true\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${wellKnown.result.microsoftGraph}\n resourceAccesses:\n - id: ${msgraph.appRoleIds\"User.Read.All\"[%!s(MISSING)]}\n type: Role\n - id: ${msgraph.oauth2PermissionScopeIds\"User.ReadWrite\"[%!s(MISSING)]}\n type: Scope\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleAppRoleAssignment:\n type: azuread:AppRoleAssignment\n name: example\n properties:\n appRoleId: ${msgraph.appRoleIds\"User.Read.All\"[%!s(MISSING)]}\n principalObjectId: ${exampleServicePrincipal.objectId}\n resourceObjectId: ${msgraph.objectId}\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*App role assignment for internal application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst internal = new azuread.Application(\"internal\", {\n displayName: \"internal\",\n appRoles: [{\n allowedMemberTypes: [\"Application\"],\n description: \"Apps can query the database\",\n displayName: \"Query\",\n enabled: true,\n id: \"00000000-0000-0000-0000-111111111111\",\n value: \"Query.All\",\n }],\n});\nconst internalServicePrincipal = new azuread.ServicePrincipal(\"internal\", {clientId: internal.clientId});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: internal.clientId,\n resourceAccesses: [{\n id: internalServicePrincipal.appRoleIds[\"Query.All\"],\n type: \"Role\",\n }],\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleAppRoleAssignment = new azuread.AppRoleAssignment(\"example\", {\n appRoleId: internalServicePrincipal.appRoleIds[\"Query.All\"],\n principalObjectId: exampleServicePrincipal.objectId,\n resourceObjectId: internalServicePrincipal.objectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ninternal = azuread.Application(\"internal\",\n display_name=\"internal\",\n app_roles=[{\n \"allowed_member_types\": [\"Application\"],\n \"description\": \"Apps can query the database\",\n \"display_name\": \"Query\",\n \"enabled\": True,\n \"id\": \"00000000-0000-0000-0000-111111111111\",\n \"value\": \"Query.All\",\n }])\ninternal_service_principal = azuread.ServicePrincipal(\"internal\", client_id=internal.client_id)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": internal.client_id,\n \"resource_accesses\": [{\n \"id\": internal_service_principal.app_role_ids[\"Query.All\"],\n \"type\": \"Role\",\n }],\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_app_role_assignment = azuread.AppRoleAssignment(\"example\",\n app_role_id=internal_service_principal.app_role_ids[\"Query.All\"],\n principal_object_id=example_service_principal.object_id,\n resource_object_id=internal_service_principal.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new AzureAD.Application(\"internal\", new()\n {\n DisplayName = \"internal\",\n AppRoles = new[]\n {\n new AzureAD.Inputs.ApplicationAppRoleArgs\n {\n AllowedMemberTypes = new[]\n {\n \"Application\",\n },\n Description = \"Apps can query the database\",\n DisplayName = \"Query\",\n Enabled = true,\n Id = \"00000000-0000-0000-0000-111111111111\",\n Value = \"Query.All\",\n },\n },\n });\n\n var internalServicePrincipal = new AzureAD.ServicePrincipal(\"internal\", new()\n {\n ClientId = @internal.ClientId,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = @internal.ClientId,\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = internalServicePrincipal.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.Query_All),\n Type = \"Role\",\n },\n },\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleAppRoleAssignment = new AzureAD.AppRoleAssignment(\"example\", new()\n {\n AppRoleId = internalServicePrincipal.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.Query_All),\n PrincipalObjectId = exampleServicePrincipal.ObjectId,\n ResourceObjectId = internalServicePrincipal.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := azuread.NewApplication(ctx, \"internal\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"internal\"),\n\t\t\tAppRoles: azuread.ApplicationAppRoleTypeArray{\n\t\t\t\t\u0026azuread.ApplicationAppRoleTypeArgs{\n\t\t\t\t\tAllowedMemberTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Application\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"Apps can query the database\"),\n\t\t\t\t\tDisplayName: pulumi.String(\"Query\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tId: pulumi.String(\"00000000-0000-0000-0000-111111111111\"),\n\t\t\t\t\tValue: pulumi.String(\"Query.All\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinternalServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"internal\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: internal.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: internal.ClientId,\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: internalServicePrincipal.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn appRoleIds.Query.All, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAppRoleAssignment(ctx, \"example\", \u0026azuread.AppRoleAssignmentArgs{\n\t\t\tAppRoleId: internalServicePrincipal.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\treturn appRoleIds.Query.All, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tPrincipalObjectId: exampleServicePrincipal.ObjectId,\n\t\t\tResourceObjectId: internalServicePrincipal.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationAppRoleArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.AppRoleAssignment;\nimport com.pulumi.azuread.AppRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Application(\"internal\", ApplicationArgs.builder()\n .displayName(\"internal\")\n .appRoles(ApplicationAppRoleArgs.builder()\n .allowedMemberTypes(\"Application\")\n .description(\"Apps can query the database\")\n .displayName(\"Query\")\n .enabled(true)\n .id(\"00000000-0000-0000-0000-111111111111\")\n .value(\"Query.All\")\n .build())\n .build());\n\n var internalServicePrincipal = new ServicePrincipal(\"internalServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(internal.clientId())\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(internal.clientId())\n .resourceAccesses(ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(internalServicePrincipal.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.Query.All()))\n .type(\"Role\")\n .build())\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleAppRoleAssignment = new AppRoleAssignment(\"exampleAppRoleAssignment\", AppRoleAssignmentArgs.builder()\n .appRoleId(internalServicePrincipal.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.Query.All()))\n .principalObjectId(exampleServicePrincipal.objectId())\n .resourceObjectId(internalServicePrincipal.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: azuread:Application\n properties:\n displayName: internal\n appRoles:\n - allowedMemberTypes:\n - Application\n description: Apps can query the database\n displayName: Query\n enabled: true\n id: 00000000-0000-0000-0000-111111111111\n value: Query.All\n internalServicePrincipal:\n type: azuread:ServicePrincipal\n name: internal\n properties:\n clientId: ${internal.clientId}\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${internal.clientId}\n resourceAccesses:\n - id: ${internalServicePrincipal.appRoleIds\"Query.All\"[%!s(MISSING)]}\n type: Role\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleAppRoleAssignment:\n type: azuread:AppRoleAssignment\n name: example\n properties:\n appRoleId: ${internalServicePrincipal.appRoleIds\"Query.All\"[%!s(MISSING)]}\n principalObjectId: ${exampleServicePrincipal.objectId}\n resourceObjectId: ${internalServicePrincipal.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Assign a user and group to an internal application*\n\n## Import\n\nApp role assignments can be imported using the object ID of the service principal representing the resource and the ID of the app role assignment (note: _not_ the ID of the app role), e.g.\n\n```sh\n$ pulumi import azuread:index/appRoleAssignment:AppRoleAssignment example 00000000-0000-0000-0000-000000000000/appRoleAssignment/aaBBcDDeFG6h5JKLMN2PQrrssTTUUvWWxxxxxyyyzzz\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Resource Service Principal Object ID and the ID of the App Role Assignment in the format `{ResourcePrincipalID}/appRoleAssignment/{AppRoleAssignmentID}`.\n\n", "properties": { "appRoleId": { "type": "string", @@ -4025,7 +4019,7 @@ } }, "azuread:index/application:Application": { - "description": "## Example Usage\n\n*Create an application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n identifierUris: [\"api://example-app\"],\n logoImage: std.filebase64({\n input: \"/path/to/logo.png\",\n }).then(invoke =\u003e invoke.result),\n owners: [current.then(current =\u003e current.objectId)],\n signInAudience: \"AzureADMultipleOrgs\",\n api: {\n mappedClaimsEnabled: true,\n requestedAccessTokenVersion: 2,\n knownClientApplications: [\n known1.applicationId,\n known2.applicationId,\n ],\n oauth2PermissionScopes: [\n {\n adminConsentDescription: \"Allow the application to access example on behalf of the signed-in user.\",\n adminConsentDisplayName: \"Access example\",\n enabled: true,\n id: \"96183846-204b-4b43-82e1-5d2222eb4b9b\",\n type: \"User\",\n userConsentDescription: \"Allow the application to access example on your behalf.\",\n userConsentDisplayName: \"Access example\",\n value: \"user_impersonation\",\n },\n {\n adminConsentDescription: \"Administer the example application\",\n adminConsentDisplayName: \"Administer\",\n enabled: true,\n id: \"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\",\n type: \"Admin\",\n value: \"administer\",\n },\n ],\n },\n appRoles: [\n {\n allowedMemberTypes: [\n \"User\",\n \"Application\",\n ],\n description: \"Admins can manage roles and perform all task actions\",\n displayName: \"Admin\",\n enabled: true,\n id: \"1b19509b-32b1-4e9f-b71d-4992aa991967\",\n value: \"admin\",\n },\n {\n allowedMemberTypes: [\"User\"],\n description: \"ReadOnly roles have limited query access\",\n displayName: \"ReadOnly\",\n enabled: true,\n id: \"497406e4-012a-4267-bf18-45a1cb148a01\",\n value: \"User\",\n },\n ],\n featureTags: [{\n enterprise: true,\n gallery: true,\n }],\n optionalClaims: {\n accessTokens: [\n {\n name: \"myclaim\",\n },\n {\n name: \"otherclaim\",\n },\n ],\n idTokens: [{\n name: \"userclaim\",\n source: \"user\",\n essential: true,\n additionalProperties: [\"emit_as_roles\"],\n }],\n saml2Tokens: [{\n name: \"samlexample\",\n }],\n },\n requiredResourceAccesses: [\n {\n resourceAppId: \"00000003-0000-0000-c000-000000000000\",\n resourceAccesses: [\n {\n id: \"df021288-bdef-4463-88db-98f22de89214\",\n type: \"Role\",\n },\n {\n id: \"b4e74841-8e56-480b-be8b-910348b18b4c\",\n type: \"Scope\",\n },\n ],\n },\n {\n resourceAppId: \"c5393580-f805-4401-95e8-94b7a6ef2fc2\",\n resourceAccesses: [{\n id: \"594c1fb6-4f81-4475-ae41-0c394909246c\",\n type: \"Role\",\n }],\n },\n ],\n web: {\n homepageUrl: \"https://app.example.net\",\n logoutUrl: \"https://app.example.net/logout\",\n redirectUris: [\"https://app.example.net/account\"],\n implicitGrant: {\n accessTokenIssuanceEnabled: true,\n idTokenIssuanceEnabled: true,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\ncurrent = azuread.get_client_config()\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n identifier_uris=[\"api://example-app\"],\n logo_image=std.filebase64(input=\"/path/to/logo.png\").result,\n owners=[current.object_id],\n sign_in_audience=\"AzureADMultipleOrgs\",\n api={\n \"mapped_claims_enabled\": True,\n \"requested_access_token_version\": 2,\n \"known_client_applications\": [\n known1[\"applicationId\"],\n known2[\"applicationId\"],\n ],\n \"oauth2_permission_scopes\": [\n {\n \"admin_consent_description\": \"Allow the application to access example on behalf of the signed-in user.\",\n \"admin_consent_display_name\": \"Access example\",\n \"enabled\": True,\n \"id\": \"96183846-204b-4b43-82e1-5d2222eb4b9b\",\n \"type\": \"User\",\n \"user_consent_description\": \"Allow the application to access example on your behalf.\",\n \"user_consent_display_name\": \"Access example\",\n \"value\": \"user_impersonation\",\n },\n {\n \"admin_consent_description\": \"Administer the example application\",\n \"admin_consent_display_name\": \"Administer\",\n \"enabled\": True,\n \"id\": \"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\",\n \"type\": \"Admin\",\n \"value\": \"administer\",\n },\n ],\n },\n app_roles=[\n {\n \"allowed_member_types\": [\n \"User\",\n \"Application\",\n ],\n \"description\": \"Admins can manage roles and perform all task actions\",\n \"display_name\": \"Admin\",\n \"enabled\": True,\n \"id\": \"1b19509b-32b1-4e9f-b71d-4992aa991967\",\n \"value\": \"admin\",\n },\n {\n \"allowed_member_types\": [\"User\"],\n \"description\": \"ReadOnly roles have limited query access\",\n \"display_name\": \"ReadOnly\",\n \"enabled\": True,\n \"id\": \"497406e4-012a-4267-bf18-45a1cb148a01\",\n \"value\": \"User\",\n },\n ],\n feature_tags=[{\n \"enterprise\": True,\n \"gallery\": True,\n }],\n optional_claims={\n \"access_tokens\": [\n {\n \"name\": \"myclaim\",\n },\n {\n \"name\": \"otherclaim\",\n },\n ],\n \"id_tokens\": [{\n \"name\": \"userclaim\",\n \"source\": \"user\",\n \"essential\": True,\n \"additional_properties\": [\"emit_as_roles\"],\n }],\n \"saml2_tokens\": [{\n \"name\": \"samlexample\",\n }],\n },\n required_resource_accesses=[\n {\n \"resource_app_id\": \"00000003-0000-0000-c000-000000000000\",\n \"resource_accesses\": [\n {\n \"id\": \"df021288-bdef-4463-88db-98f22de89214\",\n \"type\": \"Role\",\n },\n {\n \"id\": \"b4e74841-8e56-480b-be8b-910348b18b4c\",\n \"type\": \"Scope\",\n },\n ],\n },\n {\n \"resource_app_id\": \"c5393580-f805-4401-95e8-94b7a6ef2fc2\",\n \"resource_accesses\": [{\n \"id\": \"594c1fb6-4f81-4475-ae41-0c394909246c\",\n \"type\": \"Role\",\n }],\n },\n ],\n web={\n \"homepage_url\": \"https://app.example.net\",\n \"logout_url\": \"https://app.example.net/logout\",\n \"redirect_uris\": [\"https://app.example.net/account\"],\n \"implicit_grant\": {\n \"access_token_issuance_enabled\": True,\n \"id_token_issuance_enabled\": True,\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n IdentifierUris = new[]\n {\n \"api://example-app\",\n },\n LogoImage = Std.Filebase64.Invoke(new()\n {\n Input = \"/path/to/logo.png\",\n }).Apply(invoke =\u003e invoke.Result),\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n SignInAudience = \"AzureADMultipleOrgs\",\n Api = new AzureAD.Inputs.ApplicationApiArgs\n {\n MappedClaimsEnabled = true,\n RequestedAccessTokenVersion = 2,\n KnownClientApplications = new[]\n {\n known1.ApplicationId,\n known2.ApplicationId,\n },\n Oauth2PermissionScopes = new[]\n {\n new AzureAD.Inputs.ApplicationApiOauth2PermissionScopeArgs\n {\n AdminConsentDescription = \"Allow the application to access example on behalf of the signed-in user.\",\n AdminConsentDisplayName = \"Access example\",\n Enabled = true,\n Id = \"96183846-204b-4b43-82e1-5d2222eb4b9b\",\n Type = \"User\",\n UserConsentDescription = \"Allow the application to access example on your behalf.\",\n UserConsentDisplayName = \"Access example\",\n Value = \"user_impersonation\",\n },\n new AzureAD.Inputs.ApplicationApiOauth2PermissionScopeArgs\n {\n AdminConsentDescription = \"Administer the example application\",\n AdminConsentDisplayName = \"Administer\",\n Enabled = true,\n Id = \"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\",\n Type = \"Admin\",\n Value = \"administer\",\n },\n },\n },\n AppRoles = new[]\n {\n new AzureAD.Inputs.ApplicationAppRoleArgs\n {\n AllowedMemberTypes = new[]\n {\n \"User\",\n \"Application\",\n },\n Description = \"Admins can manage roles and perform all task actions\",\n DisplayName = \"Admin\",\n Enabled = true,\n Id = \"1b19509b-32b1-4e9f-b71d-4992aa991967\",\n Value = \"admin\",\n },\n new AzureAD.Inputs.ApplicationAppRoleArgs\n {\n AllowedMemberTypes = new[]\n {\n \"User\",\n },\n Description = \"ReadOnly roles have limited query access\",\n DisplayName = \"ReadOnly\",\n Enabled = true,\n Id = \"497406e4-012a-4267-bf18-45a1cb148a01\",\n Value = \"User\",\n },\n },\n FeatureTags = new[]\n {\n new AzureAD.Inputs.ApplicationFeatureTagArgs\n {\n Enterprise = true,\n Gallery = true,\n },\n },\n OptionalClaims = new AzureAD.Inputs.ApplicationOptionalClaimsArgs\n {\n AccessTokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsAccessTokenArgs\n {\n Name = \"myclaim\",\n },\n new AzureAD.Inputs.ApplicationOptionalClaimsAccessTokenArgs\n {\n Name = \"otherclaim\",\n },\n },\n IdTokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsIdTokenArgs\n {\n Name = \"userclaim\",\n Source = \"user\",\n Essential = true,\n AdditionalProperties = new[]\n {\n \"emit_as_roles\",\n },\n },\n },\n Saml2Tokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsSaml2TokenArgs\n {\n Name = \"samlexample\",\n },\n },\n },\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = \"00000003-0000-0000-c000-000000000000\",\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = \"df021288-bdef-4463-88db-98f22de89214\",\n Type = \"Role\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = \"b4e74841-8e56-480b-be8b-910348b18b4c\",\n Type = \"Scope\",\n },\n },\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = \"c5393580-f805-4401-95e8-94b7a6ef2fc2\",\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = \"594c1fb6-4f81-4475-ae41-0c394909246c\",\n Type = \"Role\",\n },\n },\n },\n },\n Web = new AzureAD.Inputs.ApplicationWebArgs\n {\n HomepageUrl = \"https://app.example.net\",\n LogoutUrl = \"https://app.example.net/logout\",\n RedirectUris = new[]\n {\n \"https://app.example.net/account\",\n },\n ImplicitGrant = new AzureAD.Inputs.ApplicationWebImplicitGrantArgs\n {\n AccessTokenIssuanceEnabled = true,\n IdTokenIssuanceEnabled = true,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFilebase64, err := std.Filebase64(ctx, \u0026std.Filebase64Args{\n\t\t\tInput: \"/path/to/logo.png\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tIdentifierUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"api://example-app\"),\n\t\t\t},\n\t\t\tLogoImage: pulumi.String(invokeFilebase64.Result),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tSignInAudience: pulumi.String(\"AzureADMultipleOrgs\"),\n\t\t\tApi: \u0026azuread.ApplicationApiArgs{\n\t\t\t\tMappedClaimsEnabled: pulumi.Bool(true),\n\t\t\t\tRequestedAccessTokenVersion: pulumi.Int(2),\n\t\t\t\tKnownClientApplications: pulumi.StringArray{\n\t\t\t\t\tknown1.ApplicationId,\n\t\t\t\t\tknown2.ApplicationId,\n\t\t\t\t},\n\t\t\t\tOauth2PermissionScopes: azuread.ApplicationApiOauth2PermissionScopeArray{\n\t\t\t\t\t\u0026azuread.ApplicationApiOauth2PermissionScopeArgs{\n\t\t\t\t\t\tAdminConsentDescription: pulumi.String(\"Allow the application to access example on behalf of the signed-in user.\"),\n\t\t\t\t\t\tAdminConsentDisplayName: pulumi.String(\"Access example\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tId: pulumi.String(\"96183846-204b-4b43-82e1-5d2222eb4b9b\"),\n\t\t\t\t\t\tType: pulumi.String(\"User\"),\n\t\t\t\t\t\tUserConsentDescription: pulumi.String(\"Allow the application to access example on your behalf.\"),\n\t\t\t\t\t\tUserConsentDisplayName: pulumi.String(\"Access example\"),\n\t\t\t\t\t\tValue: pulumi.String(\"user_impersonation\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026azuread.ApplicationApiOauth2PermissionScopeArgs{\n\t\t\t\t\t\tAdminConsentDescription: pulumi.String(\"Administer the example application\"),\n\t\t\t\t\t\tAdminConsentDisplayName: pulumi.String(\"Administer\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tId: pulumi.String(\"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\"),\n\t\t\t\t\t\tType: pulumi.String(\"Admin\"),\n\t\t\t\t\t\tValue: pulumi.String(\"administer\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAppRoles: azuread.ApplicationAppRoleTypeArray{\n\t\t\t\t\u0026azuread.ApplicationAppRoleTypeArgs{\n\t\t\t\t\tAllowedMemberTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"User\"),\n\t\t\t\t\t\tpulumi.String(\"Application\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"Admins can manage roles and perform all task actions\"),\n\t\t\t\t\tDisplayName: pulumi.String(\"Admin\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tId: pulumi.String(\"1b19509b-32b1-4e9f-b71d-4992aa991967\"),\n\t\t\t\t\tValue: pulumi.String(\"admin\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.ApplicationAppRoleTypeArgs{\n\t\t\t\t\tAllowedMemberTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"User\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"ReadOnly roles have limited query access\"),\n\t\t\t\t\tDisplayName: pulumi.String(\"ReadOnly\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tId: pulumi.String(\"497406e4-012a-4267-bf18-45a1cb148a01\"),\n\t\t\t\t\tValue: pulumi.String(\"User\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeatureTags: azuread.ApplicationFeatureTagArray{\n\t\t\t\t\u0026azuread.ApplicationFeatureTagArgs{\n\t\t\t\t\tEnterprise: pulumi.Bool(true),\n\t\t\t\t\tGallery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOptionalClaims: \u0026azuread.ApplicationOptionalClaimsTypeArgs{\n\t\t\t\tAccessTokens: azuread.ApplicationOptionalClaimsAccessTokenArray{\n\t\t\t\t\t\u0026azuread.ApplicationOptionalClaimsAccessTokenArgs{\n\t\t\t\t\t\tName: pulumi.String(\"myclaim\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026azuread.ApplicationOptionalClaimsAccessTokenArgs{\n\t\t\t\t\t\tName: pulumi.String(\"otherclaim\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tIdTokens: azuread.ApplicationOptionalClaimsIdTokenArray{\n\t\t\t\t\t\u0026azuread.ApplicationOptionalClaimsIdTokenArgs{\n\t\t\t\t\t\tName: pulumi.String(\"userclaim\"),\n\t\t\t\t\t\tSource: pulumi.String(\"user\"),\n\t\t\t\t\t\tEssential: pulumi.Bool(true),\n\t\t\t\t\t\tAdditionalProperties: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"emit_as_roles\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSaml2Tokens: azuread.ApplicationOptionalClaimsSaml2TokenArray{\n\t\t\t\t\t\u0026azuread.ApplicationOptionalClaimsSaml2TokenArgs{\n\t\t\t\t\t\tName: pulumi.String(\"samlexample\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(\"00000003-0000-0000-c000-000000000000\"),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"df021288-bdef-4463-88db-98f22de89214\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"b4e74841-8e56-480b-be8b-910348b18b4c\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(\"c5393580-f805-4401-95e8-94b7a6ef2fc2\"),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"594c1fb6-4f81-4475-ae41-0c394909246c\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tWeb: \u0026azuread.ApplicationWebArgs{\n\t\t\t\tHomepageUrl: pulumi.String(\"https://app.example.net\"),\n\t\t\t\tLogoutUrl: pulumi.String(\"https://app.example.net/logout\"),\n\t\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"https://app.example.net/account\"),\n\t\t\t\t},\n\t\t\t\tImplicitGrant: \u0026azuread.ApplicationWebImplicitGrantArgs{\n\t\t\t\t\tAccessTokenIssuanceEnabled: pulumi.Bool(true),\n\t\t\t\t\tIdTokenIssuanceEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationApiArgs;\nimport com.pulumi.azuread.inputs.ApplicationAppRoleArgs;\nimport com.pulumi.azuread.inputs.ApplicationFeatureTagArgs;\nimport com.pulumi.azuread.inputs.ApplicationOptionalClaimsArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.inputs.ApplicationWebArgs;\nimport com.pulumi.azuread.inputs.ApplicationWebImplicitGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .identifierUris(\"api://example-app\")\n .logoImage(StdFunctions.filebase64(Filebase64Args.builder()\n .input(\"/path/to/logo.png\")\n .build()).result())\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .signInAudience(\"AzureADMultipleOrgs\")\n .api(ApplicationApiArgs.builder()\n .mappedClaimsEnabled(true)\n .requestedAccessTokenVersion(2)\n .knownClientApplications( \n known1.applicationId(),\n known2.applicationId())\n .oauth2PermissionScopes( \n ApplicationApiOauth2PermissionScopeArgs.builder()\n .adminConsentDescription(\"Allow the application to access example on behalf of the signed-in user.\")\n .adminConsentDisplayName(\"Access example\")\n .enabled(true)\n .id(\"96183846-204b-4b43-82e1-5d2222eb4b9b\")\n .type(\"User\")\n .userConsentDescription(\"Allow the application to access example on your behalf.\")\n .userConsentDisplayName(\"Access example\")\n .value(\"user_impersonation\")\n .build(),\n ApplicationApiOauth2PermissionScopeArgs.builder()\n .adminConsentDescription(\"Administer the example application\")\n .adminConsentDisplayName(\"Administer\")\n .enabled(true)\n .id(\"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\")\n .type(\"Admin\")\n .value(\"administer\")\n .build())\n .build())\n .appRoles( \n ApplicationAppRoleArgs.builder()\n .allowedMemberTypes( \n \"User\",\n \"Application\")\n .description(\"Admins can manage roles and perform all task actions\")\n .displayName(\"Admin\")\n .enabled(true)\n .id(\"1b19509b-32b1-4e9f-b71d-4992aa991967\")\n .value(\"admin\")\n .build(),\n ApplicationAppRoleArgs.builder()\n .allowedMemberTypes(\"User\")\n .description(\"ReadOnly roles have limited query access\")\n .displayName(\"ReadOnly\")\n .enabled(true)\n .id(\"497406e4-012a-4267-bf18-45a1cb148a01\")\n .value(\"User\")\n .build())\n .featureTags(ApplicationFeatureTagArgs.builder()\n .enterprise(true)\n .gallery(true)\n .build())\n .optionalClaims(ApplicationOptionalClaimsArgs.builder()\n .accessTokens( \n ApplicationOptionalClaimsAccessTokenArgs.builder()\n .name(\"myclaim\")\n .build(),\n ApplicationOptionalClaimsAccessTokenArgs.builder()\n .name(\"otherclaim\")\n .build())\n .idTokens(ApplicationOptionalClaimsIdTokenArgs.builder()\n .name(\"userclaim\")\n .source(\"user\")\n .essential(true)\n .additionalProperties(\"emit_as_roles\")\n .build())\n .saml2Tokens(ApplicationOptionalClaimsSaml2TokenArgs.builder()\n .name(\"samlexample\")\n .build())\n .build())\n .requiredResourceAccesses( \n ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(\"00000003-0000-0000-c000-000000000000\")\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(\"df021288-bdef-4463-88db-98f22de89214\")\n .type(\"Role\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(\"b4e74841-8e56-480b-be8b-910348b18b4c\")\n .type(\"Scope\")\n .build())\n .build(),\n ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(\"c5393580-f805-4401-95e8-94b7a6ef2fc2\")\n .resourceAccesses(ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(\"594c1fb6-4f81-4475-ae41-0c394909246c\")\n .type(\"Role\")\n .build())\n .build())\n .web(ApplicationWebArgs.builder()\n .homepageUrl(\"https://app.example.net\")\n .logoutUrl(\"https://app.example.net/logout\")\n .redirectUris(\"https://app.example.net/account\")\n .implicitGrant(ApplicationWebImplicitGrantArgs.builder()\n .accessTokenIssuanceEnabled(true)\n .idTokenIssuanceEnabled(true)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n identifierUris:\n - api://example-app\n logoImage:\n fn::invoke:\n Function: std:filebase64\n Arguments:\n input: /path/to/logo.png\n Return: result\n owners:\n - ${current.objectId}\n signInAudience: AzureADMultipleOrgs\n api:\n mappedClaimsEnabled: true\n requestedAccessTokenVersion: 2\n knownClientApplications:\n - ${known1.applicationId}\n - ${known2.applicationId}\n oauth2PermissionScopes:\n - adminConsentDescription: Allow the application to access example on behalf of the signed-in user.\n adminConsentDisplayName: Access example\n enabled: true\n id: 96183846-204b-4b43-82e1-5d2222eb4b9b\n type: User\n userConsentDescription: Allow the application to access example on your behalf.\n userConsentDisplayName: Access example\n value: user_impersonation\n - adminConsentDescription: Administer the example application\n adminConsentDisplayName: Administer\n enabled: true\n id: be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\n type: Admin\n value: administer\n appRoles:\n - allowedMemberTypes:\n - User\n - Application\n description: Admins can manage roles and perform all task actions\n displayName: Admin\n enabled: true\n id: 1b19509b-32b1-4e9f-b71d-4992aa991967\n value: admin\n - allowedMemberTypes:\n - User\n description: ReadOnly roles have limited query access\n displayName: ReadOnly\n enabled: true\n id: 497406e4-012a-4267-bf18-45a1cb148a01\n value: User\n featureTags:\n - enterprise: true\n gallery: true\n optionalClaims:\n accessTokens:\n - name: myclaim\n - name: otherclaim\n idTokens:\n - name: userclaim\n source: user\n essential: true\n additionalProperties:\n - emit_as_roles\n saml2Tokens:\n - name: samlexample\n requiredResourceAccesses:\n - resourceAppId: 00000003-0000-0000-c000-000000000000\n resourceAccesses:\n - id: df021288-bdef-4463-88db-98f22de89214\n type: Role\n - id: b4e74841-8e56-480b-be8b-910348b18b4c\n type: Scope\n - resourceAppId: c5393580-f805-4401-95e8-94b7a6ef2fc2\n resourceAccesses:\n - id: 594c1fb6-4f81-4475-ae41-0c394909246c\n type: Role\n web:\n homepageUrl: https://app.example.net\n logoutUrl: https://app.example.net/logout\n redirectUris:\n - https://app.example.net/account\n implicitGrant:\n accessTokenIssuanceEnabled: true\n idTokenIssuanceEnabled: true\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Create application and generate a password*\n\n## Import\n\nApplications can be imported using the object ID of the application, in the following format.\n\n```sh\n$ pulumi import azuread:index/application:Application example /applications/00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "## Example Usage\n\n*Create an application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n identifierUris: [\"api://example-app\"],\n logoImage: std.filebase64({\n input: \"/path/to/logo.png\",\n }).then(invoke =\u003e invoke.result),\n owners: [current.then(current =\u003e current.objectId)],\n signInAudience: \"AzureADMultipleOrgs\",\n api: {\n mappedClaimsEnabled: true,\n requestedAccessTokenVersion: 2,\n knownClientApplications: [\n known1.clientId,\n known2.clientId,\n ],\n oauth2PermissionScopes: [\n {\n adminConsentDescription: \"Allow the application to access example on behalf of the signed-in user.\",\n adminConsentDisplayName: \"Access example\",\n enabled: true,\n id: \"96183846-204b-4b43-82e1-5d2222eb4b9b\",\n type: \"User\",\n userConsentDescription: \"Allow the application to access example on your behalf.\",\n userConsentDisplayName: \"Access example\",\n value: \"user_impersonation\",\n },\n {\n adminConsentDescription: \"Administer the example application\",\n adminConsentDisplayName: \"Administer\",\n enabled: true,\n id: \"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\",\n type: \"Admin\",\n value: \"administer\",\n },\n ],\n },\n appRoles: [\n {\n allowedMemberTypes: [\n \"User\",\n \"Application\",\n ],\n description: \"Admins can manage roles and perform all task actions\",\n displayName: \"Admin\",\n enabled: true,\n id: \"1b19509b-32b1-4e9f-b71d-4992aa991967\",\n value: \"admin\",\n },\n {\n allowedMemberTypes: [\"User\"],\n description: \"ReadOnly roles have limited query access\",\n displayName: \"ReadOnly\",\n enabled: true,\n id: \"497406e4-012a-4267-bf18-45a1cb148a01\",\n value: \"User\",\n },\n ],\n featureTags: [{\n enterprise: true,\n gallery: true,\n }],\n optionalClaims: {\n accessTokens: [\n {\n name: \"myclaim\",\n },\n {\n name: \"otherclaim\",\n },\n ],\n idTokens: [{\n name: \"userclaim\",\n source: \"user\",\n essential: true,\n additionalProperties: [\"emit_as_roles\"],\n }],\n saml2Tokens: [{\n name: \"samlexample\",\n }],\n },\n requiredResourceAccesses: [\n {\n resourceAppId: \"00000003-0000-0000-c000-000000000000\",\n resourceAccesses: [\n {\n id: \"df021288-bdef-4463-88db-98f22de89214\",\n type: \"Role\",\n },\n {\n id: \"b4e74841-8e56-480b-be8b-910348b18b4c\",\n type: \"Scope\",\n },\n ],\n },\n {\n resourceAppId: \"c5393580-f805-4401-95e8-94b7a6ef2fc2\",\n resourceAccesses: [{\n id: \"594c1fb6-4f81-4475-ae41-0c394909246c\",\n type: \"Role\",\n }],\n },\n ],\n web: {\n homepageUrl: \"https://app.example.net\",\n logoutUrl: \"https://app.example.net/logout\",\n redirectUris: [\"https://app.example.net/account\"],\n implicitGrant: {\n accessTokenIssuanceEnabled: true,\n idTokenIssuanceEnabled: true,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\ncurrent = azuread.get_client_config()\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n identifier_uris=[\"api://example-app\"],\n logo_image=std.filebase64(input=\"/path/to/logo.png\").result,\n owners=[current.object_id],\n sign_in_audience=\"AzureADMultipleOrgs\",\n api={\n \"mapped_claims_enabled\": True,\n \"requested_access_token_version\": 2,\n \"known_client_applications\": [\n known1[\"clientId\"],\n known2[\"clientId\"],\n ],\n \"oauth2_permission_scopes\": [\n {\n \"admin_consent_description\": \"Allow the application to access example on behalf of the signed-in user.\",\n \"admin_consent_display_name\": \"Access example\",\n \"enabled\": True,\n \"id\": \"96183846-204b-4b43-82e1-5d2222eb4b9b\",\n \"type\": \"User\",\n \"user_consent_description\": \"Allow the application to access example on your behalf.\",\n \"user_consent_display_name\": \"Access example\",\n \"value\": \"user_impersonation\",\n },\n {\n \"admin_consent_description\": \"Administer the example application\",\n \"admin_consent_display_name\": \"Administer\",\n \"enabled\": True,\n \"id\": \"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\",\n \"type\": \"Admin\",\n \"value\": \"administer\",\n },\n ],\n },\n app_roles=[\n {\n \"allowed_member_types\": [\n \"User\",\n \"Application\",\n ],\n \"description\": \"Admins can manage roles and perform all task actions\",\n \"display_name\": \"Admin\",\n \"enabled\": True,\n \"id\": \"1b19509b-32b1-4e9f-b71d-4992aa991967\",\n \"value\": \"admin\",\n },\n {\n \"allowed_member_types\": [\"User\"],\n \"description\": \"ReadOnly roles have limited query access\",\n \"display_name\": \"ReadOnly\",\n \"enabled\": True,\n \"id\": \"497406e4-012a-4267-bf18-45a1cb148a01\",\n \"value\": \"User\",\n },\n ],\n feature_tags=[{\n \"enterprise\": True,\n \"gallery\": True,\n }],\n optional_claims={\n \"access_tokens\": [\n {\n \"name\": \"myclaim\",\n },\n {\n \"name\": \"otherclaim\",\n },\n ],\n \"id_tokens\": [{\n \"name\": \"userclaim\",\n \"source\": \"user\",\n \"essential\": True,\n \"additional_properties\": [\"emit_as_roles\"],\n }],\n \"saml2_tokens\": [{\n \"name\": \"samlexample\",\n }],\n },\n required_resource_accesses=[\n {\n \"resource_app_id\": \"00000003-0000-0000-c000-000000000000\",\n \"resource_accesses\": [\n {\n \"id\": \"df021288-bdef-4463-88db-98f22de89214\",\n \"type\": \"Role\",\n },\n {\n \"id\": \"b4e74841-8e56-480b-be8b-910348b18b4c\",\n \"type\": \"Scope\",\n },\n ],\n },\n {\n \"resource_app_id\": \"c5393580-f805-4401-95e8-94b7a6ef2fc2\",\n \"resource_accesses\": [{\n \"id\": \"594c1fb6-4f81-4475-ae41-0c394909246c\",\n \"type\": \"Role\",\n }],\n },\n ],\n web={\n \"homepage_url\": \"https://app.example.net\",\n \"logout_url\": \"https://app.example.net/logout\",\n \"redirect_uris\": [\"https://app.example.net/account\"],\n \"implicit_grant\": {\n \"access_token_issuance_enabled\": True,\n \"id_token_issuance_enabled\": True,\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n IdentifierUris = new[]\n {\n \"api://example-app\",\n },\n LogoImage = Std.Filebase64.Invoke(new()\n {\n Input = \"/path/to/logo.png\",\n }).Apply(invoke =\u003e invoke.Result),\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n SignInAudience = \"AzureADMultipleOrgs\",\n Api = new AzureAD.Inputs.ApplicationApiArgs\n {\n MappedClaimsEnabled = true,\n RequestedAccessTokenVersion = 2,\n KnownClientApplications = new[]\n {\n known1.ClientId,\n known2.ClientId,\n },\n Oauth2PermissionScopes = new[]\n {\n new AzureAD.Inputs.ApplicationApiOauth2PermissionScopeArgs\n {\n AdminConsentDescription = \"Allow the application to access example on behalf of the signed-in user.\",\n AdminConsentDisplayName = \"Access example\",\n Enabled = true,\n Id = \"96183846-204b-4b43-82e1-5d2222eb4b9b\",\n Type = \"User\",\n UserConsentDescription = \"Allow the application to access example on your behalf.\",\n UserConsentDisplayName = \"Access example\",\n Value = \"user_impersonation\",\n },\n new AzureAD.Inputs.ApplicationApiOauth2PermissionScopeArgs\n {\n AdminConsentDescription = \"Administer the example application\",\n AdminConsentDisplayName = \"Administer\",\n Enabled = true,\n Id = \"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\",\n Type = \"Admin\",\n Value = \"administer\",\n },\n },\n },\n AppRoles = new[]\n {\n new AzureAD.Inputs.ApplicationAppRoleArgs\n {\n AllowedMemberTypes = new[]\n {\n \"User\",\n \"Application\",\n },\n Description = \"Admins can manage roles and perform all task actions\",\n DisplayName = \"Admin\",\n Enabled = true,\n Id = \"1b19509b-32b1-4e9f-b71d-4992aa991967\",\n Value = \"admin\",\n },\n new AzureAD.Inputs.ApplicationAppRoleArgs\n {\n AllowedMemberTypes = new[]\n {\n \"User\",\n },\n Description = \"ReadOnly roles have limited query access\",\n DisplayName = \"ReadOnly\",\n Enabled = true,\n Id = \"497406e4-012a-4267-bf18-45a1cb148a01\",\n Value = \"User\",\n },\n },\n FeatureTags = new[]\n {\n new AzureAD.Inputs.ApplicationFeatureTagArgs\n {\n Enterprise = true,\n Gallery = true,\n },\n },\n OptionalClaims = new AzureAD.Inputs.ApplicationOptionalClaimsArgs\n {\n AccessTokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsAccessTokenArgs\n {\n Name = \"myclaim\",\n },\n new AzureAD.Inputs.ApplicationOptionalClaimsAccessTokenArgs\n {\n Name = \"otherclaim\",\n },\n },\n IdTokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsIdTokenArgs\n {\n Name = \"userclaim\",\n Source = \"user\",\n Essential = true,\n AdditionalProperties = new[]\n {\n \"emit_as_roles\",\n },\n },\n },\n Saml2Tokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsSaml2TokenArgs\n {\n Name = \"samlexample\",\n },\n },\n },\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = \"00000003-0000-0000-c000-000000000000\",\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = \"df021288-bdef-4463-88db-98f22de89214\",\n Type = \"Role\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = \"b4e74841-8e56-480b-be8b-910348b18b4c\",\n Type = \"Scope\",\n },\n },\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = \"c5393580-f805-4401-95e8-94b7a6ef2fc2\",\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = \"594c1fb6-4f81-4475-ae41-0c394909246c\",\n Type = \"Role\",\n },\n },\n },\n },\n Web = new AzureAD.Inputs.ApplicationWebArgs\n {\n HomepageUrl = \"https://app.example.net\",\n LogoutUrl = \"https://app.example.net/logout\",\n RedirectUris = new[]\n {\n \"https://app.example.net/account\",\n },\n ImplicitGrant = new AzureAD.Inputs.ApplicationWebImplicitGrantArgs\n {\n AccessTokenIssuanceEnabled = true,\n IdTokenIssuanceEnabled = true,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFilebase64, err := std.Filebase64(ctx, \u0026std.Filebase64Args{\n\t\t\tInput: \"/path/to/logo.png\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tIdentifierUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"api://example-app\"),\n\t\t\t},\n\t\t\tLogoImage: pulumi.String(invokeFilebase64.Result),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tSignInAudience: pulumi.String(\"AzureADMultipleOrgs\"),\n\t\t\tApi: \u0026azuread.ApplicationApiArgs{\n\t\t\t\tMappedClaimsEnabled: pulumi.Bool(true),\n\t\t\t\tRequestedAccessTokenVersion: pulumi.Int(2),\n\t\t\t\tKnownClientApplications: pulumi.StringArray{\n\t\t\t\t\tknown1.ClientId,\n\t\t\t\t\tknown2.ClientId,\n\t\t\t\t},\n\t\t\t\tOauth2PermissionScopes: azuread.ApplicationApiOauth2PermissionScopeArray{\n\t\t\t\t\t\u0026azuread.ApplicationApiOauth2PermissionScopeArgs{\n\t\t\t\t\t\tAdminConsentDescription: pulumi.String(\"Allow the application to access example on behalf of the signed-in user.\"),\n\t\t\t\t\t\tAdminConsentDisplayName: pulumi.String(\"Access example\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tId: pulumi.String(\"96183846-204b-4b43-82e1-5d2222eb4b9b\"),\n\t\t\t\t\t\tType: pulumi.String(\"User\"),\n\t\t\t\t\t\tUserConsentDescription: pulumi.String(\"Allow the application to access example on your behalf.\"),\n\t\t\t\t\t\tUserConsentDisplayName: pulumi.String(\"Access example\"),\n\t\t\t\t\t\tValue: pulumi.String(\"user_impersonation\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026azuread.ApplicationApiOauth2PermissionScopeArgs{\n\t\t\t\t\t\tAdminConsentDescription: pulumi.String(\"Administer the example application\"),\n\t\t\t\t\t\tAdminConsentDisplayName: pulumi.String(\"Administer\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tId: pulumi.String(\"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\"),\n\t\t\t\t\t\tType: pulumi.String(\"Admin\"),\n\t\t\t\t\t\tValue: pulumi.String(\"administer\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAppRoles: azuread.ApplicationAppRoleTypeArray{\n\t\t\t\t\u0026azuread.ApplicationAppRoleTypeArgs{\n\t\t\t\t\tAllowedMemberTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"User\"),\n\t\t\t\t\t\tpulumi.String(\"Application\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"Admins can manage roles and perform all task actions\"),\n\t\t\t\t\tDisplayName: pulumi.String(\"Admin\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tId: pulumi.String(\"1b19509b-32b1-4e9f-b71d-4992aa991967\"),\n\t\t\t\t\tValue: pulumi.String(\"admin\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.ApplicationAppRoleTypeArgs{\n\t\t\t\t\tAllowedMemberTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"User\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"ReadOnly roles have limited query access\"),\n\t\t\t\t\tDisplayName: pulumi.String(\"ReadOnly\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tId: pulumi.String(\"497406e4-012a-4267-bf18-45a1cb148a01\"),\n\t\t\t\t\tValue: pulumi.String(\"User\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeatureTags: azuread.ApplicationFeatureTagArray{\n\t\t\t\t\u0026azuread.ApplicationFeatureTagArgs{\n\t\t\t\t\tEnterprise: pulumi.Bool(true),\n\t\t\t\t\tGallery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOptionalClaims: \u0026azuread.ApplicationOptionalClaimsTypeArgs{\n\t\t\t\tAccessTokens: azuread.ApplicationOptionalClaimsAccessTokenArray{\n\t\t\t\t\t\u0026azuread.ApplicationOptionalClaimsAccessTokenArgs{\n\t\t\t\t\t\tName: pulumi.String(\"myclaim\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026azuread.ApplicationOptionalClaimsAccessTokenArgs{\n\t\t\t\t\t\tName: pulumi.String(\"otherclaim\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tIdTokens: azuread.ApplicationOptionalClaimsIdTokenArray{\n\t\t\t\t\t\u0026azuread.ApplicationOptionalClaimsIdTokenArgs{\n\t\t\t\t\t\tName: pulumi.String(\"userclaim\"),\n\t\t\t\t\t\tSource: pulumi.String(\"user\"),\n\t\t\t\t\t\tEssential: pulumi.Bool(true),\n\t\t\t\t\t\tAdditionalProperties: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"emit_as_roles\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSaml2Tokens: azuread.ApplicationOptionalClaimsSaml2TokenArray{\n\t\t\t\t\t\u0026azuread.ApplicationOptionalClaimsSaml2TokenArgs{\n\t\t\t\t\t\tName: pulumi.String(\"samlexample\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(\"00000003-0000-0000-c000-000000000000\"),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"df021288-bdef-4463-88db-98f22de89214\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"b4e74841-8e56-480b-be8b-910348b18b4c\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(\"c5393580-f805-4401-95e8-94b7a6ef2fc2\"),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"594c1fb6-4f81-4475-ae41-0c394909246c\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tWeb: \u0026azuread.ApplicationWebArgs{\n\t\t\t\tHomepageUrl: pulumi.String(\"https://app.example.net\"),\n\t\t\t\tLogoutUrl: pulumi.String(\"https://app.example.net/logout\"),\n\t\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"https://app.example.net/account\"),\n\t\t\t\t},\n\t\t\t\tImplicitGrant: \u0026azuread.ApplicationWebImplicitGrantArgs{\n\t\t\t\t\tAccessTokenIssuanceEnabled: pulumi.Bool(true),\n\t\t\t\t\tIdTokenIssuanceEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationApiArgs;\nimport com.pulumi.azuread.inputs.ApplicationAppRoleArgs;\nimport com.pulumi.azuread.inputs.ApplicationFeatureTagArgs;\nimport com.pulumi.azuread.inputs.ApplicationOptionalClaimsArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.inputs.ApplicationWebArgs;\nimport com.pulumi.azuread.inputs.ApplicationWebImplicitGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .identifierUris(\"api://example-app\")\n .logoImage(StdFunctions.filebase64(Filebase64Args.builder()\n .input(\"/path/to/logo.png\")\n .build()).result())\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .signInAudience(\"AzureADMultipleOrgs\")\n .api(ApplicationApiArgs.builder()\n .mappedClaimsEnabled(true)\n .requestedAccessTokenVersion(2)\n .knownClientApplications( \n known1.clientId(),\n known2.clientId())\n .oauth2PermissionScopes( \n ApplicationApiOauth2PermissionScopeArgs.builder()\n .adminConsentDescription(\"Allow the application to access example on behalf of the signed-in user.\")\n .adminConsentDisplayName(\"Access example\")\n .enabled(true)\n .id(\"96183846-204b-4b43-82e1-5d2222eb4b9b\")\n .type(\"User\")\n .userConsentDescription(\"Allow the application to access example on your behalf.\")\n .userConsentDisplayName(\"Access example\")\n .value(\"user_impersonation\")\n .build(),\n ApplicationApiOauth2PermissionScopeArgs.builder()\n .adminConsentDescription(\"Administer the example application\")\n .adminConsentDisplayName(\"Administer\")\n .enabled(true)\n .id(\"be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\")\n .type(\"Admin\")\n .value(\"administer\")\n .build())\n .build())\n .appRoles( \n ApplicationAppRoleArgs.builder()\n .allowedMemberTypes( \n \"User\",\n \"Application\")\n .description(\"Admins can manage roles and perform all task actions\")\n .displayName(\"Admin\")\n .enabled(true)\n .id(\"1b19509b-32b1-4e9f-b71d-4992aa991967\")\n .value(\"admin\")\n .build(),\n ApplicationAppRoleArgs.builder()\n .allowedMemberTypes(\"User\")\n .description(\"ReadOnly roles have limited query access\")\n .displayName(\"ReadOnly\")\n .enabled(true)\n .id(\"497406e4-012a-4267-bf18-45a1cb148a01\")\n .value(\"User\")\n .build())\n .featureTags(ApplicationFeatureTagArgs.builder()\n .enterprise(true)\n .gallery(true)\n .build())\n .optionalClaims(ApplicationOptionalClaimsArgs.builder()\n .accessTokens( \n ApplicationOptionalClaimsAccessTokenArgs.builder()\n .name(\"myclaim\")\n .build(),\n ApplicationOptionalClaimsAccessTokenArgs.builder()\n .name(\"otherclaim\")\n .build())\n .idTokens(ApplicationOptionalClaimsIdTokenArgs.builder()\n .name(\"userclaim\")\n .source(\"user\")\n .essential(true)\n .additionalProperties(\"emit_as_roles\")\n .build())\n .saml2Tokens(ApplicationOptionalClaimsSaml2TokenArgs.builder()\n .name(\"samlexample\")\n .build())\n .build())\n .requiredResourceAccesses( \n ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(\"00000003-0000-0000-c000-000000000000\")\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(\"df021288-bdef-4463-88db-98f22de89214\")\n .type(\"Role\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(\"b4e74841-8e56-480b-be8b-910348b18b4c\")\n .type(\"Scope\")\n .build())\n .build(),\n ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(\"c5393580-f805-4401-95e8-94b7a6ef2fc2\")\n .resourceAccesses(ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(\"594c1fb6-4f81-4475-ae41-0c394909246c\")\n .type(\"Role\")\n .build())\n .build())\n .web(ApplicationWebArgs.builder()\n .homepageUrl(\"https://app.example.net\")\n .logoutUrl(\"https://app.example.net/logout\")\n .redirectUris(\"https://app.example.net/account\")\n .implicitGrant(ApplicationWebImplicitGrantArgs.builder()\n .accessTokenIssuanceEnabled(true)\n .idTokenIssuanceEnabled(true)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n identifierUris:\n - api://example-app\n logoImage:\n fn::invoke:\n Function: std:filebase64\n Arguments:\n input: /path/to/logo.png\n Return: result\n owners:\n - ${current.objectId}\n signInAudience: AzureADMultipleOrgs\n api:\n mappedClaimsEnabled: true\n requestedAccessTokenVersion: 2\n knownClientApplications:\n - ${known1.clientId}\n - ${known2.clientId}\n oauth2PermissionScopes:\n - adminConsentDescription: Allow the application to access example on behalf of the signed-in user.\n adminConsentDisplayName: Access example\n enabled: true\n id: 96183846-204b-4b43-82e1-5d2222eb4b9b\n type: User\n userConsentDescription: Allow the application to access example on your behalf.\n userConsentDisplayName: Access example\n value: user_impersonation\n - adminConsentDescription: Administer the example application\n adminConsentDisplayName: Administer\n enabled: true\n id: be98fa3e-ab5b-4b11-83d9-04ba2b7946bc\n type: Admin\n value: administer\n appRoles:\n - allowedMemberTypes:\n - User\n - Application\n description: Admins can manage roles and perform all task actions\n displayName: Admin\n enabled: true\n id: 1b19509b-32b1-4e9f-b71d-4992aa991967\n value: admin\n - allowedMemberTypes:\n - User\n description: ReadOnly roles have limited query access\n displayName: ReadOnly\n enabled: true\n id: 497406e4-012a-4267-bf18-45a1cb148a01\n value: User\n featureTags:\n - enterprise: true\n gallery: true\n optionalClaims:\n accessTokens:\n - name: myclaim\n - name: otherclaim\n idTokens:\n - name: userclaim\n source: user\n essential: true\n additionalProperties:\n - emit_as_roles\n saml2Tokens:\n - name: samlexample\n requiredResourceAccesses:\n - resourceAppId: 00000003-0000-0000-c000-000000000000\n resourceAccesses:\n - id: df021288-bdef-4463-88db-98f22de89214\n type: Role\n - id: b4e74841-8e56-480b-be8b-910348b18b4c\n type: Scope\n - resourceAppId: c5393580-f805-4401-95e8-94b7a6ef2fc2\n resourceAccesses:\n - id: 594c1fb6-4f81-4475-ae41-0c394909246c\n type: Role\n web:\n homepageUrl: https://app.example.net\n logoutUrl: https://app.example.net/logout\n redirectUris:\n - https://app.example.net/account\n implicitGrant:\n accessTokenIssuanceEnabled: true\n idTokenIssuanceEnabled: true\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Create application and generate a password*\n\n## Import\n\nApplications can be imported using the object ID of the application, in the following format.\n\n```sh\n$ pulumi import azuread:index/application:Application example /applications/00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "api": { "$ref": "#/types/azuread:index/ApplicationApi:ApplicationApi", @@ -4045,11 +4039,6 @@ }, "description": "A collection of `app_role` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles).\n" }, - "applicationId": { - "type": "string", - "description": "The Application ID (also called Client ID)\n", - "deprecationMessage": "The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider" - }, "clientId": { "type": "string", "description": "The Client ID for the application.\n" @@ -4202,7 +4191,6 @@ }, "required": [ "appRoleIds", - "applicationId", "clientId", "disabledByMicrosoft", "displayName", @@ -4375,11 +4363,6 @@ }, "description": "A collection of `app_role` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles).\n" }, - "applicationId": { - "type": "string", - "description": "The Application ID (also called Client ID)\n", - "deprecationMessage": "The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider" - }, "clientId": { "type": "string", "description": "The Client ID for the application.\n" @@ -4535,7 +4518,7 @@ } }, "azuread:index/applicationApiAccess:ApplicationApiAccess": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = wellKnown.then(wellKnown =\u003e azuread.getServicePrincipal({\n clientId: wellKnown.result?.MicrosoftGraph,\n}));\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleMsgraph = new azuread.ApplicationApiAccess(\"example_msgraph\", {\n applicationId: example.id,\n apiClientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.MicrosoftGraph),\n roleIds: [\n msgraph.then(msgraph =\u003e msgraph.appRoleIds?.[\"Group.Read.All\"]),\n msgraph.then(msgraph =\u003e msgraph.appRoleIds?.[\"User.Read.All\"]),\n ],\n scopeIds: [msgraph.then(msgraph =\u003e msgraph.oauth2PermissionScopeIds?.[\"User.ReadWrite\"])],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.get_service_principal(client_id=well_known.result[\"MicrosoftGraph\"])\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_msgraph = azuread.ApplicationApiAccess(\"example_msgraph\",\n application_id=example.id,\n api_client_id=well_known.result[\"MicrosoftGraph\"],\n role_ids=[\n msgraph.app_role_ids[\"Group.Read.All\"],\n msgraph.app_role_ids[\"User.Read.All\"],\n ],\n scope_ids=[msgraph.oauth2_permission_scope_ids[\"User.ReadWrite\"]])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n });\n\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleMsgraph = new AzureAD.ApplicationApiAccess(\"example_msgraph\", new()\n {\n ApplicationId = example.Id,\n ApiClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n RoleIds = new[]\n {\n msgraph.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.AppRoleIds?.Group_Read_All),\n msgraph.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.AppRoleIds?.User_Read_All),\n },\n ScopeIds = new[]\n {\n msgraph.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.Oauth2PermissionScopeIds?.User_ReadWrite),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tClientId: pulumi.StringRef(wellKnown.Result.MicrosoftGraph),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationApiAccess(ctx, \"example_msgraph\", \u0026azuread.ApplicationApiAccessArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tApiClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tRoleIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(msgraph.AppRoleIds.Group.Read.All),\n\t\t\t\tpulumi.String(msgraph.AppRoleIds.User.Read.All),\n\t\t\t},\n\t\t\tScopeIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(msgraph.Oauth2PermissionScopeIds.User.ReadWrite),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationApiAccess;\nimport com.pulumi.azuread.ApplicationApiAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n final var msgraph = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().MicrosoftGraph()))\n .build());\n\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleMsgraph = new ApplicationApiAccess(\"exampleMsgraph\", ApplicationApiAccessArgs.builder()\n .applicationId(example.id())\n .apiClientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().MicrosoftGraph()))\n .roleIds( \n msgraph.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.appRoleIds().Group.Read.All()),\n msgraph.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.appRoleIds().User.Read.All()))\n .scopeIds(msgraph.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.oauth2PermissionScopeIds().User.ReadWrite()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleMsgraph:\n type: azuread:ApplicationApiAccess\n name: example_msgraph\n properties:\n applicationId: ${example.id}\n apiClientId: ${wellKnown.result.MicrosoftGraph}\n roleIds:\n - ${msgraph.appRoleIds\"Group.Read.All\"[%!s(MISSING)]}\n - ${msgraph.appRoleIds\"User.Read.All\"[%!s(MISSING)]}\n scopeIds:\n - ${msgraph.oauth2PermissionScopeIds\"User.ReadWrite\"[%!s(MISSING)]}\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n msgraph:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n clientId: ${wellKnown.result.MicrosoftGraph}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing permissions for an additional API, create another instance of this resource\n\n*Usage with azuread.Application resource*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleApplicationApiAccess = new azuread.ApplicationApiAccess(\"example\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_application_api_access = azuread.ApplicationApiAccess(\"example\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationApiAccess = new AzureAD.ApplicationApiAccess(\"example\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationApiAccess(ctx, \"example\", \u0026azuread.ApplicationApiAccessArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ApplicationApiAccess;\nimport com.pulumi.azuread.ApplicationApiAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationApiAccess = new ApplicationApiAccess(\"exampleApplicationApiAccess\", ApplicationApiAccessArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleApplicationApiAccess:\n type: azuread:ApplicationApiAccess\n name: example\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication API Access can be imported using the object ID of the application and the client ID of the API, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationApiAccess:ApplicationApiAccess example /applications/00000000-0000-0000-0000-000000000000/apiAccess/11111111-1111-1111-1111-111111111111\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = wellKnown.then(wellKnown =\u003e azuread.getServicePrincipal({\n clientId: wellKnown.result?.MicrosoftGraph,\n}));\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleMsgraph = new azuread.ApplicationApiAccess(\"example_msgraph\", {\n applicationId: example.id,\n apiClientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.MicrosoftGraph),\n roleIds: [\n msgraph.then(msgraph =\u003e msgraph.appRoleIds?.[\"Group.Read.All\"]),\n msgraph.then(msgraph =\u003e msgraph.appRoleIds?.[\"User.Read.All\"]),\n ],\n scopeIds: [msgraph.then(msgraph =\u003e msgraph.oauth2PermissionScopeIds?.[\"User.ReadWrite\"])],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.get_service_principal(client_id=well_known.result[\"MicrosoftGraph\"])\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_msgraph = azuread.ApplicationApiAccess(\"example_msgraph\",\n application_id=example.id,\n api_client_id=well_known.result[\"MicrosoftGraph\"],\n role_ids=[\n msgraph.app_role_ids[\"Group.Read.All\"],\n msgraph.app_role_ids[\"User.Read.All\"],\n ],\n scope_ids=[msgraph.oauth2_permission_scope_ids[\"User.ReadWrite\"]])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n });\n\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleMsgraph = new AzureAD.ApplicationApiAccess(\"example_msgraph\", new()\n {\n ApplicationId = example.Id,\n ApiClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n RoleIds = new[]\n {\n msgraph.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.AppRoleIds?.Group_Read_All),\n msgraph.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.AppRoleIds?.User_Read_All),\n },\n ScopeIds = new[]\n {\n msgraph.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.Oauth2PermissionScopeIds?.User_ReadWrite),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tClientId: pulumi.StringRef(wellKnown.Result.MicrosoftGraph),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationApiAccess(ctx, \"example_msgraph\", \u0026azuread.ApplicationApiAccessArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tApiClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tRoleIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(msgraph.AppRoleIds.Group.Read.All),\n\t\t\t\tpulumi.String(msgraph.AppRoleIds.User.Read.All),\n\t\t\t},\n\t\t\tScopeIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(msgraph.Oauth2PermissionScopeIds.User.ReadWrite),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationApiAccess;\nimport com.pulumi.azuread.ApplicationApiAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n final var msgraph = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().MicrosoftGraph()))\n .build());\n\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleMsgraph = new ApplicationApiAccess(\"exampleMsgraph\", ApplicationApiAccessArgs.builder()\n .applicationId(example.id())\n .apiClientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().MicrosoftGraph()))\n .roleIds( \n msgraph.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.appRoleIds().Group.Read.All()),\n msgraph.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.appRoleIds().User.Read.All()))\n .scopeIds(msgraph.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.oauth2PermissionScopeIds().User.ReadWrite()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleMsgraph:\n type: azuread:ApplicationApiAccess\n name: example_msgraph\n properties:\n applicationId: ${example.id}\n apiClientId: ${wellKnown.result.MicrosoftGraph}\n roleIds:\n - ${msgraph.appRoleIds\"Group.Read.All\"[%!s(MISSING)]}\n - ${msgraph.appRoleIds\"User.Read.All\"[%!s(MISSING)]}\n scopeIds:\n - ${msgraph.oauth2PermissionScopeIds\"User.ReadWrite\"[%!s(MISSING)]}\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n msgraph:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n clientId: ${wellKnown.result.MicrosoftGraph}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing permissions for an additional API, create another instance of this resource\n\n*Usage with azuread.Application resource*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleApplicationApiAccess = new azuread.ApplicationApiAccess(\"example\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_application_api_access = azuread.ApplicationApiAccess(\"example\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationApiAccess = new AzureAD.ApplicationApiAccess(\"example\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationApiAccess(ctx, \"example\", \u0026azuread.ApplicationApiAccessArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ApplicationApiAccess;\nimport com.pulumi.azuread.ApplicationApiAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationApiAccess = new ApplicationApiAccess(\"exampleApplicationApiAccess\", ApplicationApiAccessArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleApplicationApiAccess:\n type: azuread:ApplicationApiAccess\n name: example\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication API Access can be imported using the object ID of the application and the client ID of the API, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationApiAccess:ApplicationApiAccess example /applications/00000000-0000-0000-0000-000000000000/apiAccess/11111111-1111-1111-1111-111111111111\n```\n\n", "properties": { "apiClientId": { "type": "string", @@ -4626,7 +4609,7 @@ } }, "azuread:index/applicationAppRole:ApplicationAppRole": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as random from \"@pulumi/random\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleAdministrator = new random.RandomUuid(\"example_administrator\", {});\nconst exampleAdminister = new azuread.ApplicationAppRole(\"example_administer\", {\n applicationId: example.id,\n roleId: exampleAdministrator.id,\n allowedMemberTypes: [\"User\"],\n description: \"My role description\",\n displayName: \"Administer\",\n value: \"admin\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_random as random\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_administrator = random.RandomUuid(\"example_administrator\")\nexample_administer = azuread.ApplicationAppRole(\"example_administer\",\n application_id=example.id,\n role_id=example_administrator.id,\n allowed_member_types=[\"User\"],\n description=\"My role description\",\n display_name=\"Administer\",\n value=\"admin\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleAdministrator = new Random.RandomUuid(\"example_administrator\");\n\n var exampleAdminister = new AzureAD.ApplicationAppRole(\"example_administer\", new()\n {\n ApplicationId = example.Id,\n RoleId = exampleAdministrator.Id,\n AllowedMemberTypes = new[]\n {\n \"User\",\n },\n Description = \"My role description\",\n DisplayName = \"Administer\",\n Value = \"admin\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAdministrator, err := random.NewRandomUuid(ctx, \"example_administrator\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationAppRole(ctx, \"example_administer\", \u0026azuread.ApplicationAppRoleArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tRoleId: exampleAdministrator.ID(),\n\t\t\tAllowedMemberTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"User\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"My role description\"),\n\t\t\tDisplayName: pulumi.String(\"Administer\"),\n\t\t\tValue: pulumi.String(\"admin\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.random.RandomUuid;\nimport com.pulumi.azuread.ApplicationAppRole;\nimport com.pulumi.azuread.ApplicationAppRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleAdministrator = new RandomUuid(\"exampleAdministrator\");\n\n var exampleAdminister = new ApplicationAppRole(\"exampleAdminister\", ApplicationAppRoleArgs.builder()\n .applicationId(example.id())\n .roleId(exampleAdministrator.id())\n .allowedMemberTypes(\"User\")\n .description(\"My role description\")\n .displayName(\"Administer\")\n .value(\"admin\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleAdministrator:\n type: random:RandomUuid\n name: example_administrator\n exampleAdminister:\n type: azuread:ApplicationAppRole\n name: example_administer\n properties:\n applicationId: ${example.id}\n roleId: ${exampleAdministrator.id}\n allowedMemberTypes:\n - User\n description: My role description\n displayName: Administer\n value: admin\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing more app roles, create additional instances of this resource\n\n*Usage with azuread.Application resource*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleAdminister = new azuread.ApplicationAppRole(\"example_administer\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_administer = azuread.ApplicationAppRole(\"example_administer\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleAdminister = new AzureAD.ApplicationAppRole(\"example_administer\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationAppRole(ctx, \"example_administer\", \u0026azuread.ApplicationAppRoleArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ApplicationAppRole;\nimport com.pulumi.azuread.ApplicationAppRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleAdminister = new ApplicationAppRole(\"exampleAdminister\", ApplicationAppRoleArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleAdminister:\n type: azuread:ApplicationAppRole\n name: example_administer\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication App Roles can be imported using the object ID of the application and the ID of the app role, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationAppRole:ApplicationAppRole example /applications/00000000-0000-0000-0000-000000000000/appRoles/11111111-1111-1111-1111-111111111111\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as random from \"@pulumi/random\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleAdministrator = new random.RandomUuid(\"example_administrator\", {});\nconst exampleAdminister = new azuread.ApplicationAppRole(\"example_administer\", {\n applicationId: example.id,\n roleId: exampleAdministrator.id,\n allowedMemberTypes: [\"User\"],\n description: \"My role description\",\n displayName: \"Administer\",\n value: \"admin\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_random as random\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_administrator = random.RandomUuid(\"example_administrator\")\nexample_administer = azuread.ApplicationAppRole(\"example_administer\",\n application_id=example.id,\n role_id=example_administrator.id,\n allowed_member_types=[\"User\"],\n description=\"My role description\",\n display_name=\"Administer\",\n value=\"admin\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleAdministrator = new Random.RandomUuid(\"example_administrator\");\n\n var exampleAdminister = new AzureAD.ApplicationAppRole(\"example_administer\", new()\n {\n ApplicationId = example.Id,\n RoleId = exampleAdministrator.Id,\n AllowedMemberTypes = new[]\n {\n \"User\",\n },\n Description = \"My role description\",\n DisplayName = \"Administer\",\n Value = \"admin\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAdministrator, err := random.NewRandomUuid(ctx, \"example_administrator\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationAppRole(ctx, \"example_administer\", \u0026azuread.ApplicationAppRoleArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tRoleId: exampleAdministrator.ID(),\n\t\t\tAllowedMemberTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"User\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"My role description\"),\n\t\t\tDisplayName: pulumi.String(\"Administer\"),\n\t\t\tValue: pulumi.String(\"admin\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.random.RandomUuid;\nimport com.pulumi.azuread.ApplicationAppRole;\nimport com.pulumi.azuread.ApplicationAppRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleAdministrator = new RandomUuid(\"exampleAdministrator\");\n\n var exampleAdminister = new ApplicationAppRole(\"exampleAdminister\", ApplicationAppRoleArgs.builder()\n .applicationId(example.id())\n .roleId(exampleAdministrator.id())\n .allowedMemberTypes(\"User\")\n .description(\"My role description\")\n .displayName(\"Administer\")\n .value(\"admin\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleAdministrator:\n type: random:RandomUuid\n name: example_administrator\n exampleAdminister:\n type: azuread:ApplicationAppRole\n name: example_administer\n properties:\n applicationId: ${example.id}\n roleId: ${exampleAdministrator.id}\n allowedMemberTypes:\n - User\n description: My role description\n displayName: Administer\n value: admin\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing more app roles, create additional instances of this resource\n\n*Usage with azuread.Application resource*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleAdminister = new azuread.ApplicationAppRole(\"example_administer\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_administer = azuread.ApplicationAppRole(\"example_administer\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleAdminister = new AzureAD.ApplicationAppRole(\"example_administer\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationAppRole(ctx, \"example_administer\", \u0026azuread.ApplicationAppRoleArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ApplicationAppRole;\nimport com.pulumi.azuread.ApplicationAppRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleAdminister = new ApplicationAppRole(\"exampleAdminister\", ApplicationAppRoleArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleAdminister:\n type: azuread:ApplicationAppRole\n name: example_administer\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication App Roles can be imported using the object ID of the application and the ID of the app role, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationAppRole:ApplicationAppRole example /applications/00000000-0000-0000-0000-000000000000/appRoles/11111111-1111-1111-1111-111111111111\n```\n\n", "properties": { "allowedMemberTypes": { "type": "array", @@ -4738,17 +4721,12 @@ } }, "azuread:index/applicationCertificate:ApplicationCertificate": { - "description": "## Example Usage\n\n*Using a PEM certificate*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationCertificate = new azuread.ApplicationCertificate(\"example\", {\n applicationId: example.id,\n type: \"AsymmetricX509Cert\",\n value: std.file({\n input: \"cert.pem\",\n }).then(invoke =\u003e invoke.result),\n endDate: \"2021-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_certificate = azuread.ApplicationCertificate(\"example\",\n application_id=example.id,\n type=\"AsymmetricX509Cert\",\n value=std.file(input=\"cert.pem\").result,\n end_date=\"2021-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationCertificate = new AzureAD.ApplicationCertificate(\"example\", new()\n {\n ApplicationId = example.Id,\n Type = \"AsymmetricX509Cert\",\n Value = Std.File.Invoke(new()\n {\n Input = \"cert.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n EndDate = \"2021-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFile, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"cert.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationCertificate(ctx, \"example\", \u0026azuread.ApplicationCertificateArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tValue: pulumi.String(invokeFile.Result),\n\t\t\tEndDate: pulumi.String(\"2021-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationCertificate;\nimport com.pulumi.azuread.ApplicationCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationCertificate = new ApplicationCertificate(\"exampleApplicationCertificate\", ApplicationCertificateArgs.builder()\n .applicationId(example.id())\n .type(\"AsymmetricX509Cert\")\n .value(StdFunctions.file(FileArgs.builder()\n .input(\"cert.pem\")\n .build()).result())\n .endDate(\"2021-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationCertificate:\n type: azuread:ApplicationCertificate\n name: example\n properties:\n applicationId: ${example.id}\n type: AsymmetricX509Cert\n value:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.pem\n Return: result\n endDate: 2021-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Using a DER certificate*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationCertificate = new azuread.ApplicationCertificate(\"example\", {\n applicationId: example.id,\n type: \"AsymmetricX509Cert\",\n encoding: \"base64\",\n value: std.file({\n input: \"cert.der\",\n }).then(invoke =\u003e std.base64encode({\n input: invoke.result,\n })).then(invoke =\u003e invoke.result),\n endDate: \"2021-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_certificate = azuread.ApplicationCertificate(\"example\",\n application_id=example.id,\n type=\"AsymmetricX509Cert\",\n encoding=\"base64\",\n value=std.base64encode(input=std.file(input=\"cert.der\").result).result,\n end_date=\"2021-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationCertificate = new AzureAD.ApplicationCertificate(\"example\", new()\n {\n ApplicationId = example.Id,\n Type = \"AsymmetricX509Cert\",\n Encoding = \"base64\",\n Value = Std.File.Invoke(new()\n {\n Input = \"cert.der\",\n }).Apply(invoke =\u003e Std.Base64encode.Invoke(new()\n {\n Input = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n EndDate = \"2021-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeBase64encode, err := std.Base64encode(ctx, \u0026std.Base64encodeArgs{\n\t\t\tInput: std.File(ctx, \u0026std.FileArgs{\n\t\t\t\tInput: \"cert.der\",\n\t\t\t}, nil).Result,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationCertificate(ctx, \"example\", \u0026azuread.ApplicationCertificateArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tEncoding: pulumi.String(\"base64\"),\n\t\t\tValue: pulumi.String(invokeBase64encode.Result),\n\t\t\tEndDate: pulumi.String(\"2021-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationCertificate;\nimport com.pulumi.azuread.ApplicationCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationCertificate = new ApplicationCertificate(\"exampleApplicationCertificate\", ApplicationCertificateArgs.builder()\n .applicationId(example.id())\n .type(\"AsymmetricX509Cert\")\n .encoding(\"base64\")\n .value(StdFunctions.base64encode(Base64encodeArgs.builder()\n .input(StdFunctions.file(FileArgs.builder()\n .input(\"cert.der\")\n .build()).result())\n .build()).result())\n .endDate(\"2021-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationCertificate:\n type: azuread:ApplicationCertificate\n name: example\n properties:\n applicationId: ${example.id}\n type: AsymmetricX509Cert\n encoding: base64\n value:\n fn::invoke:\n Function: std:base64encode\n Arguments:\n input:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.der\n Return: result\n Return: result\n endDate: 2021-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Using a certificate from Azure Key Vault\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst exampleApplication = new azuread.Application(\"example\", {displayName: \"example\"});\nconst example = new azure.keyvault.Certificate(\"example\", {\n name: \"generated-cert\",\n keyVaultId: exampleAzurermKeyVault.id,\n certificatePolicy: {\n issuerParameters: {\n name: \"Self\",\n },\n keyProperties: {\n exportable: true,\n keySize: 2048,\n keyType: \"RSA\",\n reuseKey: true,\n },\n lifetimeActions: [{\n action: {\n actionType: \"AutoRenew\",\n },\n trigger: {\n daysBeforeExpiry: 30,\n },\n }],\n secretProperties: {\n contentType: \"application/x-pkcs12\",\n },\n x509CertificateProperties: {\n extendedKeyUsages: [\"1.3.6.1.5.5.7.3.2\"],\n keyUsages: [\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subjectAlternativeNames: {\n dnsNames: [\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n },\n subject: `CN=${exampleApplication.name}`,\n validityInMonths: 12,\n },\n },\n});\nconst exampleApplicationCertificate = new azuread.ApplicationCertificate(\"example\", {\n applicationId: exampleApplication.id,\n type: \"AsymmetricX509Cert\",\n encoding: \"hex\",\n value: example.certificateData,\n endDate: example.certificateAttributes.apply(certificateAttributes =\u003e certificateAttributes[0].expires),\n startDate: example.certificateAttributes.apply(certificateAttributes =\u003e certificateAttributes[0].notBefore),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\nimport pulumi_azuread as azuread\n\nexample_application = azuread.Application(\"example\", display_name=\"example\")\nexample = azure.keyvault.Certificate(\"example\",\n name=\"generated-cert\",\n key_vault_id=example_azurerm_key_vault[\"id\"],\n certificate_policy={\n \"issuer_parameters\": {\n \"name\": \"Self\",\n },\n \"key_properties\": {\n \"exportable\": True,\n \"key_size\": 2048,\n \"key_type\": \"RSA\",\n \"reuse_key\": True,\n },\n \"lifetime_actions\": [{\n \"action\": {\n \"action_type\": \"AutoRenew\",\n },\n \"trigger\": {\n \"days_before_expiry\": 30,\n },\n }],\n \"secret_properties\": {\n \"content_type\": \"application/x-pkcs12\",\n },\n \"x509_certificate_properties\": {\n \"extended_key_usages\": [\"1.3.6.1.5.5.7.3.2\"],\n \"key_usages\": [\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n \"subject_alternative_names\": {\n \"dns_names\": [\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n },\n \"subject\": f\"CN={example_application.name}\",\n \"validity_in_months\": 12,\n },\n })\nexample_application_certificate = azuread.ApplicationCertificate(\"example\",\n application_id=example_application.id,\n type=\"AsymmetricX509Cert\",\n encoding=\"hex\",\n value=example.certificate_data,\n end_date=example.certificate_attributes[0].expires,\n start_date=example.certificate_attributes[0].not_before)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleApplication = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var example = new Azure.KeyVault.Certificate(\"example\", new()\n {\n Name = \"generated-cert\",\n KeyVaultId = exampleAzurermKeyVault.Id,\n CertificatePolicy = new Azure.KeyVault.Inputs.CertificateCertificatePolicyArgs\n {\n IssuerParameters = new Azure.KeyVault.Inputs.CertificateCertificatePolicyIssuerParametersArgs\n {\n Name = \"Self\",\n },\n KeyProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyKeyPropertiesArgs\n {\n Exportable = true,\n KeySize = 2048,\n KeyType = \"RSA\",\n ReuseKey = true,\n },\n LifetimeActions = new[]\n {\n new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionArgs\n {\n Action = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionActionArgs\n {\n ActionType = \"AutoRenew\",\n },\n Trigger = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionTriggerArgs\n {\n DaysBeforeExpiry = 30,\n },\n },\n },\n SecretProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicySecretPropertiesArgs\n {\n ContentType = \"application/x-pkcs12\",\n },\n X509CertificateProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs\n {\n ExtendedKeyUsages = new[]\n {\n \"1.3.6.1.5.5.7.3.2\",\n },\n KeyUsages = new[]\n {\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyCertSign\",\n \"keyEncipherment\",\n },\n SubjectAlternativeNames = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs\n {\n DnsNames = new[]\n {\n \"internal.contoso.com\",\n \"domain.hello.world\",\n },\n },\n Subject = $\"CN={exampleApplication.Name}\",\n ValidityInMonths = 12,\n },\n },\n });\n\n var exampleApplicationCertificate = new AzureAD.ApplicationCertificate(\"example\", new()\n {\n ApplicationId = exampleApplication.Id,\n Type = \"AsymmetricX509Cert\",\n Encoding = \"hex\",\n Value = example.CertificateData,\n EndDate = example.CertificateAttributes.Apply(certificateAttributes =\u003e certificateAttributes[0].Expires),\n StartDate = example.CertificateAttributes.Apply(certificateAttributes =\u003e certificateAttributes[0].NotBefore),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleApplication, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := keyvault.NewCertificate(ctx, \"example\", \u0026keyvault.CertificateArgs{\n\t\t\tName: pulumi.String(\"generated-cert\"),\n\t\t\tKeyVaultId: pulumi.Any(exampleAzurermKeyVault.Id),\n\t\t\tCertificatePolicy: \u0026keyvault.CertificateCertificatePolicyArgs{\n\t\t\t\tIssuerParameters: \u0026keyvault.CertificateCertificatePolicyIssuerParametersArgs{\n\t\t\t\t\tName: pulumi.String(\"Self\"),\n\t\t\t\t},\n\t\t\t\tKeyProperties: \u0026keyvault.CertificateCertificatePolicyKeyPropertiesArgs{\n\t\t\t\t\tExportable: pulumi.Bool(true),\n\t\t\t\t\tKeySize: pulumi.Int(2048),\n\t\t\t\t\tKeyType: pulumi.String(\"RSA\"),\n\t\t\t\t\tReuseKey: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tLifetimeActions: keyvault.CertificateCertificatePolicyLifetimeActionArray{\n\t\t\t\t\t\u0026keyvault.CertificateCertificatePolicyLifetimeActionArgs{\n\t\t\t\t\t\tAction: \u0026keyvault.CertificateCertificatePolicyLifetimeActionActionArgs{\n\t\t\t\t\t\t\tActionType: pulumi.String(\"AutoRenew\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTrigger: \u0026keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs{\n\t\t\t\t\t\t\tDaysBeforeExpiry: pulumi.Int(30),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecretProperties: \u0026keyvault.CertificateCertificatePolicySecretPropertiesArgs{\n\t\t\t\t\tContentType: pulumi.String(\"application/x-pkcs12\"),\n\t\t\t\t},\n\t\t\t\tX509CertificateProperties: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs{\n\t\t\t\t\tExtendedKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"1.3.6.1.5.5.7.3.2\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dataEncipherment\"),\n\t\t\t\t\t\tpulumi.String(\"digitalSignature\"),\n\t\t\t\t\t\tpulumi.String(\"keyCertSign\"),\n\t\t\t\t\t\tpulumi.String(\"keyEncipherment\"),\n\t\t\t\t\t},\n\t\t\t\t\tSubjectAlternativeNames: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs{\n\t\t\t\t\t\tDnsNames: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"internal.contoso.com\"),\n\t\t\t\t\t\t\tpulumi.String(\"domain.hello.world\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSubject: pulumi.Sprintf(\"CN=%v\", exampleApplication.Name),\n\t\t\t\t\tValidityInMonths: pulumi.Int(12),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationCertificate(ctx, \"example\", \u0026azuread.ApplicationCertificateArgs{\n\t\t\tApplicationId: exampleApplication.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tEncoding: pulumi.String(\"hex\"),\n\t\t\tValue: example.CertificateData,\n\t\t\tEndDate: pulumi.String(example.CertificateAttributes.ApplyT(func(certificateAttributes []keyvault.CertificateCertificateAttribute) (*string, error) {\n\t\t\t\treturn \u0026certificateAttributes[0].Expires, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tStartDate: pulumi.String(example.CertificateAttributes.ApplyT(func(certificateAttributes []keyvault.CertificateCertificateAttribute) (*string, error) {\n\t\t\t\treturn \u0026certificateAttributes[0].NotBefore, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyIssuerParametersArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyKeyPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicySecretPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs;\nimport com.pulumi.azuread.ApplicationCertificate;\nimport com.pulumi.azuread.ApplicationCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleApplication = new Application(\"exampleApplication\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var example = new Certificate(\"example\", CertificateArgs.builder()\n .name(\"generated-cert\")\n .keyVaultId(exampleAzurermKeyVault.id())\n .certificatePolicy(CertificateCertificatePolicyArgs.builder()\n .issuerParameters(CertificateCertificatePolicyIssuerParametersArgs.builder()\n .name(\"Self\")\n .build())\n .keyProperties(CertificateCertificatePolicyKeyPropertiesArgs.builder()\n .exportable(true)\n .keySize(2048)\n .keyType(\"RSA\")\n .reuseKey(true)\n .build())\n .lifetimeActions(CertificateCertificatePolicyLifetimeActionArgs.builder()\n .action(CertificateCertificatePolicyLifetimeActionActionArgs.builder()\n .actionType(\"AutoRenew\")\n .build())\n .trigger(CertificateCertificatePolicyLifetimeActionTriggerArgs.builder()\n .daysBeforeExpiry(30)\n .build())\n .build())\n .secretProperties(CertificateCertificatePolicySecretPropertiesArgs.builder()\n .contentType(\"application/x-pkcs12\")\n .build())\n .x509CertificateProperties(CertificateCertificatePolicyX509CertificatePropertiesArgs.builder()\n .extendedKeyUsages(\"1.3.6.1.5.5.7.3.2\")\n .keyUsages( \n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyCertSign\",\n \"keyEncipherment\")\n .subjectAlternativeNames(CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs.builder()\n .dnsNames( \n \"internal.contoso.com\",\n \"domain.hello.world\")\n .build())\n .subject(String.format(\"CN=%s\", exampleApplication.name()))\n .validityInMonths(12)\n .build())\n .build())\n .build());\n\n var exampleApplicationCertificate = new ApplicationCertificate(\"exampleApplicationCertificate\", ApplicationCertificateArgs.builder()\n .applicationId(exampleApplication.id())\n .type(\"AsymmetricX509Cert\")\n .encoding(\"hex\")\n .value(example.certificateData())\n .endDate(example.certificateAttributes().applyValue(certificateAttributes -\u003e certificateAttributes[0].expires()))\n .startDate(example.certificateAttributes().applyValue(certificateAttributes -\u003e certificateAttributes[0].notBefore()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azure:keyvault:Certificate\n properties:\n name: generated-cert\n keyVaultId: ${exampleAzurermKeyVault.id}\n certificatePolicy:\n issuerParameters:\n name: Self\n keyProperties:\n exportable: true\n keySize: 2048\n keyType: RSA\n reuseKey: true\n lifetimeActions:\n - action:\n actionType: AutoRenew\n trigger:\n daysBeforeExpiry: 30\n secretProperties:\n contentType: application/x-pkcs12\n x509CertificateProperties:\n extendedKeyUsages:\n - 1.3.6.1.5.5.7.3.2\n keyUsages:\n - dataEncipherment\n - digitalSignature\n - keyCertSign\n - keyEncipherment\n subjectAlternativeNames:\n dnsNames:\n - internal.contoso.com\n - domain.hello.world\n subject: CN=${exampleApplication.name}\n validityInMonths: 12\n exampleApplication:\n type: azuread:Application\n name: example\n properties:\n displayName: example\n exampleApplicationCertificate:\n type: azuread:ApplicationCertificate\n name: example\n properties:\n applicationId: ${exampleApplication.id}\n type: AsymmetricX509Cert\n encoding: hex\n value: ${example.certificateData}\n endDate: ${example.certificateAttributes[0].expires}\n startDate: ${example.certificateAttributes[0].notBefore}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCertificates can be imported using the object ID of the associated application and the key ID of the certificate credential, e.g.\n\n```sh\n$ pulumi import azuread:index/applicationCertificate:ApplicationCertificate example 00000000-0000-0000-0000-000000000000/certificate/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the application's object ID, the string \"certificate\" and the certificate's key ID in the format `{ObjectId}/certificate/{CertificateKeyId}`.\n\n", + "description": "## Example Usage\n\n*Using a PEM certificate*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationCertificate = new azuread.ApplicationCertificate(\"example\", {\n applicationId: example.id,\n type: \"AsymmetricX509Cert\",\n value: std.file({\n input: \"cert.pem\",\n }).then(invoke =\u003e invoke.result),\n endDate: \"2021-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_certificate = azuread.ApplicationCertificate(\"example\",\n application_id=example.id,\n type=\"AsymmetricX509Cert\",\n value=std.file(input=\"cert.pem\").result,\n end_date=\"2021-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationCertificate = new AzureAD.ApplicationCertificate(\"example\", new()\n {\n ApplicationId = example.Id,\n Type = \"AsymmetricX509Cert\",\n Value = Std.File.Invoke(new()\n {\n Input = \"cert.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n EndDate = \"2021-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFile, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"cert.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationCertificate(ctx, \"example\", \u0026azuread.ApplicationCertificateArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tValue: pulumi.String(invokeFile.Result),\n\t\t\tEndDate: pulumi.String(\"2021-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationCertificate;\nimport com.pulumi.azuread.ApplicationCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationCertificate = new ApplicationCertificate(\"exampleApplicationCertificate\", ApplicationCertificateArgs.builder()\n .applicationId(example.id())\n .type(\"AsymmetricX509Cert\")\n .value(StdFunctions.file(FileArgs.builder()\n .input(\"cert.pem\")\n .build()).result())\n .endDate(\"2021-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationCertificate:\n type: azuread:ApplicationCertificate\n name: example\n properties:\n applicationId: ${example.id}\n type: AsymmetricX509Cert\n value:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.pem\n Return: result\n endDate: 2021-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Using a DER certificate*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationCertificate = new azuread.ApplicationCertificate(\"example\", {\n applicationId: example.id,\n type: \"AsymmetricX509Cert\",\n encoding: \"base64\",\n value: std.file({\n input: \"cert.der\",\n }).then(invoke =\u003e std.base64encode({\n input: invoke.result,\n })).then(invoke =\u003e invoke.result),\n endDate: \"2021-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_certificate = azuread.ApplicationCertificate(\"example\",\n application_id=example.id,\n type=\"AsymmetricX509Cert\",\n encoding=\"base64\",\n value=std.base64encode(input=std.file(input=\"cert.der\").result).result,\n end_date=\"2021-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationCertificate = new AzureAD.ApplicationCertificate(\"example\", new()\n {\n ApplicationId = example.Id,\n Type = \"AsymmetricX509Cert\",\n Encoding = \"base64\",\n Value = Std.File.Invoke(new()\n {\n Input = \"cert.der\",\n }).Apply(invoke =\u003e Std.Base64encode.Invoke(new()\n {\n Input = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n EndDate = \"2021-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeBase64encode, err := std.Base64encode(ctx, \u0026std.Base64encodeArgs{\n\t\t\tInput: std.File(ctx, \u0026std.FileArgs{\n\t\t\t\tInput: \"cert.der\",\n\t\t\t}, nil).Result,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationCertificate(ctx, \"example\", \u0026azuread.ApplicationCertificateArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tEncoding: pulumi.String(\"base64\"),\n\t\t\tValue: pulumi.String(invokeBase64encode.Result),\n\t\t\tEndDate: pulumi.String(\"2021-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationCertificate;\nimport com.pulumi.azuread.ApplicationCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationCertificate = new ApplicationCertificate(\"exampleApplicationCertificate\", ApplicationCertificateArgs.builder()\n .applicationId(example.id())\n .type(\"AsymmetricX509Cert\")\n .encoding(\"base64\")\n .value(StdFunctions.base64encode(Base64encodeArgs.builder()\n .input(StdFunctions.file(FileArgs.builder()\n .input(\"cert.der\")\n .build()).result())\n .build()).result())\n .endDate(\"2021-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationCertificate:\n type: azuread:ApplicationCertificate\n name: example\n properties:\n applicationId: ${example.id}\n type: AsymmetricX509Cert\n encoding: base64\n value:\n fn::invoke:\n Function: std:base64encode\n Arguments:\n input:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.der\n Return: result\n Return: result\n endDate: 2021-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Using a certificate from Azure Key Vault\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst exampleApplication = new azuread.Application(\"example\", {displayName: \"example\"});\nconst example = new azure.keyvault.Certificate(\"example\", {\n name: \"generated-cert\",\n keyVaultId: exampleAzurermKeyVault.id,\n certificatePolicy: {\n issuerParameters: {\n name: \"Self\",\n },\n keyProperties: {\n exportable: true,\n keySize: 2048,\n keyType: \"RSA\",\n reuseKey: true,\n },\n lifetimeActions: [{\n action: {\n actionType: \"AutoRenew\",\n },\n trigger: {\n daysBeforeExpiry: 30,\n },\n }],\n secretProperties: {\n contentType: \"application/x-pkcs12\",\n },\n x509CertificateProperties: {\n extendedKeyUsages: [\"1.3.6.1.5.5.7.3.2\"],\n keyUsages: [\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subjectAlternativeNames: {\n dnsNames: [\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n },\n subject: `CN=${exampleApplication.name}`,\n validityInMonths: 12,\n },\n },\n});\nconst exampleApplicationCertificate = new azuread.ApplicationCertificate(\"example\", {\n applicationId: exampleApplication.id,\n type: \"AsymmetricX509Cert\",\n encoding: \"hex\",\n value: example.certificateData,\n endDate: example.certificateAttributes.apply(certificateAttributes =\u003e certificateAttributes[0].expires),\n startDate: example.certificateAttributes.apply(certificateAttributes =\u003e certificateAttributes[0].notBefore),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\nimport pulumi_azuread as azuread\n\nexample_application = azuread.Application(\"example\", display_name=\"example\")\nexample = azure.keyvault.Certificate(\"example\",\n name=\"generated-cert\",\n key_vault_id=example_azurerm_key_vault[\"id\"],\n certificate_policy={\n \"issuer_parameters\": {\n \"name\": \"Self\",\n },\n \"key_properties\": {\n \"exportable\": True,\n \"key_size\": 2048,\n \"key_type\": \"RSA\",\n \"reuse_key\": True,\n },\n \"lifetime_actions\": [{\n \"action\": {\n \"action_type\": \"AutoRenew\",\n },\n \"trigger\": {\n \"days_before_expiry\": 30,\n },\n }],\n \"secret_properties\": {\n \"content_type\": \"application/x-pkcs12\",\n },\n \"x509_certificate_properties\": {\n \"extended_key_usages\": [\"1.3.6.1.5.5.7.3.2\"],\n \"key_usages\": [\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n \"subject_alternative_names\": {\n \"dns_names\": [\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n },\n \"subject\": f\"CN={example_application.name}\",\n \"validity_in_months\": 12,\n },\n })\nexample_application_certificate = azuread.ApplicationCertificate(\"example\",\n application_id=example_application.id,\n type=\"AsymmetricX509Cert\",\n encoding=\"hex\",\n value=example.certificate_data,\n end_date=example.certificate_attributes[0].expires,\n start_date=example.certificate_attributes[0].not_before)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleApplication = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var example = new Azure.KeyVault.Certificate(\"example\", new()\n {\n Name = \"generated-cert\",\n KeyVaultId = exampleAzurermKeyVault.Id,\n CertificatePolicy = new Azure.KeyVault.Inputs.CertificateCertificatePolicyArgs\n {\n IssuerParameters = new Azure.KeyVault.Inputs.CertificateCertificatePolicyIssuerParametersArgs\n {\n Name = \"Self\",\n },\n KeyProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyKeyPropertiesArgs\n {\n Exportable = true,\n KeySize = 2048,\n KeyType = \"RSA\",\n ReuseKey = true,\n },\n LifetimeActions = new[]\n {\n new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionArgs\n {\n Action = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionActionArgs\n {\n ActionType = \"AutoRenew\",\n },\n Trigger = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionTriggerArgs\n {\n DaysBeforeExpiry = 30,\n },\n },\n },\n SecretProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicySecretPropertiesArgs\n {\n ContentType = \"application/x-pkcs12\",\n },\n X509CertificateProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs\n {\n ExtendedKeyUsages = new[]\n {\n \"1.3.6.1.5.5.7.3.2\",\n },\n KeyUsages = new[]\n {\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyCertSign\",\n \"keyEncipherment\",\n },\n SubjectAlternativeNames = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs\n {\n DnsNames = new[]\n {\n \"internal.contoso.com\",\n \"domain.hello.world\",\n },\n },\n Subject = $\"CN={exampleApplication.Name}\",\n ValidityInMonths = 12,\n },\n },\n });\n\n var exampleApplicationCertificate = new AzureAD.ApplicationCertificate(\"example\", new()\n {\n ApplicationId = exampleApplication.Id,\n Type = \"AsymmetricX509Cert\",\n Encoding = \"hex\",\n Value = example.CertificateData,\n EndDate = example.CertificateAttributes.Apply(certificateAttributes =\u003e certificateAttributes[0].Expires),\n StartDate = example.CertificateAttributes.Apply(certificateAttributes =\u003e certificateAttributes[0].NotBefore),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleApplication, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := keyvault.NewCertificate(ctx, \"example\", \u0026keyvault.CertificateArgs{\n\t\t\tName: pulumi.String(\"generated-cert\"),\n\t\t\tKeyVaultId: pulumi.Any(exampleAzurermKeyVault.Id),\n\t\t\tCertificatePolicy: \u0026keyvault.CertificateCertificatePolicyArgs{\n\t\t\t\tIssuerParameters: \u0026keyvault.CertificateCertificatePolicyIssuerParametersArgs{\n\t\t\t\t\tName: pulumi.String(\"Self\"),\n\t\t\t\t},\n\t\t\t\tKeyProperties: \u0026keyvault.CertificateCertificatePolicyKeyPropertiesArgs{\n\t\t\t\t\tExportable: pulumi.Bool(true),\n\t\t\t\t\tKeySize: pulumi.Int(2048),\n\t\t\t\t\tKeyType: pulumi.String(\"RSA\"),\n\t\t\t\t\tReuseKey: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tLifetimeActions: keyvault.CertificateCertificatePolicyLifetimeActionArray{\n\t\t\t\t\t\u0026keyvault.CertificateCertificatePolicyLifetimeActionArgs{\n\t\t\t\t\t\tAction: \u0026keyvault.CertificateCertificatePolicyLifetimeActionActionArgs{\n\t\t\t\t\t\t\tActionType: pulumi.String(\"AutoRenew\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTrigger: \u0026keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs{\n\t\t\t\t\t\t\tDaysBeforeExpiry: pulumi.Int(30),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecretProperties: \u0026keyvault.CertificateCertificatePolicySecretPropertiesArgs{\n\t\t\t\t\tContentType: pulumi.String(\"application/x-pkcs12\"),\n\t\t\t\t},\n\t\t\t\tX509CertificateProperties: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs{\n\t\t\t\t\tExtendedKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"1.3.6.1.5.5.7.3.2\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dataEncipherment\"),\n\t\t\t\t\t\tpulumi.String(\"digitalSignature\"),\n\t\t\t\t\t\tpulumi.String(\"keyCertSign\"),\n\t\t\t\t\t\tpulumi.String(\"keyEncipherment\"),\n\t\t\t\t\t},\n\t\t\t\t\tSubjectAlternativeNames: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs{\n\t\t\t\t\t\tDnsNames: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"internal.contoso.com\"),\n\t\t\t\t\t\t\tpulumi.String(\"domain.hello.world\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSubject: pulumi.Sprintf(\"CN=%v\", exampleApplication.Name),\n\t\t\t\t\tValidityInMonths: pulumi.Int(12),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationCertificate(ctx, \"example\", \u0026azuread.ApplicationCertificateArgs{\n\t\t\tApplicationId: exampleApplication.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tEncoding: pulumi.String(\"hex\"),\n\t\t\tValue: example.CertificateData,\n\t\t\tEndDate: pulumi.String(example.CertificateAttributes.ApplyT(func(certificateAttributes []keyvault.CertificateCertificateAttribute) (*string, error) {\n\t\t\t\treturn \u0026certificateAttributes[0].Expires, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tStartDate: pulumi.String(example.CertificateAttributes.ApplyT(func(certificateAttributes []keyvault.CertificateCertificateAttribute) (*string, error) {\n\t\t\t\treturn \u0026certificateAttributes[0].NotBefore, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyIssuerParametersArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyKeyPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicySecretPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs;\nimport com.pulumi.azuread.ApplicationCertificate;\nimport com.pulumi.azuread.ApplicationCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleApplication = new Application(\"exampleApplication\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var example = new Certificate(\"example\", CertificateArgs.builder()\n .name(\"generated-cert\")\n .keyVaultId(exampleAzurermKeyVault.id())\n .certificatePolicy(CertificateCertificatePolicyArgs.builder()\n .issuerParameters(CertificateCertificatePolicyIssuerParametersArgs.builder()\n .name(\"Self\")\n .build())\n .keyProperties(CertificateCertificatePolicyKeyPropertiesArgs.builder()\n .exportable(true)\n .keySize(2048)\n .keyType(\"RSA\")\n .reuseKey(true)\n .build())\n .lifetimeActions(CertificateCertificatePolicyLifetimeActionArgs.builder()\n .action(CertificateCertificatePolicyLifetimeActionActionArgs.builder()\n .actionType(\"AutoRenew\")\n .build())\n .trigger(CertificateCertificatePolicyLifetimeActionTriggerArgs.builder()\n .daysBeforeExpiry(30)\n .build())\n .build())\n .secretProperties(CertificateCertificatePolicySecretPropertiesArgs.builder()\n .contentType(\"application/x-pkcs12\")\n .build())\n .x509CertificateProperties(CertificateCertificatePolicyX509CertificatePropertiesArgs.builder()\n .extendedKeyUsages(\"1.3.6.1.5.5.7.3.2\")\n .keyUsages( \n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyCertSign\",\n \"keyEncipherment\")\n .subjectAlternativeNames(CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs.builder()\n .dnsNames( \n \"internal.contoso.com\",\n \"domain.hello.world\")\n .build())\n .subject(String.format(\"CN=%s\", exampleApplication.name()))\n .validityInMonths(12)\n .build())\n .build())\n .build());\n\n var exampleApplicationCertificate = new ApplicationCertificate(\"exampleApplicationCertificate\", ApplicationCertificateArgs.builder()\n .applicationId(exampleApplication.id())\n .type(\"AsymmetricX509Cert\")\n .encoding(\"hex\")\n .value(example.certificateData())\n .endDate(example.certificateAttributes().applyValue(certificateAttributes -\u003e certificateAttributes[0].expires()))\n .startDate(example.certificateAttributes().applyValue(certificateAttributes -\u003e certificateAttributes[0].notBefore()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azure:keyvault:Certificate\n properties:\n name: generated-cert\n keyVaultId: ${exampleAzurermKeyVault.id}\n certificatePolicy:\n issuerParameters:\n name: Self\n keyProperties:\n exportable: true\n keySize: 2048\n keyType: RSA\n reuseKey: true\n lifetimeActions:\n - action:\n actionType: AutoRenew\n trigger:\n daysBeforeExpiry: 30\n secretProperties:\n contentType: application/x-pkcs12\n x509CertificateProperties:\n extendedKeyUsages:\n - 1.3.6.1.5.5.7.3.2\n keyUsages:\n - dataEncipherment\n - digitalSignature\n - keyCertSign\n - keyEncipherment\n subjectAlternativeNames:\n dnsNames:\n - internal.contoso.com\n - domain.hello.world\n subject: CN=${exampleApplication.name}\n validityInMonths: 12\n exampleApplication:\n type: azuread:Application\n name: example\n properties:\n displayName: example\n exampleApplicationCertificate:\n type: azuread:ApplicationCertificate\n name: example\n properties:\n applicationId: ${exampleApplication.id}\n type: AsymmetricX509Cert\n encoding: hex\n value: ${example.certificateData}\n endDate: ${example.certificateAttributes[0].expires}\n startDate: ${example.certificateAttributes[0].notBefore}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCertificates can be imported using the object ID of the associated application and the key ID of the certificate credential, e.g.\n\n```sh\n$ pulumi import azuread:index/applicationCertificate:ApplicationCertificate example 00000000-0000-0000-0000-000000000000/certificate/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the application's object ID, the string \"certificate\" and the certificate's key ID in the format `{ObjectId}/certificate/{CertificateKeyId}`.\n\n", "properties": { "applicationId": { "type": "string", "description": "The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created.\n" }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this certificate should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider" - }, "encoding": { "type": "string", "description": "Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.\n\n\u003e **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource.\n" @@ -4759,7 +4737,8 @@ }, "endDateRelative": { "type": "string", - "description": "A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n\n\u003e One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date.\n" + "description": "A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n\n\u003e One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property." }, "keyId": { "type": "string", @@ -4781,7 +4760,6 @@ }, "required": [ "applicationId", - "applicationObjectId", "endDate", "keyId", "startDate", @@ -4793,12 +4771,6 @@ "description": "The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this certificate should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "encoding": { "type": "string", "description": "Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.\n\n\u003e **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource.\n", @@ -4812,6 +4784,7 @@ "endDateRelative": { "type": "string", "description": "A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n\n\u003e One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.", "willReplaceOnChanges": true }, "keyId": { @@ -4837,6 +4810,7 @@ } }, "requiredInputs": [ + "applicationId", "value" ], "stateInputs": { @@ -4847,12 +4821,6 @@ "description": "The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this certificate should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "encoding": { "type": "string", "description": "Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.\n\n\u003e **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource.\n", @@ -4866,6 +4834,7 @@ "endDateRelative": { "type": "string", "description": "A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n\n\u003e One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.", "willReplaceOnChanges": true }, "keyId": { @@ -4894,7 +4863,7 @@ } }, "azuread:index/applicationFallbackPublicClient:ApplicationFallbackPublicClient": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationFallbackPublicClient = new azuread.ApplicationFallbackPublicClient(\"example\", {\n applicationId: example.id,\n enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_fallback_public_client = azuread.ApplicationFallbackPublicClient(\"example\",\n application_id=example.id,\n enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationFallbackPublicClient = new AzureAD.ApplicationFallbackPublicClient(\"example\", new()\n {\n ApplicationId = example.Id,\n Enabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationFallbackPublicClient(ctx, \"example\", \u0026azuread.ApplicationFallbackPublicClientArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationFallbackPublicClient;\nimport com.pulumi.azuread.ApplicationFallbackPublicClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationFallbackPublicClient = new ApplicationFallbackPublicClient(\"exampleApplicationFallbackPublicClient\", ApplicationFallbackPublicClientArgs.builder()\n .applicationId(example.id())\n .enabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationFallbackPublicClient:\n type: azuread:ApplicationFallbackPublicClient\n name: example\n properties:\n applicationId: ${example.id}\n enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe Application Fallback Public Client setting can be imported using the object ID of the application, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationFallbackPublicClient:ApplicationFallbackPublicClient example /applications/00000000-0000-0000-0000-000000000000/fallbackPublicClient\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationFallbackPublicClient = new azuread.ApplicationFallbackPublicClient(\"example\", {\n applicationId: example.id,\n enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_fallback_public_client = azuread.ApplicationFallbackPublicClient(\"example\",\n application_id=example.id,\n enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationFallbackPublicClient = new AzureAD.ApplicationFallbackPublicClient(\"example\", new()\n {\n ApplicationId = example.Id,\n Enabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationFallbackPublicClient(ctx, \"example\", \u0026azuread.ApplicationFallbackPublicClientArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationFallbackPublicClient;\nimport com.pulumi.azuread.ApplicationFallbackPublicClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationFallbackPublicClient = new ApplicationFallbackPublicClient(\"exampleApplicationFallbackPublicClient\", ApplicationFallbackPublicClientArgs.builder()\n .applicationId(example.id())\n .enabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationFallbackPublicClient:\n type: azuread:ApplicationFallbackPublicClient\n name: example\n properties:\n applicationId: ${example.id}\n enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe Application Fallback Public Client setting can be imported using the object ID of the application, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationFallbackPublicClient:ApplicationFallbackPublicClient example /applications/00000000-0000-0000-0000-000000000000/fallbackPublicClient\n```\n\n", "properties": { "applicationId": { "type": "string", @@ -4941,17 +4910,12 @@ } }, "azuread:index/applicationFederatedIdentityCredential:ApplicationFederatedIdentityCredential": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationFederatedIdentityCredential = new azuread.ApplicationFederatedIdentityCredential(\"example\", {\n applicationId: example.id,\n displayName: \"my-repo-deploy\",\n description: \"Deployments for my-repo\",\n audiences: [\"api://AzureADTokenExchange\"],\n issuer: \"https://token.actions.githubusercontent.com\",\n subject: \"repo:my-organization/my-repo:environment:prod\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_federated_identity_credential = azuread.ApplicationFederatedIdentityCredential(\"example\",\n application_id=example.id,\n display_name=\"my-repo-deploy\",\n description=\"Deployments for my-repo\",\n audiences=[\"api://AzureADTokenExchange\"],\n issuer=\"https://token.actions.githubusercontent.com\",\n subject=\"repo:my-organization/my-repo:environment:prod\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationFederatedIdentityCredential = new AzureAD.ApplicationFederatedIdentityCredential(\"example\", new()\n {\n ApplicationId = example.Id,\n DisplayName = \"my-repo-deploy\",\n Description = \"Deployments for my-repo\",\n Audiences = new[]\n {\n \"api://AzureADTokenExchange\",\n },\n Issuer = \"https://token.actions.githubusercontent.com\",\n Subject = \"repo:my-organization/my-repo:environment:prod\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationFederatedIdentityCredential(ctx, \"example\", \u0026azuread.ApplicationFederatedIdentityCredentialArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tDisplayName: pulumi.String(\"my-repo-deploy\"),\n\t\t\tDescription: pulumi.String(\"Deployments for my-repo\"),\n\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"api://AzureADTokenExchange\"),\n\t\t\t},\n\t\t\tIssuer: pulumi.String(\"https://token.actions.githubusercontent.com\"),\n\t\t\tSubject: pulumi.String(\"repo:my-organization/my-repo:environment:prod\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationFederatedIdentityCredential;\nimport com.pulumi.azuread.ApplicationFederatedIdentityCredentialArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationFederatedIdentityCredential = new ApplicationFederatedIdentityCredential(\"exampleApplicationFederatedIdentityCredential\", ApplicationFederatedIdentityCredentialArgs.builder()\n .applicationId(example.id())\n .displayName(\"my-repo-deploy\")\n .description(\"Deployments for my-repo\")\n .audiences(\"api://AzureADTokenExchange\")\n .issuer(\"https://token.actions.githubusercontent.com\")\n .subject(\"repo:my-organization/my-repo:environment:prod\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationFederatedIdentityCredential:\n type: azuread:ApplicationFederatedIdentityCredential\n name: example\n properties:\n applicationId: ${example.id}\n displayName: my-repo-deploy\n description: Deployments for my-repo\n audiences:\n - api://AzureADTokenExchange\n issuer: https://token.actions.githubusercontent.com\n subject: repo:my-organization/my-repo:environment:prod\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nFederated Identity Credentials can be imported using the object ID of the associated application and the ID of the federated identity credential, e.g.\n\n```sh\n$ pulumi import azuread:index/applicationFederatedIdentityCredential:ApplicationFederatedIdentityCredential example 00000000-0000-0000-0000-000000000000/federatedIdentityCredential/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the application's object ID, the string \"federatedIdentityCredential\" and the credential ID in the format `{ObjectId}/federatedIdentityCredential/{CredentialId}`.\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationFederatedIdentityCredential = new azuread.ApplicationFederatedIdentityCredential(\"example\", {\n applicationId: example.id,\n displayName: \"my-repo-deploy\",\n description: \"Deployments for my-repo\",\n audiences: [\"api://AzureADTokenExchange\"],\n issuer: \"https://token.actions.githubusercontent.com\",\n subject: \"repo:my-organization/my-repo:environment:prod\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_federated_identity_credential = azuread.ApplicationFederatedIdentityCredential(\"example\",\n application_id=example.id,\n display_name=\"my-repo-deploy\",\n description=\"Deployments for my-repo\",\n audiences=[\"api://AzureADTokenExchange\"],\n issuer=\"https://token.actions.githubusercontent.com\",\n subject=\"repo:my-organization/my-repo:environment:prod\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationFederatedIdentityCredential = new AzureAD.ApplicationFederatedIdentityCredential(\"example\", new()\n {\n ApplicationId = example.Id,\n DisplayName = \"my-repo-deploy\",\n Description = \"Deployments for my-repo\",\n Audiences = new[]\n {\n \"api://AzureADTokenExchange\",\n },\n Issuer = \"https://token.actions.githubusercontent.com\",\n Subject = \"repo:my-organization/my-repo:environment:prod\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationFederatedIdentityCredential(ctx, \"example\", \u0026azuread.ApplicationFederatedIdentityCredentialArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tDisplayName: pulumi.String(\"my-repo-deploy\"),\n\t\t\tDescription: pulumi.String(\"Deployments for my-repo\"),\n\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"api://AzureADTokenExchange\"),\n\t\t\t},\n\t\t\tIssuer: pulumi.String(\"https://token.actions.githubusercontent.com\"),\n\t\t\tSubject: pulumi.String(\"repo:my-organization/my-repo:environment:prod\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationFederatedIdentityCredential;\nimport com.pulumi.azuread.ApplicationFederatedIdentityCredentialArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationFederatedIdentityCredential = new ApplicationFederatedIdentityCredential(\"exampleApplicationFederatedIdentityCredential\", ApplicationFederatedIdentityCredentialArgs.builder()\n .applicationId(example.id())\n .displayName(\"my-repo-deploy\")\n .description(\"Deployments for my-repo\")\n .audiences(\"api://AzureADTokenExchange\")\n .issuer(\"https://token.actions.githubusercontent.com\")\n .subject(\"repo:my-organization/my-repo:environment:prod\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationFederatedIdentityCredential:\n type: azuread:ApplicationFederatedIdentityCredential\n name: example\n properties:\n applicationId: ${example.id}\n displayName: my-repo-deploy\n description: Deployments for my-repo\n audiences:\n - api://AzureADTokenExchange\n issuer: https://token.actions.githubusercontent.com\n subject: repo:my-organization/my-repo:environment:prod\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nFederated Identity Credentials can be imported using the object ID of the associated application and the ID of the federated identity credential, e.g.\n\n```sh\n$ pulumi import azuread:index/applicationFederatedIdentityCredential:ApplicationFederatedIdentityCredential example 00000000-0000-0000-0000-000000000000/federatedIdentityCredential/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the application's object ID, the string \"federatedIdentityCredential\" and the credential ID in the format `{ObjectId}/federatedIdentityCredential/{CredentialId}`.\n\n", "properties": { "applicationId": { "type": "string", "description": "The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created.\n" }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this federated identity credential should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider" - }, "audiences": { "type": "array", "items": { @@ -4982,7 +4946,6 @@ }, "required": [ "applicationId", - "applicationObjectId", "audiences", "credentialId", "displayName", @@ -4995,12 +4958,6 @@ "description": "The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this federated identity credential should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "audiences": { "type": "array", "items": { @@ -5027,6 +4984,7 @@ } }, "requiredInputs": [ + "applicationId", "audiences", "displayName", "issuer", @@ -5040,12 +4998,6 @@ "description": "The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this federated identity credential should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "audiences": { "type": "array", "items": { @@ -5079,7 +5031,7 @@ } }, "azuread:index/applicationFromTemplate:ApplicationFromTemplate": { - "description": "Creates an application registration and associated service principal from a gallery template.\n\n\u003e The azuread.Application resource can also be used to instantiate a gallery application, however unlike the `azuread.Application` resource, this resource does not attempt to manage any properties of the resulting application.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Application.ReadWrite.OwnedBy` or `Application.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource may require one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Marketo\",\n});\nconst exampleApplicationFromTemplate = new azuread.ApplicationFromTemplate(\"example\", {\n displayName: \"Example Application\",\n templateId: example.then(example =\u003e example.templateId),\n});\nconst exampleGetApplication = azuread.getApplicationOutput({\n objectId: exampleApplicationFromTemplate.applicationObjectId,\n});\nconst exampleGetServicePrincipal = azuread.getServicePrincipalOutput({\n objectId: exampleApplicationFromTemplate.servicePrincipalObjectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Marketo\")\nexample_application_from_template = azuread.ApplicationFromTemplate(\"example\",\n display_name=\"Example Application\",\n template_id=example.template_id)\nexample_get_application = azuread.get_application_output(object_id=example_application_from_template.application_object_id)\nexample_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Marketo\",\n });\n\n var exampleApplicationFromTemplate = new AzureAD.ApplicationFromTemplate(\"example\", new()\n {\n DisplayName = \"Example Application\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n });\n\n var exampleGetApplication = AzureAD.GetApplication.Invoke(new()\n {\n ObjectId = exampleApplicationFromTemplate.ApplicationObjectId,\n });\n\n var exampleGetServicePrincipal = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ObjectId = exampleApplicationFromTemplate.ServicePrincipalObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Marketo\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplicationFromTemplate, err := azuread.NewApplicationFromTemplate(ctx, \"example\", \u0026azuread.ApplicationFromTemplateArgs{\n\t\t\tDisplayName: pulumi.String(\"Example Application\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = azuread.LookupApplicationOutput(ctx, azuread.GetApplicationOutputArgs{\n\t\t\tObjectId: exampleApplicationFromTemplate.ApplicationObjectId,\n\t\t}, nil)\n\t\t_ = azuread.LookupServicePrincipalOutput(ctx, azuread.GetServicePrincipalOutputArgs{\n\t\t\tObjectId: exampleApplicationFromTemplate.ServicePrincipalObjectId,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.ApplicationFromTemplate;\nimport com.pulumi.azuread.ApplicationFromTemplateArgs;\nimport com.pulumi.azuread.inputs.GetApplicationArgs;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Marketo\")\n .build());\n\n var exampleApplicationFromTemplate = new ApplicationFromTemplate(\"exampleApplicationFromTemplate\", ApplicationFromTemplateArgs.builder()\n .displayName(\"Example Application\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .build());\n\n final var exampleGetApplication = AzureadFunctions.getApplication(GetApplicationArgs.builder()\n .objectId(exampleApplicationFromTemplate.applicationObjectId())\n .build());\n\n final var exampleGetServicePrincipal = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .objectId(exampleApplicationFromTemplate.servicePrincipalObjectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApplicationFromTemplate:\n type: azuread:ApplicationFromTemplate\n name: example\n properties:\n displayName: Example Application\n templateId: ${example.templateId}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Marketo\n exampleGetApplication:\n fn::invoke:\n Function: azuread:getApplication\n Arguments:\n objectId: ${exampleApplicationFromTemplate.applicationObjectId}\n exampleGetServicePrincipal:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n objectId: ${exampleApplicationFromTemplate.servicePrincipalObjectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nTemplated Applications can be imported using the template ID, the object ID of the application, and the object ID of the service principal, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationFromTemplate:ApplicationFromTemplate example /applicationTemplates/00000000-0000-0000-0000-000000000000/instantiate/11111111-1111-1111-1111-111111111111/22222222-2222-2222-2222-222222222222\n```\n\n", + "description": "Creates an application registration and associated service principal from a gallery template.\n\n\u003e The azuread.Application resource can also be used to instantiate a gallery application, however unlike the `azuread.Application` resource, this resource does not attempt to manage any properties of the resulting application.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Application.ReadWrite.OwnedBy` or `Application.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource may require one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Marketo\",\n});\nconst exampleApplicationFromTemplate = new azuread.ApplicationFromTemplate(\"example\", {\n displayName: \"Example Application\",\n templateId: example.then(example =\u003e example.templateId),\n});\nconst exampleGetApplication = azuread.getApplicationOutput({\n objectId: exampleApplicationFromTemplate.applicationObjectId,\n});\nconst exampleGetServicePrincipal = azuread.getServicePrincipalOutput({\n objectId: exampleApplicationFromTemplate.servicePrincipalObjectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Marketo\")\nexample_application_from_template = azuread.ApplicationFromTemplate(\"example\",\n display_name=\"Example Application\",\n template_id=example.template_id)\nexample_get_application = azuread.get_application_output(object_id=example_application_from_template.application_object_id)\nexample_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Marketo\",\n });\n\n var exampleApplicationFromTemplate = new AzureAD.ApplicationFromTemplate(\"example\", new()\n {\n DisplayName = \"Example Application\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n });\n\n var exampleGetApplication = AzureAD.GetApplication.Invoke(new()\n {\n ObjectId = exampleApplicationFromTemplate.ApplicationObjectId,\n });\n\n var exampleGetServicePrincipal = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ObjectId = exampleApplicationFromTemplate.ServicePrincipalObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Marketo\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplicationFromTemplate, err := azuread.NewApplicationFromTemplate(ctx, \"example\", \u0026azuread.ApplicationFromTemplateArgs{\n\t\t\tDisplayName: pulumi.String(\"Example Application\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = azuread.LookupApplicationOutput(ctx, azuread.GetApplicationOutputArgs{\n\t\t\tObjectId: exampleApplicationFromTemplate.ApplicationObjectId,\n\t\t}, nil)\n\t\t_ = azuread.LookupServicePrincipalOutput(ctx, azuread.GetServicePrincipalOutputArgs{\n\t\t\tObjectId: exampleApplicationFromTemplate.ServicePrincipalObjectId,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.ApplicationFromTemplate;\nimport com.pulumi.azuread.ApplicationFromTemplateArgs;\nimport com.pulumi.azuread.inputs.GetApplicationArgs;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Marketo\")\n .build());\n\n var exampleApplicationFromTemplate = new ApplicationFromTemplate(\"exampleApplicationFromTemplate\", ApplicationFromTemplateArgs.builder()\n .displayName(\"Example Application\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .build());\n\n final var exampleGetApplication = AzureadFunctions.getApplication(GetApplicationArgs.builder()\n .objectId(exampleApplicationFromTemplate.applicationObjectId())\n .build());\n\n final var exampleGetServicePrincipal = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .objectId(exampleApplicationFromTemplate.servicePrincipalObjectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApplicationFromTemplate:\n type: azuread:ApplicationFromTemplate\n name: example\n properties:\n displayName: Example Application\n templateId: ${example.templateId}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Marketo\n exampleGetApplication:\n fn::invoke:\n Function: azuread:getApplication\n Arguments:\n objectId: ${exampleApplicationFromTemplate.applicationObjectId}\n exampleGetServicePrincipal:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n objectId: ${exampleApplicationFromTemplate.servicePrincipalObjectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nTemplated Applications can be imported using the template ID, the object ID of the application, and the object ID of the service principal, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationFromTemplate:ApplicationFromTemplate example /applicationTemplates/00000000-0000-0000-0000-000000000000/instantiate/11111111-1111-1111-1111-111111111111/22222222-2222-2222-2222-222222222222\n```\n\n", "properties": { "applicationId": { "type": "string", @@ -5162,7 +5114,7 @@ } }, "azuread:index/applicationIdentifierUri:ApplicationIdentifierUri": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationIdentifierUri = new azuread.ApplicationIdentifierUri(\"example\", {\n applicationId: example.id,\n identifierUri: \"https://app.hashitown.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_identifier_uri = azuread.ApplicationIdentifierUri(\"example\",\n application_id=example.id,\n identifier_uri=\"https://app.hashitown.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationIdentifierUri = new AzureAD.ApplicationIdentifierUri(\"example\", new()\n {\n ApplicationId = example.Id,\n IdentifierUri = \"https://app.hashitown.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationIdentifierUri(ctx, \"example\", \u0026azuread.ApplicationIdentifierUriArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tIdentifierUri: pulumi.String(\"https://app.hashitown.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationIdentifierUri;\nimport com.pulumi.azuread.ApplicationIdentifierUriArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationIdentifierUri = new ApplicationIdentifierUri(\"exampleApplicationIdentifierUri\", ApplicationIdentifierUriArgs.builder()\n .applicationId(example.id())\n .identifierUri(\"https://app.hashitown.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationIdentifierUri:\n type: azuread:ApplicationIdentifierUri\n name: example\n properties:\n applicationId: ${example.id}\n identifierUri: https://app.hashitown.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing multiple identifier URIs for the same application, create another instance of this resource\n\n*Usage with azuread.Application resource*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleApplicationIdentifierUri = new azuread.ApplicationIdentifierUri(\"example\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_application_identifier_uri = azuread.ApplicationIdentifierUri(\"example\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationIdentifierUri = new AzureAD.ApplicationIdentifierUri(\"example\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationIdentifierUri(ctx, \"example\", \u0026azuread.ApplicationIdentifierUriArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ApplicationIdentifierUri;\nimport com.pulumi.azuread.ApplicationIdentifierUriArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationIdentifierUri = new ApplicationIdentifierUri(\"exampleApplicationIdentifierUri\", ApplicationIdentifierUriArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleApplicationIdentifierUri:\n type: azuread:ApplicationIdentifierUri\n name: example\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Identifier URIs can be imported using the object ID of the application and the base64-encoded identifier URI, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationIdentifierUri:ApplicationIdentifierUri example /applications/00000000-0000-0000-0000-000000000000/identifierUris/aHR0cHM6Ly9leGFtcGxlLm5ldC8=\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationIdentifierUri = new azuread.ApplicationIdentifierUri(\"example\", {\n applicationId: example.id,\n identifierUri: \"https://app.hashitown.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_identifier_uri = azuread.ApplicationIdentifierUri(\"example\",\n application_id=example.id,\n identifier_uri=\"https://app.hashitown.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationIdentifierUri = new AzureAD.ApplicationIdentifierUri(\"example\", new()\n {\n ApplicationId = example.Id,\n IdentifierUri = \"https://app.hashitown.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationIdentifierUri(ctx, \"example\", \u0026azuread.ApplicationIdentifierUriArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tIdentifierUri: pulumi.String(\"https://app.hashitown.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationIdentifierUri;\nimport com.pulumi.azuread.ApplicationIdentifierUriArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationIdentifierUri = new ApplicationIdentifierUri(\"exampleApplicationIdentifierUri\", ApplicationIdentifierUriArgs.builder()\n .applicationId(example.id())\n .identifierUri(\"https://app.hashitown.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationIdentifierUri:\n type: azuread:ApplicationIdentifierUri\n name: example\n properties:\n applicationId: ${example.id}\n identifierUri: https://app.hashitown.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing multiple identifier URIs for the same application, create another instance of this resource\n\n*Usage with azuread.Application resource*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleApplicationIdentifierUri = new azuread.ApplicationIdentifierUri(\"example\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_application_identifier_uri = azuread.ApplicationIdentifierUri(\"example\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationIdentifierUri = new AzureAD.ApplicationIdentifierUri(\"example\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationIdentifierUri(ctx, \"example\", \u0026azuread.ApplicationIdentifierUriArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ApplicationIdentifierUri;\nimport com.pulumi.azuread.ApplicationIdentifierUriArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationIdentifierUri = new ApplicationIdentifierUri(\"exampleApplicationIdentifierUri\", ApplicationIdentifierUriArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleApplicationIdentifierUri:\n type: azuread:ApplicationIdentifierUri\n name: example\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Identifier URIs can be imported using the object ID of the application and the base64-encoded identifier URI, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationIdentifierUri:ApplicationIdentifierUri example /applications/00000000-0000-0000-0000-000000000000/identifierUris/aHR0cHM6Ly9leGFtcGxlLm5ldC8=\n```\n\n", "properties": { "applicationId": { "type": "string", @@ -5211,7 +5163,7 @@ } }, "azuread:index/applicationKnownClients:ApplicationKnownClients": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst client = new azuread.ApplicationRegistration(\"client\", {displayName: \"example client\"});\nconst exampleApplicationKnownClients = new azuread.ApplicationKnownClients(\"example\", {\n applicationId: example.id,\n knownClientIds: [client.clientId],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nclient = azuread.ApplicationRegistration(\"client\", display_name=\"example client\")\nexample_application_known_clients = azuread.ApplicationKnownClients(\"example\",\n application_id=example.id,\n known_client_ids=[client.client_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var client = new AzureAD.ApplicationRegistration(\"client\", new()\n {\n DisplayName = \"example client\",\n });\n\n var exampleApplicationKnownClients = new AzureAD.ApplicationKnownClients(\"example\", new()\n {\n ApplicationId = example.Id,\n KnownClientIds = new[]\n {\n client.ClientId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tclient, err := azuread.NewApplicationRegistration(ctx, \"client\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example client\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationKnownClients(ctx, \"example\", \u0026azuread.ApplicationKnownClientsArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tKnownClientIds: pulumi.StringArray{\n\t\t\t\tclient.ClientId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationKnownClients;\nimport com.pulumi.azuread.ApplicationKnownClientsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var client = new ApplicationRegistration(\"client\", ApplicationRegistrationArgs.builder()\n .displayName(\"example client\")\n .build());\n\n var exampleApplicationKnownClients = new ApplicationKnownClients(\"exampleApplicationKnownClients\", ApplicationKnownClientsArgs.builder()\n .applicationId(example.id())\n .knownClientIds(client.clientId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n client:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example client\n exampleApplicationKnownClients:\n type: azuread:ApplicationKnownClients\n name: example\n properties:\n applicationId: ${example.id}\n knownClientIds:\n - ${client.clientId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Known Clients can be imported using the object ID of the application in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationKnownClients:ApplicationKnownClients example /applications/00000000-0000-0000-0000-000000000000/knownClients\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst client = new azuread.ApplicationRegistration(\"client\", {displayName: \"example client\"});\nconst exampleApplicationKnownClients = new azuread.ApplicationKnownClients(\"example\", {\n applicationId: example.id,\n knownClientIds: [client.clientId],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nclient = azuread.ApplicationRegistration(\"client\", display_name=\"example client\")\nexample_application_known_clients = azuread.ApplicationKnownClients(\"example\",\n application_id=example.id,\n known_client_ids=[client.client_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var client = new AzureAD.ApplicationRegistration(\"client\", new()\n {\n DisplayName = \"example client\",\n });\n\n var exampleApplicationKnownClients = new AzureAD.ApplicationKnownClients(\"example\", new()\n {\n ApplicationId = example.Id,\n KnownClientIds = new[]\n {\n client.ClientId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tclient, err := azuread.NewApplicationRegistration(ctx, \"client\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example client\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationKnownClients(ctx, \"example\", \u0026azuread.ApplicationKnownClientsArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tKnownClientIds: pulumi.StringArray{\n\t\t\t\tclient.ClientId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationKnownClients;\nimport com.pulumi.azuread.ApplicationKnownClientsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var client = new ApplicationRegistration(\"client\", ApplicationRegistrationArgs.builder()\n .displayName(\"example client\")\n .build());\n\n var exampleApplicationKnownClients = new ApplicationKnownClients(\"exampleApplicationKnownClients\", ApplicationKnownClientsArgs.builder()\n .applicationId(example.id())\n .knownClientIds(client.clientId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n client:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example client\n exampleApplicationKnownClients:\n type: azuread:ApplicationKnownClients\n name: example\n properties:\n applicationId: ${example.id}\n knownClientIds:\n - ${client.clientId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Known Clients can be imported using the object ID of the application in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationKnownClients:ApplicationKnownClients example /applications/00000000-0000-0000-0000-000000000000/knownClients\n```\n\n", "properties": { "applicationId": { "type": "string", @@ -5267,7 +5219,7 @@ } }, "azuread:index/applicationOptionalClaims:ApplicationOptionalClaims": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationOptionalClaims = new azuread.ApplicationOptionalClaims(\"example\", {\n applicationId: example.id,\n accessTokens: [\n {\n name: \"myclaim\",\n },\n {\n name: \"otherclaim\",\n },\n ],\n idTokens: [{\n name: \"userclaim\",\n source: \"user\",\n essential: true,\n additionalProperties: [\"emit_as_roles\"],\n }],\n saml2Tokens: [{\n name: \"samlexample\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_optional_claims = azuread.ApplicationOptionalClaims(\"example\",\n application_id=example.id,\n access_tokens=[\n {\n \"name\": \"myclaim\",\n },\n {\n \"name\": \"otherclaim\",\n },\n ],\n id_tokens=[{\n \"name\": \"userclaim\",\n \"source\": \"user\",\n \"essential\": True,\n \"additional_properties\": [\"emit_as_roles\"],\n }],\n saml2_tokens=[{\n \"name\": \"samlexample\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationOptionalClaims = new AzureAD.ApplicationOptionalClaims(\"example\", new()\n {\n ApplicationId = example.Id,\n AccessTokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsAccessTokenArgs\n {\n Name = \"myclaim\",\n },\n new AzureAD.Inputs.ApplicationOptionalClaimsAccessTokenArgs\n {\n Name = \"otherclaim\",\n },\n },\n IdTokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsIdTokenArgs\n {\n Name = \"userclaim\",\n Source = \"user\",\n Essential = true,\n AdditionalProperties = new[]\n {\n \"emit_as_roles\",\n },\n },\n },\n Saml2Tokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsSaml2TokenArgs\n {\n Name = \"samlexample\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationOptionalClaims(ctx, \"example\", \u0026azuread.ApplicationOptionalClaimsArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tAccessTokens: azuread.ApplicationOptionalClaimsAccessTokenArray{\n\t\t\t\t\u0026azuread.ApplicationOptionalClaimsAccessTokenArgs{\n\t\t\t\t\tName: pulumi.String(\"myclaim\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.ApplicationOptionalClaimsAccessTokenArgs{\n\t\t\t\t\tName: pulumi.String(\"otherclaim\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tIdTokens: azuread.ApplicationOptionalClaimsIdTokenArray{\n\t\t\t\t\u0026azuread.ApplicationOptionalClaimsIdTokenArgs{\n\t\t\t\t\tName: pulumi.String(\"userclaim\"),\n\t\t\t\t\tSource: pulumi.String(\"user\"),\n\t\t\t\t\tEssential: pulumi.Bool(true),\n\t\t\t\t\tAdditionalProperties: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"emit_as_roles\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSaml2Tokens: azuread.ApplicationOptionalClaimsSaml2TokenArray{\n\t\t\t\t\u0026azuread.ApplicationOptionalClaimsSaml2TokenArgs{\n\t\t\t\t\tName: pulumi.String(\"samlexample\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationOptionalClaims;\nimport com.pulumi.azuread.ApplicationOptionalClaimsArgs;\nimport com.pulumi.azuread.inputs.ApplicationOptionalClaimsAccessTokenArgs;\nimport com.pulumi.azuread.inputs.ApplicationOptionalClaimsIdTokenArgs;\nimport com.pulumi.azuread.inputs.ApplicationOptionalClaimsSaml2TokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationOptionalClaims = new ApplicationOptionalClaims(\"exampleApplicationOptionalClaims\", ApplicationOptionalClaimsArgs.builder()\n .applicationId(example.id())\n .accessTokens( \n ApplicationOptionalClaimsAccessTokenArgs.builder()\n .name(\"myclaim\")\n .build(),\n ApplicationOptionalClaimsAccessTokenArgs.builder()\n .name(\"otherclaim\")\n .build())\n .idTokens(ApplicationOptionalClaimsIdTokenArgs.builder()\n .name(\"userclaim\")\n .source(\"user\")\n .essential(true)\n .additionalProperties(\"emit_as_roles\")\n .build())\n .saml2Tokens(ApplicationOptionalClaimsSaml2TokenArgs.builder()\n .name(\"samlexample\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationOptionalClaims:\n type: azuread:ApplicationOptionalClaims\n name: example\n properties:\n applicationId: ${example.id}\n accessTokens:\n - name: myclaim\n - name: otherclaim\n idTokens:\n - name: userclaim\n source: user\n essential: true\n additionalProperties:\n - emit_as_roles\n saml2Tokens:\n - name: samlexample\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Optional Claims can be imported using the object ID of the application, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationOptionalClaims:ApplicationOptionalClaims example /applications/00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationOptionalClaims = new azuread.ApplicationOptionalClaims(\"example\", {\n applicationId: example.id,\n accessTokens: [\n {\n name: \"myclaim\",\n },\n {\n name: \"otherclaim\",\n },\n ],\n idTokens: [{\n name: \"userclaim\",\n source: \"user\",\n essential: true,\n additionalProperties: [\"emit_as_roles\"],\n }],\n saml2Tokens: [{\n name: \"samlexample\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_optional_claims = azuread.ApplicationOptionalClaims(\"example\",\n application_id=example.id,\n access_tokens=[\n {\n \"name\": \"myclaim\",\n },\n {\n \"name\": \"otherclaim\",\n },\n ],\n id_tokens=[{\n \"name\": \"userclaim\",\n \"source\": \"user\",\n \"essential\": True,\n \"additional_properties\": [\"emit_as_roles\"],\n }],\n saml2_tokens=[{\n \"name\": \"samlexample\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationOptionalClaims = new AzureAD.ApplicationOptionalClaims(\"example\", new()\n {\n ApplicationId = example.Id,\n AccessTokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsAccessTokenArgs\n {\n Name = \"myclaim\",\n },\n new AzureAD.Inputs.ApplicationOptionalClaimsAccessTokenArgs\n {\n Name = \"otherclaim\",\n },\n },\n IdTokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsIdTokenArgs\n {\n Name = \"userclaim\",\n Source = \"user\",\n Essential = true,\n AdditionalProperties = new[]\n {\n \"emit_as_roles\",\n },\n },\n },\n Saml2Tokens = new[]\n {\n new AzureAD.Inputs.ApplicationOptionalClaimsSaml2TokenArgs\n {\n Name = \"samlexample\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationOptionalClaims(ctx, \"example\", \u0026azuread.ApplicationOptionalClaimsArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tAccessTokens: azuread.ApplicationOptionalClaimsAccessTokenArray{\n\t\t\t\t\u0026azuread.ApplicationOptionalClaimsAccessTokenArgs{\n\t\t\t\t\tName: pulumi.String(\"myclaim\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.ApplicationOptionalClaimsAccessTokenArgs{\n\t\t\t\t\tName: pulumi.String(\"otherclaim\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tIdTokens: azuread.ApplicationOptionalClaimsIdTokenArray{\n\t\t\t\t\u0026azuread.ApplicationOptionalClaimsIdTokenArgs{\n\t\t\t\t\tName: pulumi.String(\"userclaim\"),\n\t\t\t\t\tSource: pulumi.String(\"user\"),\n\t\t\t\t\tEssential: pulumi.Bool(true),\n\t\t\t\t\tAdditionalProperties: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"emit_as_roles\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSaml2Tokens: azuread.ApplicationOptionalClaimsSaml2TokenArray{\n\t\t\t\t\u0026azuread.ApplicationOptionalClaimsSaml2TokenArgs{\n\t\t\t\t\tName: pulumi.String(\"samlexample\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationOptionalClaims;\nimport com.pulumi.azuread.ApplicationOptionalClaimsArgs;\nimport com.pulumi.azuread.inputs.ApplicationOptionalClaimsAccessTokenArgs;\nimport com.pulumi.azuread.inputs.ApplicationOptionalClaimsIdTokenArgs;\nimport com.pulumi.azuread.inputs.ApplicationOptionalClaimsSaml2TokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationOptionalClaims = new ApplicationOptionalClaims(\"exampleApplicationOptionalClaims\", ApplicationOptionalClaimsArgs.builder()\n .applicationId(example.id())\n .accessTokens( \n ApplicationOptionalClaimsAccessTokenArgs.builder()\n .name(\"myclaim\")\n .build(),\n ApplicationOptionalClaimsAccessTokenArgs.builder()\n .name(\"otherclaim\")\n .build())\n .idTokens(ApplicationOptionalClaimsIdTokenArgs.builder()\n .name(\"userclaim\")\n .source(\"user\")\n .essential(true)\n .additionalProperties(\"emit_as_roles\")\n .build())\n .saml2Tokens(ApplicationOptionalClaimsSaml2TokenArgs.builder()\n .name(\"samlexample\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationOptionalClaims:\n type: azuread:ApplicationOptionalClaims\n name: example\n properties:\n applicationId: ${example.id}\n accessTokens:\n - name: myclaim\n - name: otherclaim\n idTokens:\n - name: userclaim\n source: user\n essential: true\n additionalProperties:\n - emit_as_roles\n saml2Tokens:\n - name: samlexample\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Optional Claims can be imported using the object ID of the application, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationOptionalClaims:ApplicationOptionalClaims example /applications/00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "accessTokens": { "type": "array", @@ -5363,7 +5315,7 @@ } }, "azuread:index/applicationOwner:ApplicationOwner": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst jane = new azuread.User(\"jane\", {\n userPrincipalName: \"jane.fischer@hashitown.com\",\n displayName: \"Jane Fischer\",\n password: \"Ch@ngeMe\",\n});\nconst exampleJane = new azuread.ApplicationOwner(\"example_jane\", {\n applicationId: example.id,\n ownerObjectId: jane.objectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\njane = azuread.User(\"jane\",\n user_principal_name=\"jane.fischer@hashitown.com\",\n display_name=\"Jane Fischer\",\n password=\"Ch@ngeMe\")\nexample_jane = azuread.ApplicationOwner(\"example_jane\",\n application_id=example.id,\n owner_object_id=jane.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var jane = new AzureAD.User(\"jane\", new()\n {\n UserPrincipalName = \"jane.fischer@hashitown.com\",\n DisplayName = \"Jane Fischer\",\n Password = \"Ch@ngeMe\",\n });\n\n var exampleJane = new AzureAD.ApplicationOwner(\"example_jane\", new()\n {\n ApplicationId = example.Id,\n OwnerObjectId = jane.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjane, err := azuread.NewUser(ctx, \"jane\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jane.fischer@hashitown.com\"),\n\t\t\tDisplayName: pulumi.String(\"Jane Fischer\"),\n\t\t\tPassword: pulumi.String(\"Ch@ngeMe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationOwner(ctx, \"example_jane\", \u0026azuread.ApplicationOwnerArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tOwnerObjectId: jane.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.ApplicationOwner;\nimport com.pulumi.azuread.ApplicationOwnerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var jane = new User(\"jane\", UserArgs.builder()\n .userPrincipalName(\"jane.fischer@hashitown.com\")\n .displayName(\"Jane Fischer\")\n .password(\"Ch@ngeMe\")\n .build());\n\n var exampleJane = new ApplicationOwner(\"exampleJane\", ApplicationOwnerArgs.builder()\n .applicationId(example.id())\n .ownerObjectId(jane.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n jane:\n type: azuread:User\n properties:\n userPrincipalName: jane.fischer@hashitown.com\n displayName: Jane Fischer\n password: Ch@ngeMe\n exampleJane:\n type: azuread:ApplicationOwner\n name: example_jane\n properties:\n applicationId: ${example.id}\n ownerObjectId: ${jane.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing more application owners, create additional instances of this resource\n\n## Import\n\nApplication Owners can be imported using the object ID of the application and the object ID of the owner, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationOwner:ApplicationOwner example /applications/00000000-0000-0000-0000-000000000000/owners/11111111-1111-1111-1111-111111111111\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst jane = new azuread.User(\"jane\", {\n userPrincipalName: \"jane.fischer@hashitown.com\",\n displayName: \"Jane Fischer\",\n password: \"Ch@ngeMe\",\n});\nconst exampleJane = new azuread.ApplicationOwner(\"example_jane\", {\n applicationId: example.id,\n ownerObjectId: jane.objectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\njane = azuread.User(\"jane\",\n user_principal_name=\"jane.fischer@hashitown.com\",\n display_name=\"Jane Fischer\",\n password=\"Ch@ngeMe\")\nexample_jane = azuread.ApplicationOwner(\"example_jane\",\n application_id=example.id,\n owner_object_id=jane.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var jane = new AzureAD.User(\"jane\", new()\n {\n UserPrincipalName = \"jane.fischer@hashitown.com\",\n DisplayName = \"Jane Fischer\",\n Password = \"Ch@ngeMe\",\n });\n\n var exampleJane = new AzureAD.ApplicationOwner(\"example_jane\", new()\n {\n ApplicationId = example.Id,\n OwnerObjectId = jane.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjane, err := azuread.NewUser(ctx, \"jane\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jane.fischer@hashitown.com\"),\n\t\t\tDisplayName: pulumi.String(\"Jane Fischer\"),\n\t\t\tPassword: pulumi.String(\"Ch@ngeMe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationOwner(ctx, \"example_jane\", \u0026azuread.ApplicationOwnerArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tOwnerObjectId: jane.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.ApplicationOwner;\nimport com.pulumi.azuread.ApplicationOwnerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var jane = new User(\"jane\", UserArgs.builder()\n .userPrincipalName(\"jane.fischer@hashitown.com\")\n .displayName(\"Jane Fischer\")\n .password(\"Ch@ngeMe\")\n .build());\n\n var exampleJane = new ApplicationOwner(\"exampleJane\", ApplicationOwnerArgs.builder()\n .applicationId(example.id())\n .ownerObjectId(jane.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n jane:\n type: azuread:User\n properties:\n userPrincipalName: jane.fischer@hashitown.com\n displayName: Jane Fischer\n password: Ch@ngeMe\n exampleJane:\n type: azuread:ApplicationOwner\n name: example_jane\n properties:\n applicationId: ${example.id}\n ownerObjectId: ${jane.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing more application owners, create additional instances of this resource\n\n## Import\n\nApplication Owners can be imported using the object ID of the application and the object ID of the owner, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationOwner:ApplicationOwner example /applications/00000000-0000-0000-0000-000000000000/owners/11111111-1111-1111-1111-111111111111\n```\n\n", "properties": { "applicationId": { "type": "string", @@ -5412,17 +5364,12 @@ } }, "azuread:index/applicationPassword:ApplicationPassword": { - "description": "## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationPassword = new azuread.ApplicationPassword(\"example\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_password = azuread.ApplicationPassword(\"example\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationPassword = new AzureAD.ApplicationPassword(\"example\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPassword(ctx, \"example\", \u0026azuread.ApplicationPasswordArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationPassword;\nimport com.pulumi.azuread.ApplicationPasswordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationPassword = new ApplicationPassword(\"exampleApplicationPassword\", ApplicationPasswordArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationPassword:\n type: azuread:ApplicationPassword\n name: example\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Time-based rotation*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as time from \"@pulumiverse/time\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleRotating = new time.Rotating(\"example\", {rotationDays: 7});\nconst exampleApplicationPassword = new azuread.ApplicationPassword(\"example\", {\n applicationId: example.id,\n rotateWhenChanged: {\n rotation: exampleRotating.id,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumiverse_time as time\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_rotating = time.Rotating(\"example\", rotation_days=7)\nexample_application_password = azuread.ApplicationPassword(\"example\",\n application_id=example.id,\n rotate_when_changed={\n \"rotation\": example_rotating.id,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Time = Pulumiverse.Time;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleRotating = new Time.Rotating(\"example\", new()\n {\n RotationDays = 7,\n });\n\n var exampleApplicationPassword = new AzureAD.ApplicationPassword(\"example\", new()\n {\n ApplicationId = example.Id,\n RotateWhenChanged = \n {\n { \"rotation\", exampleRotating.Id },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-time/sdk/go/time\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRotating, err := time.NewRotating(ctx, \"example\", \u0026time.RotatingArgs{\n\t\t\tRotationDays: pulumi.Int(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPassword(ctx, \"example\", \u0026azuread.ApplicationPasswordArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tRotateWhenChanged: pulumi.StringMap{\n\t\t\t\t\"rotation\": exampleRotating.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.time.Rotating;\nimport com.pulumi.time.RotatingArgs;\nimport com.pulumi.azuread.ApplicationPassword;\nimport com.pulumi.azuread.ApplicationPasswordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleRotating = new Rotating(\"exampleRotating\", RotatingArgs.builder()\n .rotationDays(7)\n .build());\n\n var exampleApplicationPassword = new ApplicationPassword(\"exampleApplicationPassword\", ApplicationPasswordArgs.builder()\n .applicationId(example.id())\n .rotateWhenChanged(Map.of(\"rotation\", exampleRotating.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleRotating:\n type: time:Rotating\n name: example\n properties:\n rotationDays: 7\n exampleApplicationPassword:\n type: azuread:ApplicationPassword\n name: example\n properties:\n applicationId: ${example.id}\n rotateWhenChanged:\n rotation: ${exampleRotating.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", + "description": "## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleApplicationPassword = new azuread.ApplicationPassword(\"example\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_application_password = azuread.ApplicationPassword(\"example\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationPassword = new AzureAD.ApplicationPassword(\"example\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPassword(ctx, \"example\", \u0026azuread.ApplicationPasswordArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationPassword;\nimport com.pulumi.azuread.ApplicationPasswordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationPassword = new ApplicationPassword(\"exampleApplicationPassword\", ApplicationPasswordArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleApplicationPassword:\n type: azuread:ApplicationPassword\n name: example\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Time-based rotation*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as time from \"@pulumiverse/time\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleRotating = new time.Rotating(\"example\", {rotationDays: 7});\nconst exampleApplicationPassword = new azuread.ApplicationPassword(\"example\", {\n applicationId: example.id,\n rotateWhenChanged: {\n rotation: exampleRotating.id,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumiverse_time as time\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_rotating = time.Rotating(\"example\", rotation_days=7)\nexample_application_password = azuread.ApplicationPassword(\"example\",\n application_id=example.id,\n rotate_when_changed={\n \"rotation\": example_rotating.id,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Time = Pulumiverse.Time;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleRotating = new Time.Rotating(\"example\", new()\n {\n RotationDays = 7,\n });\n\n var exampleApplicationPassword = new AzureAD.ApplicationPassword(\"example\", new()\n {\n ApplicationId = example.Id,\n RotateWhenChanged = \n {\n { \"rotation\", exampleRotating.Id },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-time/sdk/go/time\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRotating, err := time.NewRotating(ctx, \"example\", \u0026time.RotatingArgs{\n\t\t\tRotationDays: pulumi.Int(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPassword(ctx, \"example\", \u0026azuread.ApplicationPasswordArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tRotateWhenChanged: pulumi.StringMap{\n\t\t\t\t\"rotation\": exampleRotating.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.time.Rotating;\nimport com.pulumi.time.RotatingArgs;\nimport com.pulumi.azuread.ApplicationPassword;\nimport com.pulumi.azuread.ApplicationPasswordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleRotating = new Rotating(\"exampleRotating\", RotatingArgs.builder()\n .rotationDays(7)\n .build());\n\n var exampleApplicationPassword = new ApplicationPassword(\"exampleApplicationPassword\", ApplicationPasswordArgs.builder()\n .applicationId(example.id())\n .rotateWhenChanged(Map.of(\"rotation\", exampleRotating.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleRotating:\n type: time:Rotating\n name: example\n properties:\n rotationDays: 7\n exampleApplicationPassword:\n type: azuread:ApplicationPassword\n name: example\n properties:\n applicationId: ${example.id}\n rotateWhenChanged:\n rotation: ${exampleRotating.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", "properties": { "applicationId": { "type": "string", "description": "The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created.\n" }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this password should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider" - }, "displayName": { "type": "string", "description": "A display name for the password. Changing this field forces a new resource to be created.\n" @@ -5433,7 +5380,8 @@ }, "endDateRelative": { "type": "string", - "description": "A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n" + "description": "A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property." }, "keyId": { "type": "string", @@ -5458,7 +5406,6 @@ }, "required": [ "applicationId", - "applicationObjectId", "displayName", "endDate", "keyId", @@ -5471,12 +5418,6 @@ "description": "The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this password should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "displayName": { "type": "string", "description": "A display name for the password. Changing this field forces a new resource to be created.\n", @@ -5490,6 +5431,7 @@ "endDateRelative": { "type": "string", "description": "A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.", "willReplaceOnChanges": true }, "rotateWhenChanged": { @@ -5506,6 +5448,9 @@ "willReplaceOnChanges": true } }, + "requiredInputs": [ + "applicationId" + ], "stateInputs": { "description": "Input properties used for looking up and filtering ApplicationPassword resources.\n", "properties": { @@ -5514,12 +5459,6 @@ "description": "The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application for which this password should be created\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "displayName": { "type": "string", "description": "A display name for the password. Changing this field forces a new resource to be created.\n", @@ -5533,6 +5472,7 @@ "endDateRelative": { "type": "string", "description": "A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.", "willReplaceOnChanges": true }, "keyId": { @@ -5562,7 +5502,7 @@ } }, "azuread:index/applicationPermissionScope:ApplicationPermissionScope": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as random from \"@pulumi/random\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleAdminister = new random.RandomUuid(\"example_administer\", {});\nconst exampleApplicationPermissionScope = new azuread.ApplicationPermissionScope(\"example\", {\n applicationId: test.id,\n scopeId: exampleAdminister.id,\n value: \"administer\",\n adminConsentDescription: \"Administer the application\",\n adminConsentDisplayName: \"Administer\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_random as random\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_administer = random.RandomUuid(\"example_administer\")\nexample_application_permission_scope = azuread.ApplicationPermissionScope(\"example\",\n application_id=test[\"id\"],\n scope_id=example_administer.id,\n value=\"administer\",\n admin_consent_description=\"Administer the application\",\n admin_consent_display_name=\"Administer\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleAdminister = new Random.RandomUuid(\"example_administer\");\n\n var exampleApplicationPermissionScope = new AzureAD.ApplicationPermissionScope(\"example\", new()\n {\n ApplicationId = test.Id,\n ScopeId = exampleAdminister.Id,\n Value = \"administer\",\n AdminConsentDescription = \"Administer the application\",\n AdminConsentDisplayName = \"Administer\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAdminister, err := random.NewRandomUuid(ctx, \"example_administer\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPermissionScope(ctx, \"example\", \u0026azuread.ApplicationPermissionScopeArgs{\n\t\t\tApplicationId: pulumi.Any(test.Id),\n\t\t\tScopeId: exampleAdminister.ID(),\n\t\t\tValue: pulumi.String(\"administer\"),\n\t\t\tAdminConsentDescription: pulumi.String(\"Administer the application\"),\n\t\t\tAdminConsentDisplayName: pulumi.String(\"Administer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.random.RandomUuid;\nimport com.pulumi.azuread.ApplicationPermissionScope;\nimport com.pulumi.azuread.ApplicationPermissionScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleAdminister = new RandomUuid(\"exampleAdminister\");\n\n var exampleApplicationPermissionScope = new ApplicationPermissionScope(\"exampleApplicationPermissionScope\", ApplicationPermissionScopeArgs.builder()\n .applicationId(test.id())\n .scopeId(exampleAdminister.id())\n .value(\"administer\")\n .adminConsentDescription(\"Administer the application\")\n .adminConsentDisplayName(\"Administer\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleAdminister:\n type: random:RandomUuid\n name: example_administer\n exampleApplicationPermissionScope:\n type: azuread:ApplicationPermissionScope\n name: example\n properties:\n applicationId: ${test.id}\n scopeId: ${exampleAdminister.id}\n value: administer\n adminConsentDescription: Administer the application\n adminConsentDisplayName: Administer\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing more permissions scopes, create additional instances of this resource\n\n*Usage with azuread.Application resource*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleApplicationPermissionScope = new azuread.ApplicationPermissionScope(\"example\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_application_permission_scope = azuread.ApplicationPermissionScope(\"example\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationPermissionScope = new AzureAD.ApplicationPermissionScope(\"example\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPermissionScope(ctx, \"example\", \u0026azuread.ApplicationPermissionScopeArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ApplicationPermissionScope;\nimport com.pulumi.azuread.ApplicationPermissionScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationPermissionScope = new ApplicationPermissionScope(\"exampleApplicationPermissionScope\", ApplicationPermissionScopeArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleApplicationPermissionScope:\n type: azuread:ApplicationPermissionScope\n name: example\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication App Roles can be imported using the object ID of the application and the ID of the permission scope, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationPermissionScope:ApplicationPermissionScope example /applications/00000000-0000-0000-0000-000000000000/permissionScopes/11111111-1111-1111-1111-111111111111\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as random from \"@pulumi/random\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst exampleAdminister = new random.RandomUuid(\"example_administer\", {});\nconst exampleApplicationPermissionScope = new azuread.ApplicationPermissionScope(\"example\", {\n applicationId: test.id,\n scopeId: exampleAdminister.id,\n value: \"administer\",\n adminConsentDescription: \"Administer the application\",\n adminConsentDisplayName: \"Administer\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_random as random\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_administer = random.RandomUuid(\"example_administer\")\nexample_application_permission_scope = azuread.ApplicationPermissionScope(\"example\",\n application_id=test[\"id\"],\n scope_id=example_administer.id,\n value=\"administer\",\n admin_consent_description=\"Administer the application\",\n admin_consent_display_name=\"Administer\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleAdminister = new Random.RandomUuid(\"example_administer\");\n\n var exampleApplicationPermissionScope = new AzureAD.ApplicationPermissionScope(\"example\", new()\n {\n ApplicationId = test.Id,\n ScopeId = exampleAdminister.Id,\n Value = \"administer\",\n AdminConsentDescription = \"Administer the application\",\n AdminConsentDisplayName = \"Administer\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAdminister, err := random.NewRandomUuid(ctx, \"example_administer\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPermissionScope(ctx, \"example\", \u0026azuread.ApplicationPermissionScopeArgs{\n\t\t\tApplicationId: pulumi.Any(test.Id),\n\t\t\tScopeId: exampleAdminister.ID(),\n\t\t\tValue: pulumi.String(\"administer\"),\n\t\t\tAdminConsentDescription: pulumi.String(\"Administer the application\"),\n\t\t\tAdminConsentDisplayName: pulumi.String(\"Administer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.random.RandomUuid;\nimport com.pulumi.azuread.ApplicationPermissionScope;\nimport com.pulumi.azuread.ApplicationPermissionScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleAdminister = new RandomUuid(\"exampleAdminister\");\n\n var exampleApplicationPermissionScope = new ApplicationPermissionScope(\"exampleApplicationPermissionScope\", ApplicationPermissionScopeArgs.builder()\n .applicationId(test.id())\n .scopeId(exampleAdminister.id())\n .value(\"administer\")\n .adminConsentDescription(\"Administer the application\")\n .adminConsentDisplayName(\"Administer\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n exampleAdminister:\n type: random:RandomUuid\n name: example_administer\n exampleApplicationPermissionScope:\n type: azuread:ApplicationPermissionScope\n name: example\n properties:\n applicationId: ${test.id}\n scopeId: ${exampleAdminister.id}\n value: administer\n adminConsentDescription: Administer the application\n adminConsentDisplayName: Administer\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Tip** For managing more permissions scopes, create additional instances of this resource\n\n*Usage with azuread.Application resource*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleApplicationPermissionScope = new azuread.ApplicationPermissionScope(\"example\", {applicationId: example.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_application_permission_scope = azuread.ApplicationPermissionScope(\"example\", application_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleApplicationPermissionScope = new AzureAD.ApplicationPermissionScope(\"example\", new()\n {\n ApplicationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPermissionScope(ctx, \"example\", \u0026azuread.ApplicationPermissionScopeArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ApplicationPermissionScope;\nimport com.pulumi.azuread.ApplicationPermissionScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleApplicationPermissionScope = new ApplicationPermissionScope(\"exampleApplicationPermissionScope\", ApplicationPermissionScopeArgs.builder()\n .applicationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleApplicationPermissionScope:\n type: azuread:ApplicationPermissionScope\n name: example\n properties:\n applicationId: ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication App Roles can be imported using the object ID of the application and the ID of the permission scope, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationPermissionScope:ApplicationPermissionScope example /applications/00000000-0000-0000-0000-000000000000/permissionScopes/11111111-1111-1111-1111-111111111111\n```\n\n", "properties": { "adminConsentDescription": { "type": "string", @@ -5689,22 +5629,12 @@ } }, "azuread:index/applicationPreAuthorized:ApplicationPreAuthorized": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst authorized = new azuread.ApplicationRegistration(\"authorized\", {displayName: \"example-authorized-app\"});\nconst authorizer = new azuread.Application(\"authorizer\", {\n displayName: \"example-authorizing-app\",\n api: {\n oauth2PermissionScopes: [\n {\n adminConsentDescription: \"Administer the application\",\n adminConsentDisplayName: \"Administer\",\n enabled: true,\n id: \"00000000-0000-0000-0000-000000000000\",\n type: \"Admin\",\n value: \"administer\",\n },\n {\n adminConsentDescription: \"Access the application\",\n adminConsentDisplayName: \"Access\",\n enabled: true,\n id: \"11111111-1111-1111-1111-111111111111\",\n type: \"User\",\n userConsentDescription: \"Access the application\",\n userConsentDisplayName: \"Access\",\n value: \"user_impersonation\",\n },\n ],\n },\n});\nconst example = new azuread.ApplicationPreAuthorized(\"example\", {\n applicationId: authorizer.id,\n authorizedClientId: authorized.clientId,\n permissionIds: [\n \"00000000-0000-0000-0000-000000000000\",\n \"11111111-1111-1111-1111-111111111111\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nauthorized = azuread.ApplicationRegistration(\"authorized\", display_name=\"example-authorized-app\")\nauthorizer = azuread.Application(\"authorizer\",\n display_name=\"example-authorizing-app\",\n api={\n \"oauth2_permission_scopes\": [\n {\n \"admin_consent_description\": \"Administer the application\",\n \"admin_consent_display_name\": \"Administer\",\n \"enabled\": True,\n \"id\": \"00000000-0000-0000-0000-000000000000\",\n \"type\": \"Admin\",\n \"value\": \"administer\",\n },\n {\n \"admin_consent_description\": \"Access the application\",\n \"admin_consent_display_name\": \"Access\",\n \"enabled\": True,\n \"id\": \"11111111-1111-1111-1111-111111111111\",\n \"type\": \"User\",\n \"user_consent_description\": \"Access the application\",\n \"user_consent_display_name\": \"Access\",\n \"value\": \"user_impersonation\",\n },\n ],\n })\nexample = azuread.ApplicationPreAuthorized(\"example\",\n application_id=authorizer.id,\n authorized_client_id=authorized.client_id,\n permission_ids=[\n \"00000000-0000-0000-0000-000000000000\",\n \"11111111-1111-1111-1111-111111111111\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var authorized = new AzureAD.ApplicationRegistration(\"authorized\", new()\n {\n DisplayName = \"example-authorized-app\",\n });\n\n var authorizer = new AzureAD.Application(\"authorizer\", new()\n {\n DisplayName = \"example-authorizing-app\",\n Api = new AzureAD.Inputs.ApplicationApiArgs\n {\n Oauth2PermissionScopes = new[]\n {\n new AzureAD.Inputs.ApplicationApiOauth2PermissionScopeArgs\n {\n AdminConsentDescription = \"Administer the application\",\n AdminConsentDisplayName = \"Administer\",\n Enabled = true,\n Id = \"00000000-0000-0000-0000-000000000000\",\n Type = \"Admin\",\n Value = \"administer\",\n },\n new AzureAD.Inputs.ApplicationApiOauth2PermissionScopeArgs\n {\n AdminConsentDescription = \"Access the application\",\n AdminConsentDisplayName = \"Access\",\n Enabled = true,\n Id = \"11111111-1111-1111-1111-111111111111\",\n Type = \"User\",\n UserConsentDescription = \"Access the application\",\n UserConsentDisplayName = \"Access\",\n Value = \"user_impersonation\",\n },\n },\n },\n });\n\n var example = new AzureAD.ApplicationPreAuthorized(\"example\", new()\n {\n ApplicationId = authorizer.Id,\n AuthorizedClientId = authorized.ClientId,\n PermissionIds = new[]\n {\n \"00000000-0000-0000-0000-000000000000\",\n \"11111111-1111-1111-1111-111111111111\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tauthorized, err := azuread.NewApplicationRegistration(ctx, \"authorized\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example-authorized-app\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tauthorizer, err := azuread.NewApplication(ctx, \"authorizer\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example-authorizing-app\"),\n\t\t\tApi: \u0026azuread.ApplicationApiArgs{\n\t\t\t\tOauth2PermissionScopes: azuread.ApplicationApiOauth2PermissionScopeArray{\n\t\t\t\t\t\u0026azuread.ApplicationApiOauth2PermissionScopeArgs{\n\t\t\t\t\t\tAdminConsentDescription: pulumi.String(\"Administer the application\"),\n\t\t\t\t\t\tAdminConsentDisplayName: pulumi.String(\"Administer\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tId: pulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\t\t\t\tType: pulumi.String(\"Admin\"),\n\t\t\t\t\t\tValue: pulumi.String(\"administer\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026azuread.ApplicationApiOauth2PermissionScopeArgs{\n\t\t\t\t\t\tAdminConsentDescription: pulumi.String(\"Access the application\"),\n\t\t\t\t\t\tAdminConsentDisplayName: pulumi.String(\"Access\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tId: pulumi.String(\"11111111-1111-1111-1111-111111111111\"),\n\t\t\t\t\t\tType: pulumi.String(\"User\"),\n\t\t\t\t\t\tUserConsentDescription: pulumi.String(\"Access the application\"),\n\t\t\t\t\t\tUserConsentDisplayName: pulumi.String(\"Access\"),\n\t\t\t\t\t\tValue: pulumi.String(\"user_impersonation\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPreAuthorized(ctx, \"example\", \u0026azuread.ApplicationPreAuthorizedArgs{\n\t\t\tApplicationId: authorizer.ID(),\n\t\t\tAuthorizedClientId: authorized.ClientId,\n\t\t\tPermissionIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\t\tpulumi.String(\"11111111-1111-1111-1111-111111111111\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationApiArgs;\nimport com.pulumi.azuread.ApplicationPreAuthorized;\nimport com.pulumi.azuread.ApplicationPreAuthorizedArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var authorized = new ApplicationRegistration(\"authorized\", ApplicationRegistrationArgs.builder()\n .displayName(\"example-authorized-app\")\n .build());\n\n var authorizer = new Application(\"authorizer\", ApplicationArgs.builder()\n .displayName(\"example-authorizing-app\")\n .api(ApplicationApiArgs.builder()\n .oauth2PermissionScopes( \n ApplicationApiOauth2PermissionScopeArgs.builder()\n .adminConsentDescription(\"Administer the application\")\n .adminConsentDisplayName(\"Administer\")\n .enabled(true)\n .id(\"00000000-0000-0000-0000-000000000000\")\n .type(\"Admin\")\n .value(\"administer\")\n .build(),\n ApplicationApiOauth2PermissionScopeArgs.builder()\n .adminConsentDescription(\"Access the application\")\n .adminConsentDisplayName(\"Access\")\n .enabled(true)\n .id(\"11111111-1111-1111-1111-111111111111\")\n .type(\"User\")\n .userConsentDescription(\"Access the application\")\n .userConsentDisplayName(\"Access\")\n .value(\"user_impersonation\")\n .build())\n .build())\n .build());\n\n var example = new ApplicationPreAuthorized(\"example\", ApplicationPreAuthorizedArgs.builder()\n .applicationId(authorizer.id())\n .authorizedClientId(authorized.clientId())\n .permissionIds( \n \"00000000-0000-0000-0000-000000000000\",\n \"11111111-1111-1111-1111-111111111111\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n authorized:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example-authorized-app\n authorizer:\n type: azuread:Application\n properties:\n displayName: example-authorizing-app\n api:\n oauth2PermissionScopes:\n - adminConsentDescription: Administer the application\n adminConsentDisplayName: Administer\n enabled: true\n id: 00000000-0000-0000-0000-000000000000\n type: Admin\n value: administer\n - adminConsentDescription: Access the application\n adminConsentDisplayName: Access\n enabled: true\n id: 11111111-1111-1111-1111-111111111111\n type: User\n userConsentDescription: Access the application\n userConsentDisplayName: Access\n value: user_impersonation\n example:\n type: azuread:ApplicationPreAuthorized\n properties:\n applicationId: ${authorizer.id}\n authorizedClientId: ${authorized.clientId}\n permissionIds:\n - 00000000-0000-0000-0000-000000000000\n - 11111111-1111-1111-1111-111111111111\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nPre-authorized applications can be imported using the object ID of the authorizing application and the application ID of the application being authorized, e.g.\n\n```sh\n$ pulumi import azuread:index/applicationPreAuthorized:ApplicationPreAuthorized example 00000000-0000-0000-0000-000000000000/preAuthorizedApplication/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the authorizing application's object ID, the string \"preAuthorizedApplication\" and the authorized application's application ID (client ID) in the format `{ObjectId}/preAuthorizedApplication/{ApplicationId}`.\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst authorized = new azuread.ApplicationRegistration(\"authorized\", {displayName: \"example-authorized-app\"});\nconst authorizer = new azuread.Application(\"authorizer\", {\n displayName: \"example-authorizing-app\",\n api: {\n oauth2PermissionScopes: [\n {\n adminConsentDescription: \"Administer the application\",\n adminConsentDisplayName: \"Administer\",\n enabled: true,\n id: \"00000000-0000-0000-0000-000000000000\",\n type: \"Admin\",\n value: \"administer\",\n },\n {\n adminConsentDescription: \"Access the application\",\n adminConsentDisplayName: \"Access\",\n enabled: true,\n id: \"11111111-1111-1111-1111-111111111111\",\n type: \"User\",\n userConsentDescription: \"Access the application\",\n userConsentDisplayName: \"Access\",\n value: \"user_impersonation\",\n },\n ],\n },\n});\nconst example = new azuread.ApplicationPreAuthorized(\"example\", {\n applicationId: authorizer.id,\n authorizedClientId: authorized.clientId,\n permissionIds: [\n \"00000000-0000-0000-0000-000000000000\",\n \"11111111-1111-1111-1111-111111111111\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nauthorized = azuread.ApplicationRegistration(\"authorized\", display_name=\"example-authorized-app\")\nauthorizer = azuread.Application(\"authorizer\",\n display_name=\"example-authorizing-app\",\n api={\n \"oauth2_permission_scopes\": [\n {\n \"admin_consent_description\": \"Administer the application\",\n \"admin_consent_display_name\": \"Administer\",\n \"enabled\": True,\n \"id\": \"00000000-0000-0000-0000-000000000000\",\n \"type\": \"Admin\",\n \"value\": \"administer\",\n },\n {\n \"admin_consent_description\": \"Access the application\",\n \"admin_consent_display_name\": \"Access\",\n \"enabled\": True,\n \"id\": \"11111111-1111-1111-1111-111111111111\",\n \"type\": \"User\",\n \"user_consent_description\": \"Access the application\",\n \"user_consent_display_name\": \"Access\",\n \"value\": \"user_impersonation\",\n },\n ],\n })\nexample = azuread.ApplicationPreAuthorized(\"example\",\n application_id=authorizer.id,\n authorized_client_id=authorized.client_id,\n permission_ids=[\n \"00000000-0000-0000-0000-000000000000\",\n \"11111111-1111-1111-1111-111111111111\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var authorized = new AzureAD.ApplicationRegistration(\"authorized\", new()\n {\n DisplayName = \"example-authorized-app\",\n });\n\n var authorizer = new AzureAD.Application(\"authorizer\", new()\n {\n DisplayName = \"example-authorizing-app\",\n Api = new AzureAD.Inputs.ApplicationApiArgs\n {\n Oauth2PermissionScopes = new[]\n {\n new AzureAD.Inputs.ApplicationApiOauth2PermissionScopeArgs\n {\n AdminConsentDescription = \"Administer the application\",\n AdminConsentDisplayName = \"Administer\",\n Enabled = true,\n Id = \"00000000-0000-0000-0000-000000000000\",\n Type = \"Admin\",\n Value = \"administer\",\n },\n new AzureAD.Inputs.ApplicationApiOauth2PermissionScopeArgs\n {\n AdminConsentDescription = \"Access the application\",\n AdminConsentDisplayName = \"Access\",\n Enabled = true,\n Id = \"11111111-1111-1111-1111-111111111111\",\n Type = \"User\",\n UserConsentDescription = \"Access the application\",\n UserConsentDisplayName = \"Access\",\n Value = \"user_impersonation\",\n },\n },\n },\n });\n\n var example = new AzureAD.ApplicationPreAuthorized(\"example\", new()\n {\n ApplicationId = authorizer.Id,\n AuthorizedClientId = authorized.ClientId,\n PermissionIds = new[]\n {\n \"00000000-0000-0000-0000-000000000000\",\n \"11111111-1111-1111-1111-111111111111\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tauthorized, err := azuread.NewApplicationRegistration(ctx, \"authorized\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example-authorized-app\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tauthorizer, err := azuread.NewApplication(ctx, \"authorizer\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example-authorizing-app\"),\n\t\t\tApi: \u0026azuread.ApplicationApiArgs{\n\t\t\t\tOauth2PermissionScopes: azuread.ApplicationApiOauth2PermissionScopeArray{\n\t\t\t\t\t\u0026azuread.ApplicationApiOauth2PermissionScopeArgs{\n\t\t\t\t\t\tAdminConsentDescription: pulumi.String(\"Administer the application\"),\n\t\t\t\t\t\tAdminConsentDisplayName: pulumi.String(\"Administer\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tId: pulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\t\t\t\tType: pulumi.String(\"Admin\"),\n\t\t\t\t\t\tValue: pulumi.String(\"administer\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026azuread.ApplicationApiOauth2PermissionScopeArgs{\n\t\t\t\t\t\tAdminConsentDescription: pulumi.String(\"Access the application\"),\n\t\t\t\t\t\tAdminConsentDisplayName: pulumi.String(\"Access\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tId: pulumi.String(\"11111111-1111-1111-1111-111111111111\"),\n\t\t\t\t\t\tType: pulumi.String(\"User\"),\n\t\t\t\t\t\tUserConsentDescription: pulumi.String(\"Access the application\"),\n\t\t\t\t\t\tUserConsentDisplayName: pulumi.String(\"Access\"),\n\t\t\t\t\t\tValue: pulumi.String(\"user_impersonation\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationPreAuthorized(ctx, \"example\", \u0026azuread.ApplicationPreAuthorizedArgs{\n\t\t\tApplicationId: authorizer.ID(),\n\t\t\tAuthorizedClientId: authorized.ClientId,\n\t\t\tPermissionIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\t\tpulumi.String(\"11111111-1111-1111-1111-111111111111\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationApiArgs;\nimport com.pulumi.azuread.ApplicationPreAuthorized;\nimport com.pulumi.azuread.ApplicationPreAuthorizedArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var authorized = new ApplicationRegistration(\"authorized\", ApplicationRegistrationArgs.builder()\n .displayName(\"example-authorized-app\")\n .build());\n\n var authorizer = new Application(\"authorizer\", ApplicationArgs.builder()\n .displayName(\"example-authorizing-app\")\n .api(ApplicationApiArgs.builder()\n .oauth2PermissionScopes( \n ApplicationApiOauth2PermissionScopeArgs.builder()\n .adminConsentDescription(\"Administer the application\")\n .adminConsentDisplayName(\"Administer\")\n .enabled(true)\n .id(\"00000000-0000-0000-0000-000000000000\")\n .type(\"Admin\")\n .value(\"administer\")\n .build(),\n ApplicationApiOauth2PermissionScopeArgs.builder()\n .adminConsentDescription(\"Access the application\")\n .adminConsentDisplayName(\"Access\")\n .enabled(true)\n .id(\"11111111-1111-1111-1111-111111111111\")\n .type(\"User\")\n .userConsentDescription(\"Access the application\")\n .userConsentDisplayName(\"Access\")\n .value(\"user_impersonation\")\n .build())\n .build())\n .build());\n\n var example = new ApplicationPreAuthorized(\"example\", ApplicationPreAuthorizedArgs.builder()\n .applicationId(authorizer.id())\n .authorizedClientId(authorized.clientId())\n .permissionIds( \n \"00000000-0000-0000-0000-000000000000\",\n \"11111111-1111-1111-1111-111111111111\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n authorized:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example-authorized-app\n authorizer:\n type: azuread:Application\n properties:\n displayName: example-authorizing-app\n api:\n oauth2PermissionScopes:\n - adminConsentDescription: Administer the application\n adminConsentDisplayName: Administer\n enabled: true\n id: 00000000-0000-0000-0000-000000000000\n type: Admin\n value: administer\n - adminConsentDescription: Access the application\n adminConsentDisplayName: Access\n enabled: true\n id: 11111111-1111-1111-1111-111111111111\n type: User\n userConsentDescription: Access the application\n userConsentDisplayName: Access\n value: user_impersonation\n example:\n type: azuread:ApplicationPreAuthorized\n properties:\n applicationId: ${authorizer.id}\n authorizedClientId: ${authorized.clientId}\n permissionIds:\n - 00000000-0000-0000-0000-000000000000\n - 11111111-1111-1111-1111-111111111111\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nPre-authorized applications can be imported using the object ID of the authorizing application and the application ID of the application being authorized, e.g.\n\n```sh\n$ pulumi import azuread:index/applicationPreAuthorized:ApplicationPreAuthorized example 00000000-0000-0000-0000-000000000000/preAuthorizedApplication/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the authorizing application's object ID, the string \"preAuthorizedApplication\" and the authorized application's application ID (client ID) in the format `{ObjectId}/preAuthorizedApplication/{ApplicationId}`.\n\n", "properties": { "applicationId": { "type": "string", "description": "The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created.\n" }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application to which this pre-authorized application should be added\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider" - }, - "authorizedAppId": { - "type": "string", - "description": "The application ID of the pre-authorized application\n", - "deprecationMessage": "The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider" - }, "authorizedClientId": { "type": "string", "description": "The client ID of the application being authorized. Changing this field forces a new resource to be created.\n" @@ -5719,8 +5649,6 @@ }, "required": [ "applicationId", - "applicationObjectId", - "authorizedAppId", "authorizedClientId", "permissionIds" ], @@ -5730,18 +5658,6 @@ "description": "The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application to which this pre-authorized application should be added\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, - "authorizedAppId": { - "type": "string", - "description": "The application ID of the pre-authorized application\n", - "deprecationMessage": "The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "authorizedClientId": { "type": "string", "description": "The client ID of the application being authorized. Changing this field forces a new resource to be created.\n", @@ -5756,6 +5672,8 @@ } }, "requiredInputs": [ + "applicationId", + "authorizedClientId", "permissionIds" ], "stateInputs": { @@ -5766,18 +5684,6 @@ "description": "The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "applicationObjectId": { - "type": "string", - "description": "The object ID of the application to which this pre-authorized application should be added\n", - "deprecationMessage": "The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, - "authorizedAppId": { - "type": "string", - "description": "The application ID of the pre-authorized application\n", - "deprecationMessage": "The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "authorizedClientId": { "type": "string", "description": "The client ID of the application being authorized. Changing this field forces a new resource to be created.\n", @@ -5795,7 +5701,7 @@ } }, "azuread:index/applicationRedirectUris:ApplicationRedirectUris": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst examplePublic = new azuread.ApplicationRedirectUris(\"example_public\", {\n applicationId: example.id,\n type: \"PublicClient\",\n redirectUris: [\n \"myapp://auth\",\n \"sample.mobile.app.bundie.id://auth\",\n \"https://login.microsoftonline.com/common/oauth2/nativeclient\",\n \"https://login.live.com/oauth20_desktop.srf\",\n \"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\",\n \"urn:ietf:wg:oauth:2.0:foo\",\n ],\n});\nconst exampleSpa = new azuread.ApplicationRedirectUris(\"example_spa\", {\n applicationId: example.id,\n type: \"SPA\",\n redirectUris: [\n \"https://mobile.hashitown.com/\",\n \"https://beta.hashitown.com/\",\n ],\n});\nconst exampleWeb = new azuread.ApplicationRedirectUris(\"example_web\", {\n applicationId: example.id,\n type: \"Web\",\n redirectUris: [\n \"https://app.hashitown.com/\",\n \"https://classic.hashitown.com/\",\n \"urn:ietf:wg:oauth:2.0:oob\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_public = azuread.ApplicationRedirectUris(\"example_public\",\n application_id=example.id,\n type=\"PublicClient\",\n redirect_uris=[\n \"myapp://auth\",\n \"sample.mobile.app.bundie.id://auth\",\n \"https://login.microsoftonline.com/common/oauth2/nativeclient\",\n \"https://login.live.com/oauth20_desktop.srf\",\n \"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\",\n \"urn:ietf:wg:oauth:2.0:foo\",\n ])\nexample_spa = azuread.ApplicationRedirectUris(\"example_spa\",\n application_id=example.id,\n type=\"SPA\",\n redirect_uris=[\n \"https://mobile.hashitown.com/\",\n \"https://beta.hashitown.com/\",\n ])\nexample_web = azuread.ApplicationRedirectUris(\"example_web\",\n application_id=example.id,\n type=\"Web\",\n redirect_uris=[\n \"https://app.hashitown.com/\",\n \"https://classic.hashitown.com/\",\n \"urn:ietf:wg:oauth:2.0:oob\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var examplePublic = new AzureAD.ApplicationRedirectUris(\"example_public\", new()\n {\n ApplicationId = example.Id,\n Type = \"PublicClient\",\n RedirectUris = new[]\n {\n \"myapp://auth\",\n \"sample.mobile.app.bundie.id://auth\",\n \"https://login.microsoftonline.com/common/oauth2/nativeclient\",\n \"https://login.live.com/oauth20_desktop.srf\",\n \"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\",\n \"urn:ietf:wg:oauth:2.0:foo\",\n },\n });\n\n var exampleSpa = new AzureAD.ApplicationRedirectUris(\"example_spa\", new()\n {\n ApplicationId = example.Id,\n Type = \"SPA\",\n RedirectUris = new[]\n {\n \"https://mobile.hashitown.com/\",\n \"https://beta.hashitown.com/\",\n },\n });\n\n var exampleWeb = new AzureAD.ApplicationRedirectUris(\"example_web\", new()\n {\n ApplicationId = example.Id,\n Type = \"Web\",\n RedirectUris = new[]\n {\n \"https://app.hashitown.com/\",\n \"https://classic.hashitown.com/\",\n \"urn:ietf:wg:oauth:2.0:oob\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationRedirectUris(ctx, \"example_public\", \u0026azuread.ApplicationRedirectUrisArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"PublicClient\"),\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"myapp://auth\"),\n\t\t\t\tpulumi.String(\"sample.mobile.app.bundie.id://auth\"),\n\t\t\t\tpulumi.String(\"https://login.microsoftonline.com/common/oauth2/nativeclient\"),\n\t\t\t\tpulumi.String(\"https://login.live.com/oauth20_desktop.srf\"),\n\t\t\t\tpulumi.String(\"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\"),\n\t\t\t\tpulumi.String(\"urn:ietf:wg:oauth:2.0:foo\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationRedirectUris(ctx, \"example_spa\", \u0026azuread.ApplicationRedirectUrisArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"SPA\"),\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://mobile.hashitown.com/\"),\n\t\t\t\tpulumi.String(\"https://beta.hashitown.com/\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationRedirectUris(ctx, \"example_web\", \u0026azuread.ApplicationRedirectUrisArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"Web\"),\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://app.hashitown.com/\"),\n\t\t\t\tpulumi.String(\"https://classic.hashitown.com/\"),\n\t\t\t\tpulumi.String(\"urn:ietf:wg:oauth:2.0:oob\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationRedirectUris;\nimport com.pulumi.azuread.ApplicationRedirectUrisArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var examplePublic = new ApplicationRedirectUris(\"examplePublic\", ApplicationRedirectUrisArgs.builder()\n .applicationId(example.id())\n .type(\"PublicClient\")\n .redirectUris( \n \"myapp://auth\",\n \"sample.mobile.app.bundie.id://auth\",\n \"https://login.microsoftonline.com/common/oauth2/nativeclient\",\n \"https://login.live.com/oauth20_desktop.srf\",\n \"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\",\n \"urn:ietf:wg:oauth:2.0:foo\")\n .build());\n\n var exampleSpa = new ApplicationRedirectUris(\"exampleSpa\", ApplicationRedirectUrisArgs.builder()\n .applicationId(example.id())\n .type(\"SPA\")\n .redirectUris( \n \"https://mobile.hashitown.com/\",\n \"https://beta.hashitown.com/\")\n .build());\n\n var exampleWeb = new ApplicationRedirectUris(\"exampleWeb\", ApplicationRedirectUrisArgs.builder()\n .applicationId(example.id())\n .type(\"Web\")\n .redirectUris( \n \"https://app.hashitown.com/\",\n \"https://classic.hashitown.com/\",\n \"urn:ietf:wg:oauth:2.0:oob\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n examplePublic:\n type: azuread:ApplicationRedirectUris\n name: example_public\n properties:\n applicationId: ${example.id}\n type: PublicClient\n redirectUris:\n - myapp://auth\n - sample.mobile.app.bundie.id://auth\n - https://login.microsoftonline.com/common/oauth2/nativeclient\n - https://login.live.com/oauth20_desktop.srf\n - ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\n - urn:ietf:wg:oauth:2.0:foo\n exampleSpa:\n type: azuread:ApplicationRedirectUris\n name: example_spa\n properties:\n applicationId: ${example.id}\n type: SPA\n redirectUris:\n - https://mobile.hashitown.com/\n - https://beta.hashitown.com/\n exampleWeb:\n type: azuread:ApplicationRedirectUris\n name: example_web\n properties:\n applicationId: ${example.id}\n type: Web\n redirectUris:\n - https://app.hashitown.com/\n - https://classic.hashitown.com/\n - urn:ietf:wg:oauth:2.0:oob\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication API Access can be imported using the object ID of the application and the URI type, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationRedirectUris:ApplicationRedirectUris example /applications/00000000-0000-0000-0000-000000000000/redirectUris/Web\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {displayName: \"example\"});\nconst examplePublic = new azuread.ApplicationRedirectUris(\"example_public\", {\n applicationId: example.id,\n type: \"PublicClient\",\n redirectUris: [\n \"myapp://auth\",\n \"sample.mobile.app.bundie.id://auth\",\n \"https://login.microsoftonline.com/common/oauth2/nativeclient\",\n \"https://login.live.com/oauth20_desktop.srf\",\n \"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\",\n \"urn:ietf:wg:oauth:2.0:foo\",\n ],\n});\nconst exampleSpa = new azuread.ApplicationRedirectUris(\"example_spa\", {\n applicationId: example.id,\n type: \"SPA\",\n redirectUris: [\n \"https://mobile.hashitown.com/\",\n \"https://beta.hashitown.com/\",\n ],\n});\nconst exampleWeb = new azuread.ApplicationRedirectUris(\"example_web\", {\n applicationId: example.id,\n type: \"Web\",\n redirectUris: [\n \"https://app.hashitown.com/\",\n \"https://classic.hashitown.com/\",\n \"urn:ietf:wg:oauth:2.0:oob\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\", display_name=\"example\")\nexample_public = azuread.ApplicationRedirectUris(\"example_public\",\n application_id=example.id,\n type=\"PublicClient\",\n redirect_uris=[\n \"myapp://auth\",\n \"sample.mobile.app.bundie.id://auth\",\n \"https://login.microsoftonline.com/common/oauth2/nativeclient\",\n \"https://login.live.com/oauth20_desktop.srf\",\n \"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\",\n \"urn:ietf:wg:oauth:2.0:foo\",\n ])\nexample_spa = azuread.ApplicationRedirectUris(\"example_spa\",\n application_id=example.id,\n type=\"SPA\",\n redirect_uris=[\n \"https://mobile.hashitown.com/\",\n \"https://beta.hashitown.com/\",\n ])\nexample_web = azuread.ApplicationRedirectUris(\"example_web\",\n application_id=example.id,\n type=\"Web\",\n redirect_uris=[\n \"https://app.hashitown.com/\",\n \"https://classic.hashitown.com/\",\n \"urn:ietf:wg:oauth:2.0:oob\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var examplePublic = new AzureAD.ApplicationRedirectUris(\"example_public\", new()\n {\n ApplicationId = example.Id,\n Type = \"PublicClient\",\n RedirectUris = new[]\n {\n \"myapp://auth\",\n \"sample.mobile.app.bundie.id://auth\",\n \"https://login.microsoftonline.com/common/oauth2/nativeclient\",\n \"https://login.live.com/oauth20_desktop.srf\",\n \"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\",\n \"urn:ietf:wg:oauth:2.0:foo\",\n },\n });\n\n var exampleSpa = new AzureAD.ApplicationRedirectUris(\"example_spa\", new()\n {\n ApplicationId = example.Id,\n Type = \"SPA\",\n RedirectUris = new[]\n {\n \"https://mobile.hashitown.com/\",\n \"https://beta.hashitown.com/\",\n },\n });\n\n var exampleWeb = new AzureAD.ApplicationRedirectUris(\"example_web\", new()\n {\n ApplicationId = example.Id,\n Type = \"Web\",\n RedirectUris = new[]\n {\n \"https://app.hashitown.com/\",\n \"https://classic.hashitown.com/\",\n \"urn:ietf:wg:oauth:2.0:oob\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationRedirectUris(ctx, \"example_public\", \u0026azuread.ApplicationRedirectUrisArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"PublicClient\"),\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"myapp://auth\"),\n\t\t\t\tpulumi.String(\"sample.mobile.app.bundie.id://auth\"),\n\t\t\t\tpulumi.String(\"https://login.microsoftonline.com/common/oauth2/nativeclient\"),\n\t\t\t\tpulumi.String(\"https://login.live.com/oauth20_desktop.srf\"),\n\t\t\t\tpulumi.String(\"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\"),\n\t\t\t\tpulumi.String(\"urn:ietf:wg:oauth:2.0:foo\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationRedirectUris(ctx, \"example_spa\", \u0026azuread.ApplicationRedirectUrisArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"SPA\"),\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://mobile.hashitown.com/\"),\n\t\t\t\tpulumi.String(\"https://beta.hashitown.com/\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplicationRedirectUris(ctx, \"example_web\", \u0026azuread.ApplicationRedirectUrisArgs{\n\t\t\tApplicationId: example.ID(),\n\t\t\tType: pulumi.String(\"Web\"),\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://app.hashitown.com/\"),\n\t\t\t\tpulumi.String(\"https://classic.hashitown.com/\"),\n\t\t\t\tpulumi.String(\"urn:ietf:wg:oauth:2.0:oob\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport com.pulumi.azuread.ApplicationRedirectUris;\nimport com.pulumi.azuread.ApplicationRedirectUrisArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var examplePublic = new ApplicationRedirectUris(\"examplePublic\", ApplicationRedirectUrisArgs.builder()\n .applicationId(example.id())\n .type(\"PublicClient\")\n .redirectUris( \n \"myapp://auth\",\n \"sample.mobile.app.bundie.id://auth\",\n \"https://login.microsoftonline.com/common/oauth2/nativeclient\",\n \"https://login.live.com/oauth20_desktop.srf\",\n \"ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\",\n \"urn:ietf:wg:oauth:2.0:foo\")\n .build());\n\n var exampleSpa = new ApplicationRedirectUris(\"exampleSpa\", ApplicationRedirectUrisArgs.builder()\n .applicationId(example.id())\n .type(\"SPA\")\n .redirectUris( \n \"https://mobile.hashitown.com/\",\n \"https://beta.hashitown.com/\")\n .build());\n\n var exampleWeb = new ApplicationRedirectUris(\"exampleWeb\", ApplicationRedirectUrisArgs.builder()\n .applicationId(example.id())\n .type(\"Web\")\n .redirectUris( \n \"https://app.hashitown.com/\",\n \"https://classic.hashitown.com/\",\n \"urn:ietf:wg:oauth:2.0:oob\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: example\n examplePublic:\n type: azuread:ApplicationRedirectUris\n name: example_public\n properties:\n applicationId: ${example.id}\n type: PublicClient\n redirectUris:\n - myapp://auth\n - sample.mobile.app.bundie.id://auth\n - https://login.microsoftonline.com/common/oauth2/nativeclient\n - https://login.live.com/oauth20_desktop.srf\n - ms-appx-web://Microsoft.AAD.BrokerPlugin/00000000-1111-1111-1111-222222222222\n - urn:ietf:wg:oauth:2.0:foo\n exampleSpa:\n type: azuread:ApplicationRedirectUris\n name: example_spa\n properties:\n applicationId: ${example.id}\n type: SPA\n redirectUris:\n - https://mobile.hashitown.com/\n - https://beta.hashitown.com/\n exampleWeb:\n type: azuread:ApplicationRedirectUris\n name: example_web\n properties:\n applicationId: ${example.id}\n type: Web\n redirectUris:\n - https://app.hashitown.com/\n - https://classic.hashitown.com/\n - urn:ietf:wg:oauth:2.0:oob\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication API Access can be imported using the object ID of the application and the URI type, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationRedirectUris:ApplicationRedirectUris example /applications/00000000-0000-0000-0000-000000000000/redirectUris/Web\n```\n\n", "properties": { "applicationId": { "type": "string", @@ -5867,7 +5773,7 @@ } }, "azuread:index/applicationRegistration:ApplicationRegistration": { - "description": "Manages an application registration within Azure Active Directory.\n\nFor a more comprehensive alternative, please see the azuread.Application resource. Please note that this resource should not be used together with the `azuread.Application` resource when managing the same application.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Application.ReadWrite.OwnedBy` or `Application.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource may require one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {\n displayName: \"Example Application\",\n description: \"My example application\",\n signInAudience: \"AzureADMyOrg\",\n homepageUrl: \"https://app.hashitown.com/\",\n logoutUrl: \"https://app.hashitown.com/logout\",\n marketingUrl: \"https://hashitown.com/\",\n privacyStatementUrl: \"https://hashitown.com/privacy\",\n supportUrl: \"https://support.hashitown.com/\",\n termsOfServiceUrl: \"https://hashitown.com/terms\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\",\n display_name=\"Example Application\",\n description=\"My example application\",\n sign_in_audience=\"AzureADMyOrg\",\n homepage_url=\"https://app.hashitown.com/\",\n logout_url=\"https://app.hashitown.com/logout\",\n marketing_url=\"https://hashitown.com/\",\n privacy_statement_url=\"https://hashitown.com/privacy\",\n support_url=\"https://support.hashitown.com/\",\n terms_of_service_url=\"https://hashitown.com/terms\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"Example Application\",\n Description = \"My example application\",\n SignInAudience = \"AzureADMyOrg\",\n HomepageUrl = \"https://app.hashitown.com/\",\n LogoutUrl = \"https://app.hashitown.com/logout\",\n MarketingUrl = \"https://hashitown.com/\",\n PrivacyStatementUrl = \"https://hashitown.com/privacy\",\n SupportUrl = \"https://support.hashitown.com/\",\n TermsOfServiceUrl = \"https://hashitown.com/terms\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"Example Application\"),\n\t\t\tDescription: pulumi.String(\"My example application\"),\n\t\t\tSignInAudience: pulumi.String(\"AzureADMyOrg\"),\n\t\t\tHomepageUrl: pulumi.String(\"https://app.hashitown.com/\"),\n\t\t\tLogoutUrl: pulumi.String(\"https://app.hashitown.com/logout\"),\n\t\t\tMarketingUrl: pulumi.String(\"https://hashitown.com/\"),\n\t\t\tPrivacyStatementUrl: pulumi.String(\"https://hashitown.com/privacy\"),\n\t\t\tSupportUrl: pulumi.String(\"https://support.hashitown.com/\"),\n\t\t\tTermsOfServiceUrl: pulumi.String(\"https://hashitown.com/terms\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"Example Application\")\n .description(\"My example application\")\n .signInAudience(\"AzureADMyOrg\")\n .homepageUrl(\"https://app.hashitown.com/\")\n .logoutUrl(\"https://app.hashitown.com/logout\")\n .marketingUrl(\"https://hashitown.com/\")\n .privacyStatementUrl(\"https://hashitown.com/privacy\")\n .supportUrl(\"https://support.hashitown.com/\")\n .termsOfServiceUrl(\"https://hashitown.com/terms\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: Example Application\n description: My example application\n signInAudience: AzureADMyOrg\n homepageUrl: https://app.hashitown.com/\n logoutUrl: https://app.hashitown.com/logout\n marketingUrl: https://hashitown.com/\n privacyStatementUrl: https://hashitown.com/privacy\n supportUrl: https://support.hashitown.com/\n termsOfServiceUrl: https://hashitown.com/terms\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Registrations can be imported using the object ID of the application, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationRegistration:ApplicationRegistration example /applications/00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages an application registration within Azure Active Directory.\n\nFor a more comprehensive alternative, please see the azuread.Application resource. Please note that this resource should not be used together with the `azuread.Application` resource when managing the same application.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Application.ReadWrite.OwnedBy` or `Application.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource may require one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ApplicationRegistration(\"example\", {\n displayName: \"Example Application\",\n description: \"My example application\",\n signInAudience: \"AzureADMyOrg\",\n homepageUrl: \"https://app.hashitown.com/\",\n logoutUrl: \"https://app.hashitown.com/logout\",\n marketingUrl: \"https://hashitown.com/\",\n privacyStatementUrl: \"https://hashitown.com/privacy\",\n supportUrl: \"https://support.hashitown.com/\",\n termsOfServiceUrl: \"https://hashitown.com/terms\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ApplicationRegistration(\"example\",\n display_name=\"Example Application\",\n description=\"My example application\",\n sign_in_audience=\"AzureADMyOrg\",\n homepage_url=\"https://app.hashitown.com/\",\n logout_url=\"https://app.hashitown.com/logout\",\n marketing_url=\"https://hashitown.com/\",\n privacy_statement_url=\"https://hashitown.com/privacy\",\n support_url=\"https://support.hashitown.com/\",\n terms_of_service_url=\"https://hashitown.com/terms\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ApplicationRegistration(\"example\", new()\n {\n DisplayName = \"Example Application\",\n Description = \"My example application\",\n SignInAudience = \"AzureADMyOrg\",\n HomepageUrl = \"https://app.hashitown.com/\",\n LogoutUrl = \"https://app.hashitown.com/logout\",\n MarketingUrl = \"https://hashitown.com/\",\n PrivacyStatementUrl = \"https://hashitown.com/privacy\",\n SupportUrl = \"https://support.hashitown.com/\",\n TermsOfServiceUrl = \"https://hashitown.com/terms\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewApplicationRegistration(ctx, \"example\", \u0026azuread.ApplicationRegistrationArgs{\n\t\t\tDisplayName: pulumi.String(\"Example Application\"),\n\t\t\tDescription: pulumi.String(\"My example application\"),\n\t\t\tSignInAudience: pulumi.String(\"AzureADMyOrg\"),\n\t\t\tHomepageUrl: pulumi.String(\"https://app.hashitown.com/\"),\n\t\t\tLogoutUrl: pulumi.String(\"https://app.hashitown.com/logout\"),\n\t\t\tMarketingUrl: pulumi.String(\"https://hashitown.com/\"),\n\t\t\tPrivacyStatementUrl: pulumi.String(\"https://hashitown.com/privacy\"),\n\t\t\tSupportUrl: pulumi.String(\"https://support.hashitown.com/\"),\n\t\t\tTermsOfServiceUrl: pulumi.String(\"https://hashitown.com/terms\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ApplicationRegistration;\nimport com.pulumi.azuread.ApplicationRegistrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ApplicationRegistration(\"example\", ApplicationRegistrationArgs.builder()\n .displayName(\"Example Application\")\n .description(\"My example application\")\n .signInAudience(\"AzureADMyOrg\")\n .homepageUrl(\"https://app.hashitown.com/\")\n .logoutUrl(\"https://app.hashitown.com/logout\")\n .marketingUrl(\"https://hashitown.com/\")\n .privacyStatementUrl(\"https://hashitown.com/privacy\")\n .supportUrl(\"https://support.hashitown.com/\")\n .termsOfServiceUrl(\"https://hashitown.com/terms\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ApplicationRegistration\n properties:\n displayName: Example Application\n description: My example application\n signInAudience: AzureADMyOrg\n homepageUrl: https://app.hashitown.com/\n logoutUrl: https://app.hashitown.com/logout\n marketingUrl: https://hashitown.com/\n privacyStatementUrl: https://hashitown.com/privacy\n supportUrl: https://support.hashitown.com/\n termsOfServiceUrl: https://hashitown.com/terms\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Registrations can be imported using the object ID of the application, in the following format.\n\n```sh\n$ pulumi import azuread:index/applicationRegistration:ApplicationRegistration example /applications/00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "clientId": { "type": "string", @@ -6111,7 +6017,7 @@ } }, "azuread:index/authenticationStrengthPolicy:AuthenticationStrengthPolicy": { - "description": "Manages a Authentication Strength Policy within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application roles: `Policy.ReadWrite.ConditionalAccess` and `Policy.Read.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Conditional Access Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.AuthenticationStrengthPolicy(\"example\", {\n displayName: \"Example Authentication Strength Policy\",\n description: \"Policy for demo purposes\",\n allowedCombinations: [\n \"fido2\",\n \"password\",\n ],\n});\nconst example2 = new azuread.AuthenticationStrengthPolicy(\"example2\", {\n displayName: \"Example Authentication Strength Policy\",\n description: \"Policy for demo purposes with all possible combinations\",\n allowedCombinations: [\n \"fido2\",\n \"password\",\n \"deviceBasedPush\",\n \"temporaryAccessPassOneTime\",\n \"federatedMultiFactor\",\n \"federatedSingleFactor\",\n \"hardwareOath,federatedSingleFactor\",\n \"microsoftAuthenticatorPush,federatedSingleFactor\",\n \"password,hardwareOath\",\n \"password,microsoftAuthenticatorPush\",\n \"password,sms\",\n \"password,softwareOath\",\n \"password,voice\",\n \"sms\",\n \"sms,federatedSingleFactor\",\n \"softwareOath,federatedSingleFactor\",\n \"temporaryAccessPassMultiUse\",\n \"voice,federatedSingleFactor\",\n \"windowsHelloForBusiness\",\n \"x509CertificateMultiFactor\",\n \"x509CertificateSingleFactor\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.AuthenticationStrengthPolicy(\"example\",\n display_name=\"Example Authentication Strength Policy\",\n description=\"Policy for demo purposes\",\n allowed_combinations=[\n \"fido2\",\n \"password\",\n ])\nexample2 = azuread.AuthenticationStrengthPolicy(\"example2\",\n display_name=\"Example Authentication Strength Policy\",\n description=\"Policy for demo purposes with all possible combinations\",\n allowed_combinations=[\n \"fido2\",\n \"password\",\n \"deviceBasedPush\",\n \"temporaryAccessPassOneTime\",\n \"federatedMultiFactor\",\n \"federatedSingleFactor\",\n \"hardwareOath,federatedSingleFactor\",\n \"microsoftAuthenticatorPush,federatedSingleFactor\",\n \"password,hardwareOath\",\n \"password,microsoftAuthenticatorPush\",\n \"password,sms\",\n \"password,softwareOath\",\n \"password,voice\",\n \"sms\",\n \"sms,federatedSingleFactor\",\n \"softwareOath,federatedSingleFactor\",\n \"temporaryAccessPassMultiUse\",\n \"voice,federatedSingleFactor\",\n \"windowsHelloForBusiness\",\n \"x509CertificateMultiFactor\",\n \"x509CertificateSingleFactor\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.AuthenticationStrengthPolicy(\"example\", new()\n {\n DisplayName = \"Example Authentication Strength Policy\",\n Description = \"Policy for demo purposes\",\n AllowedCombinations = new[]\n {\n \"fido2\",\n \"password\",\n },\n });\n\n var example2 = new AzureAD.AuthenticationStrengthPolicy(\"example2\", new()\n {\n DisplayName = \"Example Authentication Strength Policy\",\n Description = \"Policy for demo purposes with all possible combinations\",\n AllowedCombinations = new[]\n {\n \"fido2\",\n \"password\",\n \"deviceBasedPush\",\n \"temporaryAccessPassOneTime\",\n \"federatedMultiFactor\",\n \"federatedSingleFactor\",\n \"hardwareOath,federatedSingleFactor\",\n \"microsoftAuthenticatorPush,federatedSingleFactor\",\n \"password,hardwareOath\",\n \"password,microsoftAuthenticatorPush\",\n \"password,sms\",\n \"password,softwareOath\",\n \"password,voice\",\n \"sms\",\n \"sms,federatedSingleFactor\",\n \"softwareOath,federatedSingleFactor\",\n \"temporaryAccessPassMultiUse\",\n \"voice,federatedSingleFactor\",\n \"windowsHelloForBusiness\",\n \"x509CertificateMultiFactor\",\n \"x509CertificateSingleFactor\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewAuthenticationStrengthPolicy(ctx, \"example\", \u0026azuread.AuthenticationStrengthPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"Example Authentication Strength Policy\"),\n\t\t\tDescription: pulumi.String(\"Policy for demo purposes\"),\n\t\t\tAllowedCombinations: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"fido2\"),\n\t\t\t\tpulumi.String(\"password\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAuthenticationStrengthPolicy(ctx, \"example2\", \u0026azuread.AuthenticationStrengthPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"Example Authentication Strength Policy\"),\n\t\t\tDescription: pulumi.String(\"Policy for demo purposes with all possible combinations\"),\n\t\t\tAllowedCombinations: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"fido2\"),\n\t\t\t\tpulumi.String(\"password\"),\n\t\t\t\tpulumi.String(\"deviceBasedPush\"),\n\t\t\t\tpulumi.String(\"temporaryAccessPassOneTime\"),\n\t\t\t\tpulumi.String(\"federatedMultiFactor\"),\n\t\t\t\tpulumi.String(\"federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"hardwareOath,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"microsoftAuthenticatorPush,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"password,hardwareOath\"),\n\t\t\t\tpulumi.String(\"password,microsoftAuthenticatorPush\"),\n\t\t\t\tpulumi.String(\"password,sms\"),\n\t\t\t\tpulumi.String(\"password,softwareOath\"),\n\t\t\t\tpulumi.String(\"password,voice\"),\n\t\t\t\tpulumi.String(\"sms\"),\n\t\t\t\tpulumi.String(\"sms,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"softwareOath,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"temporaryAccessPassMultiUse\"),\n\t\t\t\tpulumi.String(\"voice,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"windowsHelloForBusiness\"),\n\t\t\t\tpulumi.String(\"x509CertificateMultiFactor\"),\n\t\t\t\tpulumi.String(\"x509CertificateSingleFactor\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AuthenticationStrengthPolicy;\nimport com.pulumi.azuread.AuthenticationStrengthPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthenticationStrengthPolicy(\"example\", AuthenticationStrengthPolicyArgs.builder()\n .displayName(\"Example Authentication Strength Policy\")\n .description(\"Policy for demo purposes\")\n .allowedCombinations( \n \"fido2\",\n \"password\")\n .build());\n\n var example2 = new AuthenticationStrengthPolicy(\"example2\", AuthenticationStrengthPolicyArgs.builder()\n .displayName(\"Example Authentication Strength Policy\")\n .description(\"Policy for demo purposes with all possible combinations\")\n .allowedCombinations( \n \"fido2\",\n \"password\",\n \"deviceBasedPush\",\n \"temporaryAccessPassOneTime\",\n \"federatedMultiFactor\",\n \"federatedSingleFactor\",\n \"hardwareOath,federatedSingleFactor\",\n \"microsoftAuthenticatorPush,federatedSingleFactor\",\n \"password,hardwareOath\",\n \"password,microsoftAuthenticatorPush\",\n \"password,sms\",\n \"password,softwareOath\",\n \"password,voice\",\n \"sms\",\n \"sms,federatedSingleFactor\",\n \"softwareOath,federatedSingleFactor\",\n \"temporaryAccessPassMultiUse\",\n \"voice,federatedSingleFactor\",\n \"windowsHelloForBusiness\",\n \"x509CertificateMultiFactor\",\n \"x509CertificateSingleFactor\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:AuthenticationStrengthPolicy\n properties:\n displayName: Example Authentication Strength Policy\n description: Policy for demo purposes\n allowedCombinations:\n - fido2\n - password\n example2:\n type: azuread:AuthenticationStrengthPolicy\n properties:\n displayName: Example Authentication Strength Policy\n description: Policy for demo purposes with all possible combinations\n allowedCombinations:\n - fido2\n - password\n - deviceBasedPush\n - temporaryAccessPassOneTime\n - federatedMultiFactor\n - federatedSingleFactor\n - hardwareOath,federatedSingleFactor\n - microsoftAuthenticatorPush,federatedSingleFactor\n - password,hardwareOath\n - password,microsoftAuthenticatorPush\n - password,sms\n - password,softwareOath\n - password,voice\n - sms\n - sms,federatedSingleFactor\n - softwareOath,federatedSingleFactor\n - temporaryAccessPassMultiUse\n - voice,federatedSingleFactor\n - windowsHelloForBusiness\n - x509CertificateMultiFactor\n - x509CertificateSingleFactor\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAuthentication Strength Policies can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/authenticationStrengthPolicy:AuthenticationStrengthPolicy my_policy 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages a Authentication Strength Policy within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application roles: `Policy.ReadWrite.ConditionalAccess` and `Policy.Read.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Conditional Access Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.AuthenticationStrengthPolicy(\"example\", {\n displayName: \"Example Authentication Strength Policy\",\n description: \"Policy for demo purposes\",\n allowedCombinations: [\n \"fido2\",\n \"password\",\n ],\n});\nconst example2 = new azuread.AuthenticationStrengthPolicy(\"example2\", {\n displayName: \"Example Authentication Strength Policy\",\n description: \"Policy for demo purposes with all possible combinations\",\n allowedCombinations: [\n \"fido2\",\n \"password\",\n \"deviceBasedPush\",\n \"temporaryAccessPassOneTime\",\n \"federatedMultiFactor\",\n \"federatedSingleFactor\",\n \"hardwareOath,federatedSingleFactor\",\n \"microsoftAuthenticatorPush,federatedSingleFactor\",\n \"password,hardwareOath\",\n \"password,microsoftAuthenticatorPush\",\n \"password,sms\",\n \"password,softwareOath\",\n \"password,voice\",\n \"sms\",\n \"sms,federatedSingleFactor\",\n \"softwareOath,federatedSingleFactor\",\n \"temporaryAccessPassMultiUse\",\n \"voice,federatedSingleFactor\",\n \"windowsHelloForBusiness\",\n \"x509CertificateMultiFactor\",\n \"x509CertificateSingleFactor\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.AuthenticationStrengthPolicy(\"example\",\n display_name=\"Example Authentication Strength Policy\",\n description=\"Policy for demo purposes\",\n allowed_combinations=[\n \"fido2\",\n \"password\",\n ])\nexample2 = azuread.AuthenticationStrengthPolicy(\"example2\",\n display_name=\"Example Authentication Strength Policy\",\n description=\"Policy for demo purposes with all possible combinations\",\n allowed_combinations=[\n \"fido2\",\n \"password\",\n \"deviceBasedPush\",\n \"temporaryAccessPassOneTime\",\n \"federatedMultiFactor\",\n \"federatedSingleFactor\",\n \"hardwareOath,federatedSingleFactor\",\n \"microsoftAuthenticatorPush,federatedSingleFactor\",\n \"password,hardwareOath\",\n \"password,microsoftAuthenticatorPush\",\n \"password,sms\",\n \"password,softwareOath\",\n \"password,voice\",\n \"sms\",\n \"sms,federatedSingleFactor\",\n \"softwareOath,federatedSingleFactor\",\n \"temporaryAccessPassMultiUse\",\n \"voice,federatedSingleFactor\",\n \"windowsHelloForBusiness\",\n \"x509CertificateMultiFactor\",\n \"x509CertificateSingleFactor\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.AuthenticationStrengthPolicy(\"example\", new()\n {\n DisplayName = \"Example Authentication Strength Policy\",\n Description = \"Policy for demo purposes\",\n AllowedCombinations = new[]\n {\n \"fido2\",\n \"password\",\n },\n });\n\n var example2 = new AzureAD.AuthenticationStrengthPolicy(\"example2\", new()\n {\n DisplayName = \"Example Authentication Strength Policy\",\n Description = \"Policy for demo purposes with all possible combinations\",\n AllowedCombinations = new[]\n {\n \"fido2\",\n \"password\",\n \"deviceBasedPush\",\n \"temporaryAccessPassOneTime\",\n \"federatedMultiFactor\",\n \"federatedSingleFactor\",\n \"hardwareOath,federatedSingleFactor\",\n \"microsoftAuthenticatorPush,federatedSingleFactor\",\n \"password,hardwareOath\",\n \"password,microsoftAuthenticatorPush\",\n \"password,sms\",\n \"password,softwareOath\",\n \"password,voice\",\n \"sms\",\n \"sms,federatedSingleFactor\",\n \"softwareOath,federatedSingleFactor\",\n \"temporaryAccessPassMultiUse\",\n \"voice,federatedSingleFactor\",\n \"windowsHelloForBusiness\",\n \"x509CertificateMultiFactor\",\n \"x509CertificateSingleFactor\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewAuthenticationStrengthPolicy(ctx, \"example\", \u0026azuread.AuthenticationStrengthPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"Example Authentication Strength Policy\"),\n\t\t\tDescription: pulumi.String(\"Policy for demo purposes\"),\n\t\t\tAllowedCombinations: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"fido2\"),\n\t\t\t\tpulumi.String(\"password\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewAuthenticationStrengthPolicy(ctx, \"example2\", \u0026azuread.AuthenticationStrengthPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"Example Authentication Strength Policy\"),\n\t\t\tDescription: pulumi.String(\"Policy for demo purposes with all possible combinations\"),\n\t\t\tAllowedCombinations: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"fido2\"),\n\t\t\t\tpulumi.String(\"password\"),\n\t\t\t\tpulumi.String(\"deviceBasedPush\"),\n\t\t\t\tpulumi.String(\"temporaryAccessPassOneTime\"),\n\t\t\t\tpulumi.String(\"federatedMultiFactor\"),\n\t\t\t\tpulumi.String(\"federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"hardwareOath,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"microsoftAuthenticatorPush,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"password,hardwareOath\"),\n\t\t\t\tpulumi.String(\"password,microsoftAuthenticatorPush\"),\n\t\t\t\tpulumi.String(\"password,sms\"),\n\t\t\t\tpulumi.String(\"password,softwareOath\"),\n\t\t\t\tpulumi.String(\"password,voice\"),\n\t\t\t\tpulumi.String(\"sms\"),\n\t\t\t\tpulumi.String(\"sms,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"softwareOath,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"temporaryAccessPassMultiUse\"),\n\t\t\t\tpulumi.String(\"voice,federatedSingleFactor\"),\n\t\t\t\tpulumi.String(\"windowsHelloForBusiness\"),\n\t\t\t\tpulumi.String(\"x509CertificateMultiFactor\"),\n\t\t\t\tpulumi.String(\"x509CertificateSingleFactor\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AuthenticationStrengthPolicy;\nimport com.pulumi.azuread.AuthenticationStrengthPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthenticationStrengthPolicy(\"example\", AuthenticationStrengthPolicyArgs.builder()\n .displayName(\"Example Authentication Strength Policy\")\n .description(\"Policy for demo purposes\")\n .allowedCombinations( \n \"fido2\",\n \"password\")\n .build());\n\n var example2 = new AuthenticationStrengthPolicy(\"example2\", AuthenticationStrengthPolicyArgs.builder()\n .displayName(\"Example Authentication Strength Policy\")\n .description(\"Policy for demo purposes with all possible combinations\")\n .allowedCombinations( \n \"fido2\",\n \"password\",\n \"deviceBasedPush\",\n \"temporaryAccessPassOneTime\",\n \"federatedMultiFactor\",\n \"federatedSingleFactor\",\n \"hardwareOath,federatedSingleFactor\",\n \"microsoftAuthenticatorPush,federatedSingleFactor\",\n \"password,hardwareOath\",\n \"password,microsoftAuthenticatorPush\",\n \"password,sms\",\n \"password,softwareOath\",\n \"password,voice\",\n \"sms\",\n \"sms,federatedSingleFactor\",\n \"softwareOath,federatedSingleFactor\",\n \"temporaryAccessPassMultiUse\",\n \"voice,federatedSingleFactor\",\n \"windowsHelloForBusiness\",\n \"x509CertificateMultiFactor\",\n \"x509CertificateSingleFactor\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:AuthenticationStrengthPolicy\n properties:\n displayName: Example Authentication Strength Policy\n description: Policy for demo purposes\n allowedCombinations:\n - fido2\n - password\n example2:\n type: azuread:AuthenticationStrengthPolicy\n properties:\n displayName: Example Authentication Strength Policy\n description: Policy for demo purposes with all possible combinations\n allowedCombinations:\n - fido2\n - password\n - deviceBasedPush\n - temporaryAccessPassOneTime\n - federatedMultiFactor\n - federatedSingleFactor\n - hardwareOath,federatedSingleFactor\n - microsoftAuthenticatorPush,federatedSingleFactor\n - password,hardwareOath\n - password,microsoftAuthenticatorPush\n - password,sms\n - password,softwareOath\n - password,voice\n - sms\n - sms,federatedSingleFactor\n - softwareOath,federatedSingleFactor\n - temporaryAccessPassMultiUse\n - voice,federatedSingleFactor\n - windowsHelloForBusiness\n - x509CertificateMultiFactor\n - x509CertificateSingleFactor\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAuthentication Strength Policies can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/authenticationStrengthPolicy:AuthenticationStrengthPolicy my_policy 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "allowedCombinations": { "type": "array", @@ -6177,7 +6083,7 @@ } }, "azuread:index/claimsMappingPolicy:ClaimsMappingPolicy": { - "description": "Manages a Claims Mapping Policy within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application roles: `Policy.ReadWrite.ApplicationConfiguration` and `Policy.Read.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst myPolicy = new azuread.ClaimsMappingPolicy(\"my_policy\", {\n definitions: [JSON.stringify({\n claimsMappingPolicy: {\n claimsSchema: [\n {\n ID: \"employeeid\",\n jwtClaimType: \"name\",\n samlClaimType: \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\",\n source: \"user\",\n },\n {\n ID: \"tenantcountry\",\n jwtClaimType: \"country\",\n samlClaimType: \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\",\n source: \"company\",\n },\n ],\n includeBasicClaimSet: \"true\",\n version: 1,\n },\n })],\n displayName: \"My Policy\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_azuread as azuread\n\nmy_policy = azuread.ClaimsMappingPolicy(\"my_policy\",\n definitions=[json.dumps({\n \"claimsMappingPolicy\": {\n \"claimsSchema\": [\n {\n \"ID\": \"employeeid\",\n \"jwtClaimType\": \"name\",\n \"samlClaimType\": \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\",\n \"source\": \"user\",\n },\n {\n \"ID\": \"tenantcountry\",\n \"jwtClaimType\": \"country\",\n \"samlClaimType\": \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\",\n \"source\": \"company\",\n },\n ],\n \"includeBasicClaimSet\": \"true\",\n \"version\": 1,\n },\n })],\n display_name=\"My Policy\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myPolicy = new AzureAD.ClaimsMappingPolicy(\"my_policy\", new()\n {\n Definitions = new[]\n {\n JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"claimsMappingPolicy\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"claimsSchema\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"ID\"] = \"employeeid\",\n [\"jwtClaimType\"] = \"name\",\n [\"samlClaimType\"] = \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\",\n [\"source\"] = \"user\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"ID\"] = \"tenantcountry\",\n [\"jwtClaimType\"] = \"country\",\n [\"samlClaimType\"] = \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\",\n [\"source\"] = \"company\",\n },\n },\n [\"includeBasicClaimSet\"] = \"true\",\n [\"version\"] = 1,\n },\n }),\n },\n DisplayName = \"My Policy\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"claimsMappingPolicy\": map[string]interface{}{\n\t\t\t\t\"claimsSchema\": []map[string]interface{}{\n\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\"ID\": \"employeeid\",\n\t\t\t\t\t\t\"jwtClaimType\": \"name\",\n\t\t\t\t\t\t\"samlClaimType\": \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\",\n\t\t\t\t\t\t\"source\": \"user\",\n\t\t\t\t\t},\n\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\"ID\": \"tenantcountry\",\n\t\t\t\t\t\t\"jwtClaimType\": \"country\",\n\t\t\t\t\t\t\"samlClaimType\": \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\",\n\t\t\t\t\t\t\"source\": \"company\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\"includeBasicClaimSet\": \"true\",\n\t\t\t\t\"version\": 1,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = azuread.NewClaimsMappingPolicy(ctx, \"my_policy\", \u0026azuread.ClaimsMappingPolicyArgs{\n\t\t\tDefinitions: pulumi.StringArray{\n\t\t\t\tpulumi.String(json0),\n\t\t\t},\n\t\t\tDisplayName: pulumi.String(\"My Policy\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ClaimsMappingPolicy;\nimport com.pulumi.azuread.ClaimsMappingPolicyArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var myPolicy = new ClaimsMappingPolicy(\"myPolicy\", ClaimsMappingPolicyArgs.builder()\n .definitions(serializeJson(\n jsonObject(\n jsonProperty(\"claimsMappingPolicy\", jsonObject(\n jsonProperty(\"claimsSchema\", jsonArray(\n jsonObject(\n jsonProperty(\"ID\", \"employeeid\"),\n jsonProperty(\"jwtClaimType\", \"name\"),\n jsonProperty(\"samlClaimType\", \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\"),\n jsonProperty(\"source\", \"user\")\n ), \n jsonObject(\n jsonProperty(\"ID\", \"tenantcountry\"),\n jsonProperty(\"jwtClaimType\", \"country\"),\n jsonProperty(\"samlClaimType\", \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\"),\n jsonProperty(\"source\", \"company\")\n )\n )),\n jsonProperty(\"includeBasicClaimSet\", \"true\"),\n jsonProperty(\"version\", 1)\n ))\n )))\n .displayName(\"My Policy\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myPolicy:\n type: azuread:ClaimsMappingPolicy\n name: my_policy\n properties:\n definitions:\n - fn::toJSON:\n claimsMappingPolicy:\n claimsSchema:\n - ID: employeeid\n jwtClaimType: name\n samlClaimType: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\n source: user\n - ID: tenantcountry\n jwtClaimType: country\n samlClaimType: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\n source: company\n includeBasicClaimSet: 'true'\n version: 1\n displayName: My Policy\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClaims Mapping Policy can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/claimsMappingPolicy:ClaimsMappingPolicy my_policy 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages a Claims Mapping Policy within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application roles: `Policy.ReadWrite.ApplicationConfiguration` and `Policy.Read.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst myPolicy = new azuread.ClaimsMappingPolicy(\"my_policy\", {\n definitions: [JSON.stringify({\n claimsMappingPolicy: {\n claimsSchema: [\n {\n ID: \"employeeid\",\n jwtClaimType: \"name\",\n samlClaimType: \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\",\n source: \"user\",\n },\n {\n ID: \"tenantcountry\",\n jwtClaimType: \"country\",\n samlClaimType: \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\",\n source: \"company\",\n },\n ],\n includeBasicClaimSet: \"true\",\n version: 1,\n },\n })],\n displayName: \"My Policy\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_azuread as azuread\n\nmy_policy = azuread.ClaimsMappingPolicy(\"my_policy\",\n definitions=[json.dumps({\n \"claimsMappingPolicy\": {\n \"claimsSchema\": [\n {\n \"ID\": \"employeeid\",\n \"jwtClaimType\": \"name\",\n \"samlClaimType\": \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\",\n \"source\": \"user\",\n },\n {\n \"ID\": \"tenantcountry\",\n \"jwtClaimType\": \"country\",\n \"samlClaimType\": \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\",\n \"source\": \"company\",\n },\n ],\n \"includeBasicClaimSet\": \"true\",\n \"version\": 1,\n },\n })],\n display_name=\"My Policy\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myPolicy = new AzureAD.ClaimsMappingPolicy(\"my_policy\", new()\n {\n Definitions = new[]\n {\n JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"claimsMappingPolicy\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"claimsSchema\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"ID\"] = \"employeeid\",\n [\"jwtClaimType\"] = \"name\",\n [\"samlClaimType\"] = \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\",\n [\"source\"] = \"user\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"ID\"] = \"tenantcountry\",\n [\"jwtClaimType\"] = \"country\",\n [\"samlClaimType\"] = \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\",\n [\"source\"] = \"company\",\n },\n },\n [\"includeBasicClaimSet\"] = \"true\",\n [\"version\"] = 1,\n },\n }),\n },\n DisplayName = \"My Policy\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"claimsMappingPolicy\": map[string]interface{}{\n\t\t\t\t\"claimsSchema\": []map[string]interface{}{\n\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\"ID\": \"employeeid\",\n\t\t\t\t\t\t\"jwtClaimType\": \"name\",\n\t\t\t\t\t\t\"samlClaimType\": \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\",\n\t\t\t\t\t\t\"source\": \"user\",\n\t\t\t\t\t},\n\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\"ID\": \"tenantcountry\",\n\t\t\t\t\t\t\"jwtClaimType\": \"country\",\n\t\t\t\t\t\t\"samlClaimType\": \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\",\n\t\t\t\t\t\t\"source\": \"company\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\"includeBasicClaimSet\": \"true\",\n\t\t\t\t\"version\": 1,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = azuread.NewClaimsMappingPolicy(ctx, \"my_policy\", \u0026azuread.ClaimsMappingPolicyArgs{\n\t\t\tDefinitions: pulumi.StringArray{\n\t\t\t\tpulumi.String(json0),\n\t\t\t},\n\t\t\tDisplayName: pulumi.String(\"My Policy\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ClaimsMappingPolicy;\nimport com.pulumi.azuread.ClaimsMappingPolicyArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var myPolicy = new ClaimsMappingPolicy(\"myPolicy\", ClaimsMappingPolicyArgs.builder()\n .definitions(serializeJson(\n jsonObject(\n jsonProperty(\"claimsMappingPolicy\", jsonObject(\n jsonProperty(\"claimsSchema\", jsonArray(\n jsonObject(\n jsonProperty(\"ID\", \"employeeid\"),\n jsonProperty(\"jwtClaimType\", \"name\"),\n jsonProperty(\"samlClaimType\", \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\"),\n jsonProperty(\"source\", \"user\")\n ), \n jsonObject(\n jsonProperty(\"ID\", \"tenantcountry\"),\n jsonProperty(\"jwtClaimType\", \"country\"),\n jsonProperty(\"samlClaimType\", \"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\"),\n jsonProperty(\"source\", \"company\")\n )\n )),\n jsonProperty(\"includeBasicClaimSet\", \"true\"),\n jsonProperty(\"version\", 1)\n ))\n )))\n .displayName(\"My Policy\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myPolicy:\n type: azuread:ClaimsMappingPolicy\n name: my_policy\n properties:\n definitions:\n - fn::toJSON:\n claimsMappingPolicy:\n claimsSchema:\n - ID: employeeid\n jwtClaimType: name\n samlClaimType: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name\n source: user\n - ID: tenantcountry\n jwtClaimType: country\n samlClaimType: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country\n source: company\n includeBasicClaimSet: 'true'\n version: 1\n displayName: My Policy\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClaims Mapping Policy can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/claimsMappingPolicy:ClaimsMappingPolicy my_policy 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "definitions": { "type": "array", @@ -6231,7 +6137,7 @@ } }, "azuread:index/conditionalAccessPolicy:ConditionalAccessPolicy": { - "description": "## Example Usage\n\n### All users except guests or external users\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ConditionalAccessPolicy(\"example\", {\n displayName: \"example policy\",\n state: \"disabled\",\n conditions: {\n clientAppTypes: [\"all\"],\n signInRiskLevels: [\"medium\"],\n userRiskLevels: [\"medium\"],\n applications: {\n includedApplications: [\"All\"],\n excludedApplications: [],\n },\n devices: {\n filter: {\n mode: \"exclude\",\n rule: \"device.operatingSystem eq \\\"Doors\\\"\",\n },\n },\n locations: {\n includedLocations: [\"All\"],\n excludedLocations: [\"AllTrusted\"],\n },\n platforms: {\n includedPlatforms: [\"android\"],\n excludedPlatforms: [\"iOS\"],\n },\n users: {\n includedUsers: [\"All\"],\n excludedUsers: [\"GuestsOrExternalUsers\"],\n },\n },\n grantControls: {\n operator: \"OR\",\n builtInControls: [\"mfa\"],\n },\n sessionControls: {\n applicationEnforcedRestrictionsEnabled: true,\n disableResilienceDefaults: false,\n signInFrequency: 10,\n signInFrequencyPeriod: \"hours\",\n cloudAppSecurityPolicy: \"monitorOnly\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ConditionalAccessPolicy(\"example\",\n display_name=\"example policy\",\n state=\"disabled\",\n conditions={\n \"client_app_types\": [\"all\"],\n \"sign_in_risk_levels\": [\"medium\"],\n \"user_risk_levels\": [\"medium\"],\n \"applications\": {\n \"included_applications\": [\"All\"],\n \"excluded_applications\": [],\n },\n \"devices\": {\n \"filter\": {\n \"mode\": \"exclude\",\n \"rule\": \"device.operatingSystem eq \\\"Doors\\\"\",\n },\n },\n \"locations\": {\n \"included_locations\": [\"All\"],\n \"excluded_locations\": [\"AllTrusted\"],\n },\n \"platforms\": {\n \"included_platforms\": [\"android\"],\n \"excluded_platforms\": [\"iOS\"],\n },\n \"users\": {\n \"included_users\": [\"All\"],\n \"excluded_users\": [\"GuestsOrExternalUsers\"],\n },\n },\n grant_controls={\n \"operator\": \"OR\",\n \"built_in_controls\": [\"mfa\"],\n },\n session_controls={\n \"application_enforced_restrictions_enabled\": True,\n \"disable_resilience_defaults\": False,\n \"sign_in_frequency\": 10,\n \"sign_in_frequency_period\": \"hours\",\n \"cloud_app_security_policy\": \"monitorOnly\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ConditionalAccessPolicy(\"example\", new()\n {\n DisplayName = \"example policy\",\n State = \"disabled\",\n Conditions = new AzureAD.Inputs.ConditionalAccessPolicyConditionsArgs\n {\n ClientAppTypes = new[]\n {\n \"all\",\n },\n SignInRiskLevels = new[]\n {\n \"medium\",\n },\n UserRiskLevels = new[]\n {\n \"medium\",\n },\n Applications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsApplicationsArgs\n {\n IncludedApplications = new[]\n {\n \"All\",\n },\n ExcludedApplications = new() { },\n },\n Devices = new AzureAD.Inputs.ConditionalAccessPolicyConditionsDevicesArgs\n {\n Filter = new AzureAD.Inputs.ConditionalAccessPolicyConditionsDevicesFilterArgs\n {\n Mode = \"exclude\",\n Rule = \"device.operatingSystem eq \\\"Doors\\\"\",\n },\n },\n Locations = new AzureAD.Inputs.ConditionalAccessPolicyConditionsLocationsArgs\n {\n IncludedLocations = new[]\n {\n \"All\",\n },\n ExcludedLocations = new[]\n {\n \"AllTrusted\",\n },\n },\n Platforms = new AzureAD.Inputs.ConditionalAccessPolicyConditionsPlatformsArgs\n {\n IncludedPlatforms = new[]\n {\n \"android\",\n },\n ExcludedPlatforms = new[]\n {\n \"iOS\",\n },\n },\n Users = new AzureAD.Inputs.ConditionalAccessPolicyConditionsUsersArgs\n {\n IncludedUsers = new[]\n {\n \"All\",\n },\n ExcludedUsers = new[]\n {\n \"GuestsOrExternalUsers\",\n },\n },\n },\n GrantControls = new AzureAD.Inputs.ConditionalAccessPolicyGrantControlsArgs\n {\n Operator = \"OR\",\n BuiltInControls = new[]\n {\n \"mfa\",\n },\n },\n SessionControls = new AzureAD.Inputs.ConditionalAccessPolicySessionControlsArgs\n {\n ApplicationEnforcedRestrictionsEnabled = true,\n DisableResilienceDefaults = false,\n SignInFrequency = 10,\n SignInFrequencyPeriod = \"hours\",\n CloudAppSecurityPolicy = \"monitorOnly\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewConditionalAccessPolicy(ctx, \"example\", \u0026azuread.ConditionalAccessPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"example policy\"),\n\t\t\tState: pulumi.String(\"disabled\"),\n\t\t\tConditions: \u0026azuread.ConditionalAccessPolicyConditionsArgs{\n\t\t\t\tClientAppTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t\tSignInRiskLevels: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"medium\"),\n\t\t\t\t},\n\t\t\t\tUserRiskLevels: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"medium\"),\n\t\t\t\t},\n\t\t\t\tApplications: \u0026azuread.ConditionalAccessPolicyConditionsApplicationsArgs{\n\t\t\t\t\tIncludedApplications: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedApplications: pulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tDevices: \u0026azuread.ConditionalAccessPolicyConditionsDevicesArgs{\n\t\t\t\t\tFilter: \u0026azuread.ConditionalAccessPolicyConditionsDevicesFilterArgs{\n\t\t\t\t\t\tMode: pulumi.String(\"exclude\"),\n\t\t\t\t\t\tRule: pulumi.String(\"device.operatingSystem eq \\\"Doors\\\"\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tLocations: \u0026azuread.ConditionalAccessPolicyConditionsLocationsArgs{\n\t\t\t\t\tIncludedLocations: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedLocations: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"AllTrusted\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPlatforms: \u0026azuread.ConditionalAccessPolicyConditionsPlatformsArgs{\n\t\t\t\t\tIncludedPlatforms: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"android\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedPlatforms: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"iOS\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tUsers: \u0026azuread.ConditionalAccessPolicyConditionsUsersArgs{\n\t\t\t\t\tIncludedUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"GuestsOrExternalUsers\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tGrantControls: \u0026azuread.ConditionalAccessPolicyGrantControlsArgs{\n\t\t\t\tOperator: pulumi.String(\"OR\"),\n\t\t\t\tBuiltInControls: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"mfa\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSessionControls: \u0026azuread.ConditionalAccessPolicySessionControlsArgs{\n\t\t\t\tApplicationEnforcedRestrictionsEnabled: pulumi.Bool(true),\n\t\t\t\tDisableResilienceDefaults: pulumi.Bool(false),\n\t\t\t\tSignInFrequency: pulumi.Int(10),\n\t\t\t\tSignInFrequencyPeriod: pulumi.String(\"hours\"),\n\t\t\t\tCloudAppSecurityPolicy: pulumi.String(\"monitorOnly\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ConditionalAccessPolicy;\nimport com.pulumi.azuread.ConditionalAccessPolicyArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsDevicesArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsDevicesFilterArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsLocationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsPlatformsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsUsersArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyGrantControlsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicySessionControlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ConditionalAccessPolicy(\"example\", ConditionalAccessPolicyArgs.builder()\n .displayName(\"example policy\")\n .state(\"disabled\")\n .conditions(ConditionalAccessPolicyConditionsArgs.builder()\n .clientAppTypes(\"all\")\n .signInRiskLevels(\"medium\")\n .userRiskLevels(\"medium\")\n .applications(ConditionalAccessPolicyConditionsApplicationsArgs.builder()\n .includedApplications(\"All\")\n .excludedApplications()\n .build())\n .devices(ConditionalAccessPolicyConditionsDevicesArgs.builder()\n .filter(ConditionalAccessPolicyConditionsDevicesFilterArgs.builder()\n .mode(\"exclude\")\n .rule(\"device.operatingSystem eq \\\"Doors\\\"\")\n .build())\n .build())\n .locations(ConditionalAccessPolicyConditionsLocationsArgs.builder()\n .includedLocations(\"All\")\n .excludedLocations(\"AllTrusted\")\n .build())\n .platforms(ConditionalAccessPolicyConditionsPlatformsArgs.builder()\n .includedPlatforms(\"android\")\n .excludedPlatforms(\"iOS\")\n .build())\n .users(ConditionalAccessPolicyConditionsUsersArgs.builder()\n .includedUsers(\"All\")\n .excludedUsers(\"GuestsOrExternalUsers\")\n .build())\n .build())\n .grantControls(ConditionalAccessPolicyGrantControlsArgs.builder()\n .operator(\"OR\")\n .builtInControls(\"mfa\")\n .build())\n .sessionControls(ConditionalAccessPolicySessionControlsArgs.builder()\n .applicationEnforcedRestrictionsEnabled(true)\n .disableResilienceDefaults(false)\n .signInFrequency(10)\n .signInFrequencyPeriod(\"hours\")\n .cloudAppSecurityPolicy(\"monitorOnly\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ConditionalAccessPolicy\n properties:\n displayName: example policy\n state: disabled\n conditions:\n clientAppTypes:\n - all\n signInRiskLevels:\n - medium\n userRiskLevels:\n - medium\n applications:\n includedApplications:\n - All\n excludedApplications: []\n devices:\n filter:\n mode: exclude\n rule: device.operatingSystem eq \"Doors\"\n locations:\n includedLocations:\n - All\n excludedLocations:\n - AllTrusted\n platforms:\n includedPlatforms:\n - android\n excludedPlatforms:\n - iOS\n users:\n includedUsers:\n - All\n excludedUsers:\n - GuestsOrExternalUsers\n grantControls:\n operator: OR\n builtInControls:\n - mfa\n sessionControls:\n applicationEnforcedRestrictionsEnabled: true\n disableResilienceDefaults: false\n signInFrequency: 10\n signInFrequencyPeriod: hours\n cloudAppSecurityPolicy: monitorOnly\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Included client applications / service principals\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.ConditionalAccessPolicy(\"example\", {\n displayName: \"example policy\",\n state: \"disabled\",\n conditions: {\n clientAppTypes: [\"all\"],\n applications: {\n includedApplications: [\"All\"],\n },\n clientApplications: {\n includedServicePrincipals: [current.then(current =\u003e current.objectId)],\n excludedServicePrincipals: [],\n },\n users: {\n includedUsers: [\"None\"],\n },\n },\n grantControls: {\n operator: \"OR\",\n builtInControls: [\"block\"],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.ConditionalAccessPolicy(\"example\",\n display_name=\"example policy\",\n state=\"disabled\",\n conditions={\n \"client_app_types\": [\"all\"],\n \"applications\": {\n \"included_applications\": [\"All\"],\n },\n \"client_applications\": {\n \"included_service_principals\": [current.object_id],\n \"excluded_service_principals\": [],\n },\n \"users\": {\n \"included_users\": [\"None\"],\n },\n },\n grant_controls={\n \"operator\": \"OR\",\n \"built_in_controls\": [\"block\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.ConditionalAccessPolicy(\"example\", new()\n {\n DisplayName = \"example policy\",\n State = \"disabled\",\n Conditions = new AzureAD.Inputs.ConditionalAccessPolicyConditionsArgs\n {\n ClientAppTypes = new[]\n {\n \"all\",\n },\n Applications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsApplicationsArgs\n {\n IncludedApplications = new[]\n {\n \"All\",\n },\n },\n ClientApplications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsClientApplicationsArgs\n {\n IncludedServicePrincipals = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n ExcludedServicePrincipals = new() { },\n },\n Users = new AzureAD.Inputs.ConditionalAccessPolicyConditionsUsersArgs\n {\n IncludedUsers = new[]\n {\n \"None\",\n },\n },\n },\n GrantControls = new AzureAD.Inputs.ConditionalAccessPolicyGrantControlsArgs\n {\n Operator = \"OR\",\n BuiltInControls = new[]\n {\n \"block\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewConditionalAccessPolicy(ctx, \"example\", \u0026azuread.ConditionalAccessPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"example policy\"),\n\t\t\tState: pulumi.String(\"disabled\"),\n\t\t\tConditions: \u0026azuread.ConditionalAccessPolicyConditionsArgs{\n\t\t\t\tClientAppTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t\tApplications: \u0026azuread.ConditionalAccessPolicyConditionsApplicationsArgs{\n\t\t\t\t\tIncludedApplications: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClientApplications: \u0026azuread.ConditionalAccessPolicyConditionsClientApplicationsArgs{\n\t\t\t\t\tIncludedServicePrincipals: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedServicePrincipals: pulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tUsers: \u0026azuread.ConditionalAccessPolicyConditionsUsersArgs{\n\t\t\t\t\tIncludedUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"None\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tGrantControls: \u0026azuread.ConditionalAccessPolicyGrantControlsArgs{\n\t\t\t\tOperator: pulumi.String(\"OR\"),\n\t\t\t\tBuiltInControls: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"block\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ConditionalAccessPolicy;\nimport com.pulumi.azuread.ConditionalAccessPolicyArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsClientApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsUsersArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyGrantControlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new ConditionalAccessPolicy(\"example\", ConditionalAccessPolicyArgs.builder()\n .displayName(\"example policy\")\n .state(\"disabled\")\n .conditions(ConditionalAccessPolicyConditionsArgs.builder()\n .clientAppTypes(\"all\")\n .applications(ConditionalAccessPolicyConditionsApplicationsArgs.builder()\n .includedApplications(\"All\")\n .build())\n .clientApplications(ConditionalAccessPolicyConditionsClientApplicationsArgs.builder()\n .includedServicePrincipals(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .excludedServicePrincipals()\n .build())\n .users(ConditionalAccessPolicyConditionsUsersArgs.builder()\n .includedUsers(\"None\")\n .build())\n .build())\n .grantControls(ConditionalAccessPolicyGrantControlsArgs.builder()\n .operator(\"OR\")\n .builtInControls(\"block\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ConditionalAccessPolicy\n properties:\n displayName: example policy\n state: disabled\n conditions:\n clientAppTypes:\n - all\n applications:\n includedApplications:\n - All\n clientApplications:\n includedServicePrincipals:\n - ${current.objectId}\n excludedServicePrincipals: []\n users:\n includedUsers:\n - None\n grantControls:\n operator: OR\n builtInControls:\n - block\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Excluded client applications / service principals\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.ConditionalAccessPolicy(\"example\", {\n displayName: \"example policy\",\n state: \"disabled\",\n conditions: {\n clientAppTypes: [\"all\"],\n applications: {\n includedApplications: [\"All\"],\n },\n clientApplications: {\n includedServicePrincipals: [\"ServicePrincipalsInMyTenant\"],\n excludedServicePrincipals: [current.then(current =\u003e current.objectId)],\n },\n users: {\n includedUsers: [\"None\"],\n },\n },\n grantControls: {\n operator: \"OR\",\n builtInControls: [\"block\"],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.ConditionalAccessPolicy(\"example\",\n display_name=\"example policy\",\n state=\"disabled\",\n conditions={\n \"client_app_types\": [\"all\"],\n \"applications\": {\n \"included_applications\": [\"All\"],\n },\n \"client_applications\": {\n \"included_service_principals\": [\"ServicePrincipalsInMyTenant\"],\n \"excluded_service_principals\": [current.object_id],\n },\n \"users\": {\n \"included_users\": [\"None\"],\n },\n },\n grant_controls={\n \"operator\": \"OR\",\n \"built_in_controls\": [\"block\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.ConditionalAccessPolicy(\"example\", new()\n {\n DisplayName = \"example policy\",\n State = \"disabled\",\n Conditions = new AzureAD.Inputs.ConditionalAccessPolicyConditionsArgs\n {\n ClientAppTypes = new[]\n {\n \"all\",\n },\n Applications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsApplicationsArgs\n {\n IncludedApplications = new[]\n {\n \"All\",\n },\n },\n ClientApplications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsClientApplicationsArgs\n {\n IncludedServicePrincipals = new[]\n {\n \"ServicePrincipalsInMyTenant\",\n },\n ExcludedServicePrincipals = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n },\n Users = new AzureAD.Inputs.ConditionalAccessPolicyConditionsUsersArgs\n {\n IncludedUsers = new[]\n {\n \"None\",\n },\n },\n },\n GrantControls = new AzureAD.Inputs.ConditionalAccessPolicyGrantControlsArgs\n {\n Operator = \"OR\",\n BuiltInControls = new[]\n {\n \"block\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewConditionalAccessPolicy(ctx, \"example\", \u0026azuread.ConditionalAccessPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"example policy\"),\n\t\t\tState: pulumi.String(\"disabled\"),\n\t\t\tConditions: \u0026azuread.ConditionalAccessPolicyConditionsArgs{\n\t\t\t\tClientAppTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t\tApplications: \u0026azuread.ConditionalAccessPolicyConditionsApplicationsArgs{\n\t\t\t\t\tIncludedApplications: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClientApplications: \u0026azuread.ConditionalAccessPolicyConditionsClientApplicationsArgs{\n\t\t\t\t\tIncludedServicePrincipals: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ServicePrincipalsInMyTenant\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedServicePrincipals: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tUsers: \u0026azuread.ConditionalAccessPolicyConditionsUsersArgs{\n\t\t\t\t\tIncludedUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"None\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tGrantControls: \u0026azuread.ConditionalAccessPolicyGrantControlsArgs{\n\t\t\t\tOperator: pulumi.String(\"OR\"),\n\t\t\t\tBuiltInControls: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"block\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ConditionalAccessPolicy;\nimport com.pulumi.azuread.ConditionalAccessPolicyArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsClientApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsUsersArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyGrantControlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new ConditionalAccessPolicy(\"example\", ConditionalAccessPolicyArgs.builder()\n .displayName(\"example policy\")\n .state(\"disabled\")\n .conditions(ConditionalAccessPolicyConditionsArgs.builder()\n .clientAppTypes(\"all\")\n .applications(ConditionalAccessPolicyConditionsApplicationsArgs.builder()\n .includedApplications(\"All\")\n .build())\n .clientApplications(ConditionalAccessPolicyConditionsClientApplicationsArgs.builder()\n .includedServicePrincipals(\"ServicePrincipalsInMyTenant\")\n .excludedServicePrincipals(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .build())\n .users(ConditionalAccessPolicyConditionsUsersArgs.builder()\n .includedUsers(\"None\")\n .build())\n .build())\n .grantControls(ConditionalAccessPolicyGrantControlsArgs.builder()\n .operator(\"OR\")\n .builtInControls(\"block\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ConditionalAccessPolicy\n properties:\n displayName: example policy\n state: disabled\n conditions:\n clientAppTypes:\n - all\n applications:\n includedApplications:\n - All\n clientApplications:\n includedServicePrincipals:\n - ServicePrincipalsInMyTenant\n excludedServicePrincipals:\n - ${current.objectId}\n users:\n includedUsers:\n - None\n grantControls:\n operator: OR\n builtInControls:\n - block\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nConditional Access Policies can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/conditionalAccessPolicy:ConditionalAccessPolicy my_location 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "## Example Usage\n\n### All users except guests or external users\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.ConditionalAccessPolicy(\"example\", {\n displayName: \"example policy\",\n state: \"disabled\",\n conditions: {\n clientAppTypes: [\"all\"],\n signInRiskLevels: [\"medium\"],\n userRiskLevels: [\"medium\"],\n applications: {\n includedApplications: [\"All\"],\n excludedApplications: [],\n },\n devices: {\n filter: {\n mode: \"exclude\",\n rule: \"device.operatingSystem eq \\\"Doors\\\"\",\n },\n },\n locations: {\n includedLocations: [\"All\"],\n excludedLocations: [\"AllTrusted\"],\n },\n platforms: {\n includedPlatforms: [\"android\"],\n excludedPlatforms: [\"iOS\"],\n },\n users: {\n includedUsers: [\"All\"],\n excludedUsers: [\"GuestsOrExternalUsers\"],\n },\n },\n grantControls: {\n operator: \"OR\",\n builtInControls: [\"mfa\"],\n },\n sessionControls: {\n applicationEnforcedRestrictionsEnabled: true,\n disableResilienceDefaults: false,\n signInFrequency: 10,\n signInFrequencyPeriod: \"hours\",\n cloudAppSecurityPolicy: \"monitorOnly\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.ConditionalAccessPolicy(\"example\",\n display_name=\"example policy\",\n state=\"disabled\",\n conditions={\n \"client_app_types\": [\"all\"],\n \"sign_in_risk_levels\": [\"medium\"],\n \"user_risk_levels\": [\"medium\"],\n \"applications\": {\n \"included_applications\": [\"All\"],\n \"excluded_applications\": [],\n },\n \"devices\": {\n \"filter\": {\n \"mode\": \"exclude\",\n \"rule\": \"device.operatingSystem eq \\\"Doors\\\"\",\n },\n },\n \"locations\": {\n \"included_locations\": [\"All\"],\n \"excluded_locations\": [\"AllTrusted\"],\n },\n \"platforms\": {\n \"included_platforms\": [\"android\"],\n \"excluded_platforms\": [\"iOS\"],\n },\n \"users\": {\n \"included_users\": [\"All\"],\n \"excluded_users\": [\"GuestsOrExternalUsers\"],\n },\n },\n grant_controls={\n \"operator\": \"OR\",\n \"built_in_controls\": [\"mfa\"],\n },\n session_controls={\n \"application_enforced_restrictions_enabled\": True,\n \"disable_resilience_defaults\": False,\n \"sign_in_frequency\": 10,\n \"sign_in_frequency_period\": \"hours\",\n \"cloud_app_security_policy\": \"monitorOnly\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.ConditionalAccessPolicy(\"example\", new()\n {\n DisplayName = \"example policy\",\n State = \"disabled\",\n Conditions = new AzureAD.Inputs.ConditionalAccessPolicyConditionsArgs\n {\n ClientAppTypes = new[]\n {\n \"all\",\n },\n SignInRiskLevels = new[]\n {\n \"medium\",\n },\n UserRiskLevels = new[]\n {\n \"medium\",\n },\n Applications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsApplicationsArgs\n {\n IncludedApplications = new[]\n {\n \"All\",\n },\n ExcludedApplications = new() { },\n },\n Devices = new AzureAD.Inputs.ConditionalAccessPolicyConditionsDevicesArgs\n {\n Filter = new AzureAD.Inputs.ConditionalAccessPolicyConditionsDevicesFilterArgs\n {\n Mode = \"exclude\",\n Rule = \"device.operatingSystem eq \\\"Doors\\\"\",\n },\n },\n Locations = new AzureAD.Inputs.ConditionalAccessPolicyConditionsLocationsArgs\n {\n IncludedLocations = new[]\n {\n \"All\",\n },\n ExcludedLocations = new[]\n {\n \"AllTrusted\",\n },\n },\n Platforms = new AzureAD.Inputs.ConditionalAccessPolicyConditionsPlatformsArgs\n {\n IncludedPlatforms = new[]\n {\n \"android\",\n },\n ExcludedPlatforms = new[]\n {\n \"iOS\",\n },\n },\n Users = new AzureAD.Inputs.ConditionalAccessPolicyConditionsUsersArgs\n {\n IncludedUsers = new[]\n {\n \"All\",\n },\n ExcludedUsers = new[]\n {\n \"GuestsOrExternalUsers\",\n },\n },\n },\n GrantControls = new AzureAD.Inputs.ConditionalAccessPolicyGrantControlsArgs\n {\n Operator = \"OR\",\n BuiltInControls = new[]\n {\n \"mfa\",\n },\n },\n SessionControls = new AzureAD.Inputs.ConditionalAccessPolicySessionControlsArgs\n {\n ApplicationEnforcedRestrictionsEnabled = true,\n DisableResilienceDefaults = false,\n SignInFrequency = 10,\n SignInFrequencyPeriod = \"hours\",\n CloudAppSecurityPolicy = \"monitorOnly\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewConditionalAccessPolicy(ctx, \"example\", \u0026azuread.ConditionalAccessPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"example policy\"),\n\t\t\tState: pulumi.String(\"disabled\"),\n\t\t\tConditions: \u0026azuread.ConditionalAccessPolicyConditionsArgs{\n\t\t\t\tClientAppTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t\tSignInRiskLevels: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"medium\"),\n\t\t\t\t},\n\t\t\t\tUserRiskLevels: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"medium\"),\n\t\t\t\t},\n\t\t\t\tApplications: \u0026azuread.ConditionalAccessPolicyConditionsApplicationsArgs{\n\t\t\t\t\tIncludedApplications: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedApplications: pulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tDevices: \u0026azuread.ConditionalAccessPolicyConditionsDevicesArgs{\n\t\t\t\t\tFilter: \u0026azuread.ConditionalAccessPolicyConditionsDevicesFilterArgs{\n\t\t\t\t\t\tMode: pulumi.String(\"exclude\"),\n\t\t\t\t\t\tRule: pulumi.String(\"device.operatingSystem eq \\\"Doors\\\"\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tLocations: \u0026azuread.ConditionalAccessPolicyConditionsLocationsArgs{\n\t\t\t\t\tIncludedLocations: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedLocations: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"AllTrusted\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPlatforms: \u0026azuread.ConditionalAccessPolicyConditionsPlatformsArgs{\n\t\t\t\t\tIncludedPlatforms: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"android\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedPlatforms: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"iOS\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tUsers: \u0026azuread.ConditionalAccessPolicyConditionsUsersArgs{\n\t\t\t\t\tIncludedUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"GuestsOrExternalUsers\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tGrantControls: \u0026azuread.ConditionalAccessPolicyGrantControlsArgs{\n\t\t\t\tOperator: pulumi.String(\"OR\"),\n\t\t\t\tBuiltInControls: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"mfa\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSessionControls: \u0026azuread.ConditionalAccessPolicySessionControlsArgs{\n\t\t\t\tApplicationEnforcedRestrictionsEnabled: pulumi.Bool(true),\n\t\t\t\tDisableResilienceDefaults: pulumi.Bool(false),\n\t\t\t\tSignInFrequency: pulumi.Int(10),\n\t\t\t\tSignInFrequencyPeriod: pulumi.String(\"hours\"),\n\t\t\t\tCloudAppSecurityPolicy: pulumi.String(\"monitorOnly\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ConditionalAccessPolicy;\nimport com.pulumi.azuread.ConditionalAccessPolicyArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsDevicesArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsDevicesFilterArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsLocationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsPlatformsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsUsersArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyGrantControlsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicySessionControlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ConditionalAccessPolicy(\"example\", ConditionalAccessPolicyArgs.builder()\n .displayName(\"example policy\")\n .state(\"disabled\")\n .conditions(ConditionalAccessPolicyConditionsArgs.builder()\n .clientAppTypes(\"all\")\n .signInRiskLevels(\"medium\")\n .userRiskLevels(\"medium\")\n .applications(ConditionalAccessPolicyConditionsApplicationsArgs.builder()\n .includedApplications(\"All\")\n .excludedApplications()\n .build())\n .devices(ConditionalAccessPolicyConditionsDevicesArgs.builder()\n .filter(ConditionalAccessPolicyConditionsDevicesFilterArgs.builder()\n .mode(\"exclude\")\n .rule(\"device.operatingSystem eq \\\"Doors\\\"\")\n .build())\n .build())\n .locations(ConditionalAccessPolicyConditionsLocationsArgs.builder()\n .includedLocations(\"All\")\n .excludedLocations(\"AllTrusted\")\n .build())\n .platforms(ConditionalAccessPolicyConditionsPlatformsArgs.builder()\n .includedPlatforms(\"android\")\n .excludedPlatforms(\"iOS\")\n .build())\n .users(ConditionalAccessPolicyConditionsUsersArgs.builder()\n .includedUsers(\"All\")\n .excludedUsers(\"GuestsOrExternalUsers\")\n .build())\n .build())\n .grantControls(ConditionalAccessPolicyGrantControlsArgs.builder()\n .operator(\"OR\")\n .builtInControls(\"mfa\")\n .build())\n .sessionControls(ConditionalAccessPolicySessionControlsArgs.builder()\n .applicationEnforcedRestrictionsEnabled(true)\n .disableResilienceDefaults(false)\n .signInFrequency(10)\n .signInFrequencyPeriod(\"hours\")\n .cloudAppSecurityPolicy(\"monitorOnly\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ConditionalAccessPolicy\n properties:\n displayName: example policy\n state: disabled\n conditions:\n clientAppTypes:\n - all\n signInRiskLevels:\n - medium\n userRiskLevels:\n - medium\n applications:\n includedApplications:\n - All\n excludedApplications: []\n devices:\n filter:\n mode: exclude\n rule: device.operatingSystem eq \"Doors\"\n locations:\n includedLocations:\n - All\n excludedLocations:\n - AllTrusted\n platforms:\n includedPlatforms:\n - android\n excludedPlatforms:\n - iOS\n users:\n includedUsers:\n - All\n excludedUsers:\n - GuestsOrExternalUsers\n grantControls:\n operator: OR\n builtInControls:\n - mfa\n sessionControls:\n applicationEnforcedRestrictionsEnabled: true\n disableResilienceDefaults: false\n signInFrequency: 10\n signInFrequencyPeriod: hours\n cloudAppSecurityPolicy: monitorOnly\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Included client applications / service principals\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.ConditionalAccessPolicy(\"example\", {\n displayName: \"example policy\",\n state: \"disabled\",\n conditions: {\n clientAppTypes: [\"all\"],\n applications: {\n includedApplications: [\"All\"],\n },\n clientApplications: {\n includedServicePrincipals: [current.then(current =\u003e current.objectId)],\n excludedServicePrincipals: [],\n },\n users: {\n includedUsers: [\"None\"],\n },\n },\n grantControls: {\n operator: \"OR\",\n builtInControls: [\"block\"],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.ConditionalAccessPolicy(\"example\",\n display_name=\"example policy\",\n state=\"disabled\",\n conditions={\n \"client_app_types\": [\"all\"],\n \"applications\": {\n \"included_applications\": [\"All\"],\n },\n \"client_applications\": {\n \"included_service_principals\": [current.object_id],\n \"excluded_service_principals\": [],\n },\n \"users\": {\n \"included_users\": [\"None\"],\n },\n },\n grant_controls={\n \"operator\": \"OR\",\n \"built_in_controls\": [\"block\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.ConditionalAccessPolicy(\"example\", new()\n {\n DisplayName = \"example policy\",\n State = \"disabled\",\n Conditions = new AzureAD.Inputs.ConditionalAccessPolicyConditionsArgs\n {\n ClientAppTypes = new[]\n {\n \"all\",\n },\n Applications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsApplicationsArgs\n {\n IncludedApplications = new[]\n {\n \"All\",\n },\n },\n ClientApplications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsClientApplicationsArgs\n {\n IncludedServicePrincipals = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n ExcludedServicePrincipals = new() { },\n },\n Users = new AzureAD.Inputs.ConditionalAccessPolicyConditionsUsersArgs\n {\n IncludedUsers = new[]\n {\n \"None\",\n },\n },\n },\n GrantControls = new AzureAD.Inputs.ConditionalAccessPolicyGrantControlsArgs\n {\n Operator = \"OR\",\n BuiltInControls = new[]\n {\n \"block\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewConditionalAccessPolicy(ctx, \"example\", \u0026azuread.ConditionalAccessPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"example policy\"),\n\t\t\tState: pulumi.String(\"disabled\"),\n\t\t\tConditions: \u0026azuread.ConditionalAccessPolicyConditionsArgs{\n\t\t\t\tClientAppTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t\tApplications: \u0026azuread.ConditionalAccessPolicyConditionsApplicationsArgs{\n\t\t\t\t\tIncludedApplications: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClientApplications: \u0026azuread.ConditionalAccessPolicyConditionsClientApplicationsArgs{\n\t\t\t\t\tIncludedServicePrincipals: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedServicePrincipals: pulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tUsers: \u0026azuread.ConditionalAccessPolicyConditionsUsersArgs{\n\t\t\t\t\tIncludedUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"None\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tGrantControls: \u0026azuread.ConditionalAccessPolicyGrantControlsArgs{\n\t\t\t\tOperator: pulumi.String(\"OR\"),\n\t\t\t\tBuiltInControls: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"block\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ConditionalAccessPolicy;\nimport com.pulumi.azuread.ConditionalAccessPolicyArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsClientApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsUsersArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyGrantControlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new ConditionalAccessPolicy(\"example\", ConditionalAccessPolicyArgs.builder()\n .displayName(\"example policy\")\n .state(\"disabled\")\n .conditions(ConditionalAccessPolicyConditionsArgs.builder()\n .clientAppTypes(\"all\")\n .applications(ConditionalAccessPolicyConditionsApplicationsArgs.builder()\n .includedApplications(\"All\")\n .build())\n .clientApplications(ConditionalAccessPolicyConditionsClientApplicationsArgs.builder()\n .includedServicePrincipals(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .excludedServicePrincipals()\n .build())\n .users(ConditionalAccessPolicyConditionsUsersArgs.builder()\n .includedUsers(\"None\")\n .build())\n .build())\n .grantControls(ConditionalAccessPolicyGrantControlsArgs.builder()\n .operator(\"OR\")\n .builtInControls(\"block\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ConditionalAccessPolicy\n properties:\n displayName: example policy\n state: disabled\n conditions:\n clientAppTypes:\n - all\n applications:\n includedApplications:\n - All\n clientApplications:\n includedServicePrincipals:\n - ${current.objectId}\n excludedServicePrincipals: []\n users:\n includedUsers:\n - None\n grantControls:\n operator: OR\n builtInControls:\n - block\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Excluded client applications / service principals\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.ConditionalAccessPolicy(\"example\", {\n displayName: \"example policy\",\n state: \"disabled\",\n conditions: {\n clientAppTypes: [\"all\"],\n applications: {\n includedApplications: [\"All\"],\n },\n clientApplications: {\n includedServicePrincipals: [\"ServicePrincipalsInMyTenant\"],\n excludedServicePrincipals: [current.then(current =\u003e current.objectId)],\n },\n users: {\n includedUsers: [\"None\"],\n },\n },\n grantControls: {\n operator: \"OR\",\n builtInControls: [\"block\"],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.ConditionalAccessPolicy(\"example\",\n display_name=\"example policy\",\n state=\"disabled\",\n conditions={\n \"client_app_types\": [\"all\"],\n \"applications\": {\n \"included_applications\": [\"All\"],\n },\n \"client_applications\": {\n \"included_service_principals\": [\"ServicePrincipalsInMyTenant\"],\n \"excluded_service_principals\": [current.object_id],\n },\n \"users\": {\n \"included_users\": [\"None\"],\n },\n },\n grant_controls={\n \"operator\": \"OR\",\n \"built_in_controls\": [\"block\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.ConditionalAccessPolicy(\"example\", new()\n {\n DisplayName = \"example policy\",\n State = \"disabled\",\n Conditions = new AzureAD.Inputs.ConditionalAccessPolicyConditionsArgs\n {\n ClientAppTypes = new[]\n {\n \"all\",\n },\n Applications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsApplicationsArgs\n {\n IncludedApplications = new[]\n {\n \"All\",\n },\n },\n ClientApplications = new AzureAD.Inputs.ConditionalAccessPolicyConditionsClientApplicationsArgs\n {\n IncludedServicePrincipals = new[]\n {\n \"ServicePrincipalsInMyTenant\",\n },\n ExcludedServicePrincipals = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n },\n Users = new AzureAD.Inputs.ConditionalAccessPolicyConditionsUsersArgs\n {\n IncludedUsers = new[]\n {\n \"None\",\n },\n },\n },\n GrantControls = new AzureAD.Inputs.ConditionalAccessPolicyGrantControlsArgs\n {\n Operator = \"OR\",\n BuiltInControls = new[]\n {\n \"block\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewConditionalAccessPolicy(ctx, \"example\", \u0026azuread.ConditionalAccessPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"example policy\"),\n\t\t\tState: pulumi.String(\"disabled\"),\n\t\t\tConditions: \u0026azuread.ConditionalAccessPolicyConditionsArgs{\n\t\t\t\tClientAppTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t\tApplications: \u0026azuread.ConditionalAccessPolicyConditionsApplicationsArgs{\n\t\t\t\t\tIncludedApplications: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"All\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClientApplications: \u0026azuread.ConditionalAccessPolicyConditionsClientApplicationsArgs{\n\t\t\t\t\tIncludedServicePrincipals: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ServicePrincipalsInMyTenant\"),\n\t\t\t\t\t},\n\t\t\t\t\tExcludedServicePrincipals: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tUsers: \u0026azuread.ConditionalAccessPolicyConditionsUsersArgs{\n\t\t\t\t\tIncludedUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"None\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tGrantControls: \u0026azuread.ConditionalAccessPolicyGrantControlsArgs{\n\t\t\t\tOperator: pulumi.String(\"OR\"),\n\t\t\t\tBuiltInControls: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"block\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ConditionalAccessPolicy;\nimport com.pulumi.azuread.ConditionalAccessPolicyArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsClientApplicationsArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyConditionsUsersArgs;\nimport com.pulumi.azuread.inputs.ConditionalAccessPolicyGrantControlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new ConditionalAccessPolicy(\"example\", ConditionalAccessPolicyArgs.builder()\n .displayName(\"example policy\")\n .state(\"disabled\")\n .conditions(ConditionalAccessPolicyConditionsArgs.builder()\n .clientAppTypes(\"all\")\n .applications(ConditionalAccessPolicyConditionsApplicationsArgs.builder()\n .includedApplications(\"All\")\n .build())\n .clientApplications(ConditionalAccessPolicyConditionsClientApplicationsArgs.builder()\n .includedServicePrincipals(\"ServicePrincipalsInMyTenant\")\n .excludedServicePrincipals(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .build())\n .users(ConditionalAccessPolicyConditionsUsersArgs.builder()\n .includedUsers(\"None\")\n .build())\n .build())\n .grantControls(ConditionalAccessPolicyGrantControlsArgs.builder()\n .operator(\"OR\")\n .builtInControls(\"block\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:ConditionalAccessPolicy\n properties:\n displayName: example policy\n state: disabled\n conditions:\n clientAppTypes:\n - all\n applications:\n includedApplications:\n - All\n clientApplications:\n includedServicePrincipals:\n - ServicePrincipalsInMyTenant\n excludedServicePrincipals:\n - ${current.objectId}\n users:\n includedUsers:\n - None\n grantControls:\n operator: OR\n builtInControls:\n - block\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nConditional Access Policies can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/conditionalAccessPolicy:ConditionalAccessPolicy my_location 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "conditions": { "$ref": "#/types/azuread:index/ConditionalAccessPolicyConditions:ConditionalAccessPolicyConditions", @@ -6245,6 +6151,10 @@ "$ref": "#/types/azuread:index/ConditionalAccessPolicyGrantControls:ConditionalAccessPolicyGrantControls", "description": "A `grant_controls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy.\n" }, + "objectId": { + "type": "string", + "description": "The object ID of the policy\n" + }, "sessionControls": { "$ref": "#/types/azuread:index/ConditionalAccessPolicySessionControls:ConditionalAccessPolicySessionControls", "description": "A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in.\n\n\u003e Note: At least one of `grant_controls` and/or `session_controls` blocks must be specified.\n" @@ -6257,6 +6167,7 @@ "required": [ "conditions", "displayName", + "objectId", "state" ], "inputProperties": { @@ -6301,6 +6212,10 @@ "$ref": "#/types/azuread:index/ConditionalAccessPolicyGrantControls:ConditionalAccessPolicyGrantControls", "description": "A `grant_controls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy.\n" }, + "objectId": { + "type": "string", + "description": "The object ID of the policy\n" + }, "sessionControls": { "$ref": "#/types/azuread:index/ConditionalAccessPolicySessionControls:ConditionalAccessPolicySessionControls", "description": "A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in.\n\n\u003e Note: At least one of `grant_controls` and/or `session_controls` blocks must be specified.\n" @@ -6314,7 +6229,7 @@ } }, "azuread:index/customDirectoryRole:CustomDirectoryRole": { - "description": "Manages a Custom Directory Role within Azure Active Directory.\n\nThis resource is for managing custom directory roles. For management of built-in roles, see the azuread.DirectoryRole resource.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.ReadWrite.Directory` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.CustomDirectoryRole(\"example\", {\n displayName: \"My Custom Role\",\n description: \"Allows reading applications and updating groups\",\n enabled: true,\n version: \"1.0\",\n permissions: [\n {\n allowedResourceActions: [\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/create\",\n \"microsoft.directory/applications/standard/read\",\n ],\n },\n {\n allowedResourceActions: [\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/basic/update\",\n \"microsoft.directory/groups/create\",\n \"microsoft.directory/groups/delete\",\n ],\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.CustomDirectoryRole(\"example\",\n display_name=\"My Custom Role\",\n description=\"Allows reading applications and updating groups\",\n enabled=True,\n version=\"1.0\",\n permissions=[\n {\n \"allowed_resource_actions\": [\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/create\",\n \"microsoft.directory/applications/standard/read\",\n ],\n },\n {\n \"allowed_resource_actions\": [\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/basic/update\",\n \"microsoft.directory/groups/create\",\n \"microsoft.directory/groups/delete\",\n ],\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.CustomDirectoryRole(\"example\", new()\n {\n DisplayName = \"My Custom Role\",\n Description = \"Allows reading applications and updating groups\",\n Enabled = true,\n Version = \"1.0\",\n Permissions = new[]\n {\n new AzureAD.Inputs.CustomDirectoryRolePermissionArgs\n {\n AllowedResourceActions = new[]\n {\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/create\",\n \"microsoft.directory/applications/standard/read\",\n },\n },\n new AzureAD.Inputs.CustomDirectoryRolePermissionArgs\n {\n AllowedResourceActions = new[]\n {\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/basic/update\",\n \"microsoft.directory/groups/create\",\n \"microsoft.directory/groups/delete\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewCustomDirectoryRole(ctx, \"example\", \u0026azuread.CustomDirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"My Custom Role\"),\n\t\t\tDescription: pulumi.String(\"Allows reading applications and updating groups\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tVersion: pulumi.String(\"1.0\"),\n\t\t\tPermissions: azuread.CustomDirectoryRolePermissionArray{\n\t\t\t\t\u0026azuread.CustomDirectoryRolePermissionArgs{\n\t\t\t\t\tAllowedResourceActions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/basic/update\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/create\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/standard/read\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026azuread.CustomDirectoryRolePermissionArgs{\n\t\t\t\t\tAllowedResourceActions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/allProperties/read\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/allProperties/read\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/basic/update\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/create\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/delete\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.CustomDirectoryRole;\nimport com.pulumi.azuread.CustomDirectoryRoleArgs;\nimport com.pulumi.azuread.inputs.CustomDirectoryRolePermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new CustomDirectoryRole(\"example\", CustomDirectoryRoleArgs.builder()\n .displayName(\"My Custom Role\")\n .description(\"Allows reading applications and updating groups\")\n .enabled(true)\n .version(\"1.0\")\n .permissions( \n CustomDirectoryRolePermissionArgs.builder()\n .allowedResourceActions( \n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/create\",\n \"microsoft.directory/applications/standard/read\")\n .build(),\n CustomDirectoryRolePermissionArgs.builder()\n .allowedResourceActions( \n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/basic/update\",\n \"microsoft.directory/groups/create\",\n \"microsoft.directory/groups/delete\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:CustomDirectoryRole\n properties:\n displayName: My Custom Role\n description: Allows reading applications and updating groups\n enabled: true\n version: '1.0'\n permissions:\n - allowedResourceActions:\n - microsoft.directory/applications/basic/update\n - microsoft.directory/applications/create\n - microsoft.directory/applications/standard/read\n - allowedResourceActions:\n - microsoft.directory/groups/allProperties/read\n - microsoft.directory/groups/allProperties/read\n - microsoft.directory/groups/basic/update\n - microsoft.directory/groups/create\n - microsoft.directory/groups/delete\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", + "description": "Manages a Custom Directory Role within Azure Active Directory.\n\nThis resource is for managing custom directory roles. For management of built-in roles, see the azuread.DirectoryRole resource.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.ReadWrite.Directory` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.CustomDirectoryRole(\"example\", {\n displayName: \"My Custom Role\",\n description: \"Allows reading applications and updating groups\",\n enabled: true,\n version: \"1.0\",\n permissions: [\n {\n allowedResourceActions: [\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/create\",\n \"microsoft.directory/applications/standard/read\",\n ],\n },\n {\n allowedResourceActions: [\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/basic/update\",\n \"microsoft.directory/groups/create\",\n \"microsoft.directory/groups/delete\",\n ],\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.CustomDirectoryRole(\"example\",\n display_name=\"My Custom Role\",\n description=\"Allows reading applications and updating groups\",\n enabled=True,\n version=\"1.0\",\n permissions=[\n {\n \"allowed_resource_actions\": [\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/create\",\n \"microsoft.directory/applications/standard/read\",\n ],\n },\n {\n \"allowed_resource_actions\": [\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/basic/update\",\n \"microsoft.directory/groups/create\",\n \"microsoft.directory/groups/delete\",\n ],\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.CustomDirectoryRole(\"example\", new()\n {\n DisplayName = \"My Custom Role\",\n Description = \"Allows reading applications and updating groups\",\n Enabled = true,\n Version = \"1.0\",\n Permissions = new[]\n {\n new AzureAD.Inputs.CustomDirectoryRolePermissionArgs\n {\n AllowedResourceActions = new[]\n {\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/create\",\n \"microsoft.directory/applications/standard/read\",\n },\n },\n new AzureAD.Inputs.CustomDirectoryRolePermissionArgs\n {\n AllowedResourceActions = new[]\n {\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/basic/update\",\n \"microsoft.directory/groups/create\",\n \"microsoft.directory/groups/delete\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewCustomDirectoryRole(ctx, \"example\", \u0026azuread.CustomDirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"My Custom Role\"),\n\t\t\tDescription: pulumi.String(\"Allows reading applications and updating groups\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tVersion: pulumi.String(\"1.0\"),\n\t\t\tPermissions: azuread.CustomDirectoryRolePermissionArray{\n\t\t\t\t\u0026azuread.CustomDirectoryRolePermissionArgs{\n\t\t\t\t\tAllowedResourceActions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/basic/update\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/create\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/standard/read\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026azuread.CustomDirectoryRolePermissionArgs{\n\t\t\t\t\tAllowedResourceActions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/allProperties/read\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/allProperties/read\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/basic/update\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/create\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/groups/delete\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.CustomDirectoryRole;\nimport com.pulumi.azuread.CustomDirectoryRoleArgs;\nimport com.pulumi.azuread.inputs.CustomDirectoryRolePermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new CustomDirectoryRole(\"example\", CustomDirectoryRoleArgs.builder()\n .displayName(\"My Custom Role\")\n .description(\"Allows reading applications and updating groups\")\n .enabled(true)\n .version(\"1.0\")\n .permissions( \n CustomDirectoryRolePermissionArgs.builder()\n .allowedResourceActions( \n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/create\",\n \"microsoft.directory/applications/standard/read\")\n .build(),\n CustomDirectoryRolePermissionArgs.builder()\n .allowedResourceActions( \n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/allProperties/read\",\n \"microsoft.directory/groups/basic/update\",\n \"microsoft.directory/groups/create\",\n \"microsoft.directory/groups/delete\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:CustomDirectoryRole\n properties:\n displayName: My Custom Role\n description: Allows reading applications and updating groups\n enabled: true\n version: '1.0'\n permissions:\n - allowedResourceActions:\n - microsoft.directory/applications/basic/update\n - microsoft.directory/applications/create\n - microsoft.directory/applications/standard/read\n - allowedResourceActions:\n - microsoft.directory/groups/allProperties/read\n - microsoft.directory/groups/allProperties/read\n - microsoft.directory/groups/basic/update\n - microsoft.directory/groups/create\n - microsoft.directory/groups/delete\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", "properties": { "description": { "type": "string", @@ -6432,7 +6347,7 @@ } }, "azuread:index/directoryRole:DirectoryRole": { - "description": "Manages a Directory Role within Azure Active Directory. Directory Roles are also known as Administrator Roles.\n\nDirectory Roles are built-in to Azure Active Directory and are immutable. However, by default they are not activated in a tenant (except for the Global Administrator role). This resource ensures a directory role is activated from its associated role template, and exports the object ID of the role, so that role assignments can be made for it.\n\nOnce activated, directory roles cannot be deactivated and so this resource does not perform any actions on destroy.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.ReadWrite.Directory` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n*Activate a directory role by its template ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.DirectoryRole(\"example\", {templateId: \"00000000-0000-0000-0000-000000000000\"});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.DirectoryRole(\"example\", template_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.DirectoryRole(\"example\", new()\n {\n TemplateId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tTemplateId: pulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new DirectoryRole(\"example\", DirectoryRoleArgs.builder()\n .templateId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:DirectoryRole\n properties:\n templateId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Activate a directory role by display name*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.DirectoryRole(\"example\", {displayName: \"Printer administrator\"});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.DirectoryRole(\"example\", display_name=\"Printer administrator\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Printer administrator\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Printer administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new DirectoryRole(\"example\", DirectoryRoleArgs.builder()\n .displayName(\"Printer administrator\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:DirectoryRole\n properties:\n displayName: Printer administrator\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", + "description": "Manages a Directory Role within Azure Active Directory. Directory Roles are also known as Administrator Roles.\n\nDirectory Roles are built-in to Azure Active Directory and are immutable. However, by default they are not activated in a tenant (except for the Global Administrator role). This resource ensures a directory role is activated from its associated role template, and exports the object ID of the role, so that role assignments can be made for it.\n\nOnce activated, directory roles cannot be deactivated and so this resource does not perform any actions on destroy.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.ReadWrite.Directory` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n*Activate a directory role by its template ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.DirectoryRole(\"example\", {templateId: \"00000000-0000-0000-0000-000000000000\"});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.DirectoryRole(\"example\", template_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.DirectoryRole(\"example\", new()\n {\n TemplateId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tTemplateId: pulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new DirectoryRole(\"example\", DirectoryRoleArgs.builder()\n .templateId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:DirectoryRole\n properties:\n templateId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Activate a directory role by display name*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.DirectoryRole(\"example\", {displayName: \"Printer administrator\"});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.DirectoryRole(\"example\", display_name=\"Printer administrator\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Printer administrator\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Printer administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new DirectoryRole(\"example\", DirectoryRoleArgs.builder()\n .displayName(\"Printer administrator\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:DirectoryRole\n properties:\n displayName: Printer administrator\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", "properties": { "description": { "type": "string", @@ -6495,25 +6410,16 @@ } }, "azuread:index/directoryRoleAssignment:DirectoryRoleAssignment": { - "description": "Manages a single directory role assignment within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.ReadWrite.Directory` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n*Assignment for a built-in role*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleDirectoryRole = new azuread.DirectoryRole(\"example\", {displayName: \"Security administrator\"});\nconst exampleDirectoryRoleAssignment = new azuread.DirectoryRoleAssignment(\"example\", {\n roleId: exampleDirectoryRole.templateId,\n principalObjectId: example.then(example =\u003e example.objectId),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_directory_role = azuread.DirectoryRole(\"example\", display_name=\"Security administrator\")\nexample_directory_role_assignment = azuread.DirectoryRoleAssignment(\"example\",\n role_id=example_directory_role.template_id,\n principal_object_id=example.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleDirectoryRole = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Security administrator\",\n });\n\n var exampleDirectoryRoleAssignment = new AzureAD.DirectoryRoleAssignment(\"example\", new()\n {\n RoleId = exampleDirectoryRole.TemplateId,\n PrincipalObjectId = example.Apply(getUserResult =\u003e getUserResult.ObjectId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDirectoryRole, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Security administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewDirectoryRoleAssignment(ctx, \"example\", \u0026azuread.DirectoryRoleAssignmentArgs{\n\t\t\tRoleId: exampleDirectoryRole.TemplateId,\n\t\t\tPrincipalObjectId: pulumi.String(example.ObjectId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport com.pulumi.azuread.DirectoryRoleAssignment;\nimport com.pulumi.azuread.DirectoryRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleDirectoryRole = new DirectoryRole(\"exampleDirectoryRole\", DirectoryRoleArgs.builder()\n .displayName(\"Security administrator\")\n .build());\n\n var exampleDirectoryRoleAssignment = new DirectoryRoleAssignment(\"exampleDirectoryRoleAssignment\", DirectoryRoleAssignmentArgs.builder()\n .roleId(exampleDirectoryRole.templateId())\n .principalObjectId(example.applyValue(getUserResult -\u003e getUserResult.objectId()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleDirectoryRole:\n type: azuread:DirectoryRole\n name: example\n properties:\n displayName: Security administrator\n exampleDirectoryRoleAssignment:\n type: azuread:DirectoryRoleAssignment\n name: example\n properties:\n roleId: ${exampleDirectoryRole.templateId}\n principalObjectId: ${example.objectId}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e Note the use of the `template_id` attribute when referencing built-in roles.\n\n*Assignment for a custom role*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleCustomDirectoryRole = new azuread.CustomDirectoryRole(\"example\", {\n displayName: \"My Custom Role\",\n enabled: true,\n version: \"1.0\",\n permissions: [{\n allowedResourceActions: [\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/standard/read\",\n ],\n }],\n});\nconst exampleDirectoryRoleAssignment = new azuread.DirectoryRoleAssignment(\"example\", {\n roleId: exampleCustomDirectoryRole.objectId,\n principalObjectId: example.then(example =\u003e example.objectId),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_custom_directory_role = azuread.CustomDirectoryRole(\"example\",\n display_name=\"My Custom Role\",\n enabled=True,\n version=\"1.0\",\n permissions=[{\n \"allowed_resource_actions\": [\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/standard/read\",\n ],\n }])\nexample_directory_role_assignment = azuread.DirectoryRoleAssignment(\"example\",\n role_id=example_custom_directory_role.object_id,\n principal_object_id=example.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleCustomDirectoryRole = new AzureAD.CustomDirectoryRole(\"example\", new()\n {\n DisplayName = \"My Custom Role\",\n Enabled = true,\n Version = \"1.0\",\n Permissions = new[]\n {\n new AzureAD.Inputs.CustomDirectoryRolePermissionArgs\n {\n AllowedResourceActions = new[]\n {\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/standard/read\",\n },\n },\n },\n });\n\n var exampleDirectoryRoleAssignment = new AzureAD.DirectoryRoleAssignment(\"example\", new()\n {\n RoleId = exampleCustomDirectoryRole.ObjectId,\n PrincipalObjectId = example.Apply(getUserResult =\u003e getUserResult.ObjectId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCustomDirectoryRole, err := azuread.NewCustomDirectoryRole(ctx, \"example\", \u0026azuread.CustomDirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"My Custom Role\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tVersion: pulumi.String(\"1.0\"),\n\t\t\tPermissions: azuread.CustomDirectoryRolePermissionArray{\n\t\t\t\t\u0026azuread.CustomDirectoryRolePermissionArgs{\n\t\t\t\t\tAllowedResourceActions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/basic/update\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/standard/read\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewDirectoryRoleAssignment(ctx, \"example\", \u0026azuread.DirectoryRoleAssignmentArgs{\n\t\t\tRoleId: exampleCustomDirectoryRole.ObjectId,\n\t\t\tPrincipalObjectId: pulumi.String(example.ObjectId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.CustomDirectoryRole;\nimport com.pulumi.azuread.CustomDirectoryRoleArgs;\nimport com.pulumi.azuread.inputs.CustomDirectoryRolePermissionArgs;\nimport com.pulumi.azuread.DirectoryRoleAssignment;\nimport com.pulumi.azuread.DirectoryRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleCustomDirectoryRole = new CustomDirectoryRole(\"exampleCustomDirectoryRole\", CustomDirectoryRoleArgs.builder()\n .displayName(\"My Custom Role\")\n .enabled(true)\n .version(\"1.0\")\n .permissions(CustomDirectoryRolePermissionArgs.builder()\n .allowedResourceActions( \n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/standard/read\")\n .build())\n .build());\n\n var exampleDirectoryRoleAssignment = new DirectoryRoleAssignment(\"exampleDirectoryRoleAssignment\", DirectoryRoleAssignmentArgs.builder()\n .roleId(exampleCustomDirectoryRole.objectId())\n .principalObjectId(example.applyValue(getUserResult -\u003e getUserResult.objectId()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleCustomDirectoryRole:\n type: azuread:CustomDirectoryRole\n name: example\n properties:\n displayName: My Custom Role\n enabled: true\n version: '1.0'\n permissions:\n - allowedResourceActions:\n - microsoft.directory/applications/basic/update\n - microsoft.directory/applications/standard/read\n exampleDirectoryRoleAssignment:\n type: azuread:DirectoryRoleAssignment\n name: example\n properties:\n roleId: ${exampleCustomDirectoryRole.objectId}\n principalObjectId: ${example.objectId}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Scoped assignment for an application*\n\n## Import\n\nDirectory role assignments can be imported using the ID of the assignment, e.g.\n\n```sh\n$ pulumi import azuread:index/directoryRoleAssignment:DirectoryRoleAssignment example ePROZI_iKE653D_d6aoLHyr-lKgHI8ZGiIdz8CLVcng-1\n```\n\n", + "description": "Manages a single directory role assignment within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.ReadWrite.Directory` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n*Assignment for a built-in role*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleDirectoryRole = new azuread.DirectoryRole(\"example\", {displayName: \"Security administrator\"});\nconst exampleDirectoryRoleAssignment = new azuread.DirectoryRoleAssignment(\"example\", {\n roleId: exampleDirectoryRole.templateId,\n principalObjectId: example.then(example =\u003e example.objectId),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_directory_role = azuread.DirectoryRole(\"example\", display_name=\"Security administrator\")\nexample_directory_role_assignment = azuread.DirectoryRoleAssignment(\"example\",\n role_id=example_directory_role.template_id,\n principal_object_id=example.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleDirectoryRole = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Security administrator\",\n });\n\n var exampleDirectoryRoleAssignment = new AzureAD.DirectoryRoleAssignment(\"example\", new()\n {\n RoleId = exampleDirectoryRole.TemplateId,\n PrincipalObjectId = example.Apply(getUserResult =\u003e getUserResult.ObjectId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDirectoryRole, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Security administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewDirectoryRoleAssignment(ctx, \"example\", \u0026azuread.DirectoryRoleAssignmentArgs{\n\t\t\tRoleId: exampleDirectoryRole.TemplateId,\n\t\t\tPrincipalObjectId: pulumi.String(example.ObjectId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport com.pulumi.azuread.DirectoryRoleAssignment;\nimport com.pulumi.azuread.DirectoryRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleDirectoryRole = new DirectoryRole(\"exampleDirectoryRole\", DirectoryRoleArgs.builder()\n .displayName(\"Security administrator\")\n .build());\n\n var exampleDirectoryRoleAssignment = new DirectoryRoleAssignment(\"exampleDirectoryRoleAssignment\", DirectoryRoleAssignmentArgs.builder()\n .roleId(exampleDirectoryRole.templateId())\n .principalObjectId(example.applyValue(getUserResult -\u003e getUserResult.objectId()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleDirectoryRole:\n type: azuread:DirectoryRole\n name: example\n properties:\n displayName: Security administrator\n exampleDirectoryRoleAssignment:\n type: azuread:DirectoryRoleAssignment\n name: example\n properties:\n roleId: ${exampleDirectoryRole.templateId}\n principalObjectId: ${example.objectId}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e Note the use of the `template_id` attribute when referencing built-in roles.\n\n*Assignment for a custom role*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleCustomDirectoryRole = new azuread.CustomDirectoryRole(\"example\", {\n displayName: \"My Custom Role\",\n enabled: true,\n version: \"1.0\",\n permissions: [{\n allowedResourceActions: [\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/standard/read\",\n ],\n }],\n});\nconst exampleDirectoryRoleAssignment = new azuread.DirectoryRoleAssignment(\"example\", {\n roleId: exampleCustomDirectoryRole.objectId,\n principalObjectId: example.then(example =\u003e example.objectId),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_custom_directory_role = azuread.CustomDirectoryRole(\"example\",\n display_name=\"My Custom Role\",\n enabled=True,\n version=\"1.0\",\n permissions=[{\n \"allowed_resource_actions\": [\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/standard/read\",\n ],\n }])\nexample_directory_role_assignment = azuread.DirectoryRoleAssignment(\"example\",\n role_id=example_custom_directory_role.object_id,\n principal_object_id=example.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleCustomDirectoryRole = new AzureAD.CustomDirectoryRole(\"example\", new()\n {\n DisplayName = \"My Custom Role\",\n Enabled = true,\n Version = \"1.0\",\n Permissions = new[]\n {\n new AzureAD.Inputs.CustomDirectoryRolePermissionArgs\n {\n AllowedResourceActions = new[]\n {\n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/standard/read\",\n },\n },\n },\n });\n\n var exampleDirectoryRoleAssignment = new AzureAD.DirectoryRoleAssignment(\"example\", new()\n {\n RoleId = exampleCustomDirectoryRole.ObjectId,\n PrincipalObjectId = example.Apply(getUserResult =\u003e getUserResult.ObjectId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCustomDirectoryRole, err := azuread.NewCustomDirectoryRole(ctx, \"example\", \u0026azuread.CustomDirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"My Custom Role\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tVersion: pulumi.String(\"1.0\"),\n\t\t\tPermissions: azuread.CustomDirectoryRolePermissionArray{\n\t\t\t\t\u0026azuread.CustomDirectoryRolePermissionArgs{\n\t\t\t\t\tAllowedResourceActions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/basic/update\"),\n\t\t\t\t\t\tpulumi.String(\"microsoft.directory/applications/standard/read\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewDirectoryRoleAssignment(ctx, \"example\", \u0026azuread.DirectoryRoleAssignmentArgs{\n\t\t\tRoleId: exampleCustomDirectoryRole.ObjectId,\n\t\t\tPrincipalObjectId: pulumi.String(example.ObjectId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.CustomDirectoryRole;\nimport com.pulumi.azuread.CustomDirectoryRoleArgs;\nimport com.pulumi.azuread.inputs.CustomDirectoryRolePermissionArgs;\nimport com.pulumi.azuread.DirectoryRoleAssignment;\nimport com.pulumi.azuread.DirectoryRoleAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleCustomDirectoryRole = new CustomDirectoryRole(\"exampleCustomDirectoryRole\", CustomDirectoryRoleArgs.builder()\n .displayName(\"My Custom Role\")\n .enabled(true)\n .version(\"1.0\")\n .permissions(CustomDirectoryRolePermissionArgs.builder()\n .allowedResourceActions( \n \"microsoft.directory/applications/basic/update\",\n \"microsoft.directory/applications/standard/read\")\n .build())\n .build());\n\n var exampleDirectoryRoleAssignment = new DirectoryRoleAssignment(\"exampleDirectoryRoleAssignment\", DirectoryRoleAssignmentArgs.builder()\n .roleId(exampleCustomDirectoryRole.objectId())\n .principalObjectId(example.applyValue(getUserResult -\u003e getUserResult.objectId()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleCustomDirectoryRole:\n type: azuread:CustomDirectoryRole\n name: example\n properties:\n displayName: My Custom Role\n enabled: true\n version: '1.0'\n permissions:\n - allowedResourceActions:\n - microsoft.directory/applications/basic/update\n - microsoft.directory/applications/standard/read\n exampleDirectoryRoleAssignment:\n type: azuread:DirectoryRoleAssignment\n name: example\n properties:\n roleId: ${exampleCustomDirectoryRole.objectId}\n principalObjectId: ${example.objectId}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Scoped assignment for an application*\n\n## Import\n\nDirectory role assignments can be imported using the ID of the assignment, e.g.\n\n```sh\n$ pulumi import azuread:index/directoryRoleAssignment:DirectoryRoleAssignment example ePROZI_iKE653D_d6aoLHyr-lKgHI8ZGiIdz8CLVcng-1\n```\n\n", "properties": { "appScopeId": { "type": "string", "description": "Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directory_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0\u0026tabs=http) for example usage. Changing this forces a new resource to be created.\n" }, - "appScopeObjectId": { - "type": "string", - "description": "Identifier of the app-specific scope when the assignment scope is app-specific\n", - "deprecationMessage": "`app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider" - }, "directoryScopeId": { "type": "string", "description": "Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0\u0026tabs=http) for example usage. Changing this forces a new resource to be created.\n" }, - "directoryScopeObjectId": { - "type": "string", - "description": "Identifier of the directory object representing the scope of the assignment\n" - }, "principalObjectId": { "type": "string", "description": "The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created.\n" @@ -6525,9 +6431,7 @@ }, "required": [ "appScopeId", - "appScopeObjectId", "directoryScopeId", - "directoryScopeObjectId", "principalObjectId", "roleId" ], @@ -6537,22 +6441,11 @@ "description": "Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directory_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0\u0026tabs=http) for example usage. Changing this forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "appScopeObjectId": { - "type": "string", - "description": "Identifier of the app-specific scope when the assignment scope is app-specific\n", - "deprecationMessage": "`app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider", - "willReplaceOnChanges": true - }, "directoryScopeId": { "type": "string", "description": "Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0\u0026tabs=http) for example usage. Changing this forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "directoryScopeObjectId": { - "type": "string", - "description": "Identifier of the directory object representing the scope of the assignment\n", - "willReplaceOnChanges": true - }, "principalObjectId": { "type": "string", "description": "The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created.\n", @@ -6576,22 +6469,11 @@ "description": "Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directory_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0\u0026tabs=http) for example usage. Changing this forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "appScopeObjectId": { - "type": "string", - "description": "Identifier of the app-specific scope when the assignment scope is app-specific\n", - "deprecationMessage": "`app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider", - "willReplaceOnChanges": true - }, "directoryScopeId": { "type": "string", "description": "Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0\u0026tabs=http) for example usage. Changing this forces a new resource to be created.\n", "willReplaceOnChanges": true }, - "directoryScopeObjectId": { - "type": "string", - "description": "Identifier of the directory object representing the scope of the assignment\n", - "willReplaceOnChanges": true - }, "principalObjectId": { "type": "string", "description": "The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created.\n", @@ -6607,7 +6489,7 @@ } }, "azuread:index/directoryRoleEligibilityScheduleRequest:DirectoryRoleEligibilityScheduleRequest": { - "description": "Manages a single directory role eligibility schedule request within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nThe calling principal requires one of the following application roles: `RoleEligibilitySchedule.ReadWrite.Directory` or `RoleManagement.ReadWrite.Directory`.\n\nThe calling principal requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleDirectoryRole = new azuread.DirectoryRole(\"example\", {displayName: \"Application Administrator\"});\nconst exampleDirectoryRoleEligibilityScheduleRequest = new azuread.DirectoryRoleEligibilityScheduleRequest(\"example\", {\n roleDefinitionId: exampleDirectoryRole.templateId,\n principalId: exampleAzureadUser.objectId,\n directoryScopeId: \"/\",\n justification: \"Example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_directory_role = azuread.DirectoryRole(\"example\", display_name=\"Application Administrator\")\nexample_directory_role_eligibility_schedule_request = azuread.DirectoryRoleEligibilityScheduleRequest(\"example\",\n role_definition_id=example_directory_role.template_id,\n principal_id=example_azuread_user[\"objectId\"],\n directory_scope_id=\"/\",\n justification=\"Example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleDirectoryRole = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Application Administrator\",\n });\n\n var exampleDirectoryRoleEligibilityScheduleRequest = new AzureAD.DirectoryRoleEligibilityScheduleRequest(\"example\", new()\n {\n RoleDefinitionId = exampleDirectoryRole.TemplateId,\n PrincipalId = exampleAzureadUser.ObjectId,\n DirectoryScopeId = \"/\",\n Justification = \"Example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDirectoryRole, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Application Administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewDirectoryRoleEligibilityScheduleRequest(ctx, \"example\", \u0026azuread.DirectoryRoleEligibilityScheduleRequestArgs{\n\t\t\tRoleDefinitionId: exampleDirectoryRole.TemplateId,\n\t\t\tPrincipalId: pulumi.Any(exampleAzureadUser.ObjectId),\n\t\t\tDirectoryScopeId: pulumi.String(\"/\"),\n\t\t\tJustification: pulumi.String(\"Example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport com.pulumi.azuread.DirectoryRoleEligibilityScheduleRequest;\nimport com.pulumi.azuread.DirectoryRoleEligibilityScheduleRequestArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleDirectoryRole = new DirectoryRole(\"exampleDirectoryRole\", DirectoryRoleArgs.builder()\n .displayName(\"Application Administrator\")\n .build());\n\n var exampleDirectoryRoleEligibilityScheduleRequest = new DirectoryRoleEligibilityScheduleRequest(\"exampleDirectoryRoleEligibilityScheduleRequest\", DirectoryRoleEligibilityScheduleRequestArgs.builder()\n .roleDefinitionId(exampleDirectoryRole.templateId())\n .principalId(exampleAzureadUser.objectId())\n .directoryScopeId(\"/\")\n .justification(\"Example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleDirectoryRole:\n type: azuread:DirectoryRole\n name: example\n properties:\n displayName: Application Administrator\n exampleDirectoryRoleEligibilityScheduleRequest:\n type: azuread:DirectoryRoleEligibilityScheduleRequest\n name: example\n properties:\n roleDefinitionId: ${exampleDirectoryRole.templateId}\n principalId: ${exampleAzureadUser.objectId}\n directoryScopeId: /\n justification: Example\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e Note the use of the `template_id` attribute when referencing built-in roles.\n\n## Import\n\nDirectory role eligibility schedule requests can be imported using the ID of the assignment, e.g.\n\n```sh\n$ pulumi import azuread:index/directoryRoleEligibilityScheduleRequest:DirectoryRoleEligibilityScheduleRequest example 822ec710-4c9f-4f71-a27a-451759cc7522\n```\n\n", + "description": "Manages a single directory role eligibility schedule request within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nThe calling principal requires one of the following application roles: `RoleEligibilitySchedule.ReadWrite.Directory` or `RoleManagement.ReadWrite.Directory`.\n\nThe calling principal requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleDirectoryRole = new azuread.DirectoryRole(\"example\", {displayName: \"Application Administrator\"});\nconst exampleDirectoryRoleEligibilityScheduleRequest = new azuread.DirectoryRoleEligibilityScheduleRequest(\"example\", {\n roleDefinitionId: exampleDirectoryRole.templateId,\n principalId: exampleAzureadUser.objectId,\n directoryScopeId: \"/\",\n justification: \"Example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_directory_role = azuread.DirectoryRole(\"example\", display_name=\"Application Administrator\")\nexample_directory_role_eligibility_schedule_request = azuread.DirectoryRoleEligibilityScheduleRequest(\"example\",\n role_definition_id=example_directory_role.template_id,\n principal_id=example_azuread_user[\"objectId\"],\n directory_scope_id=\"/\",\n justification=\"Example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleDirectoryRole = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Application Administrator\",\n });\n\n var exampleDirectoryRoleEligibilityScheduleRequest = new AzureAD.DirectoryRoleEligibilityScheduleRequest(\"example\", new()\n {\n RoleDefinitionId = exampleDirectoryRole.TemplateId,\n PrincipalId = exampleAzureadUser.ObjectId,\n DirectoryScopeId = \"/\",\n Justification = \"Example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDirectoryRole, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Application Administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewDirectoryRoleEligibilityScheduleRequest(ctx, \"example\", \u0026azuread.DirectoryRoleEligibilityScheduleRequestArgs{\n\t\t\tRoleDefinitionId: exampleDirectoryRole.TemplateId,\n\t\t\tPrincipalId: pulumi.Any(exampleAzureadUser.ObjectId),\n\t\t\tDirectoryScopeId: pulumi.String(\"/\"),\n\t\t\tJustification: pulumi.String(\"Example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport com.pulumi.azuread.DirectoryRoleEligibilityScheduleRequest;\nimport com.pulumi.azuread.DirectoryRoleEligibilityScheduleRequestArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleDirectoryRole = new DirectoryRole(\"exampleDirectoryRole\", DirectoryRoleArgs.builder()\n .displayName(\"Application Administrator\")\n .build());\n\n var exampleDirectoryRoleEligibilityScheduleRequest = new DirectoryRoleEligibilityScheduleRequest(\"exampleDirectoryRoleEligibilityScheduleRequest\", DirectoryRoleEligibilityScheduleRequestArgs.builder()\n .roleDefinitionId(exampleDirectoryRole.templateId())\n .principalId(exampleAzureadUser.objectId())\n .directoryScopeId(\"/\")\n .justification(\"Example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleDirectoryRole:\n type: azuread:DirectoryRole\n name: example\n properties:\n displayName: Application Administrator\n exampleDirectoryRoleEligibilityScheduleRequest:\n type: azuread:DirectoryRoleEligibilityScheduleRequest\n name: example\n properties:\n roleDefinitionId: ${exampleDirectoryRole.templateId}\n principalId: ${exampleAzureadUser.objectId}\n directoryScopeId: /\n justification: Example\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e Note the use of the `template_id` attribute when referencing built-in roles.\n\n## Import\n\nDirectory role eligibility schedule requests can be imported using the ID of the assignment, e.g.\n\n```sh\n$ pulumi import azuread:index/directoryRoleEligibilityScheduleRequest:DirectoryRoleEligibilityScheduleRequest example 822ec710-4c9f-4f71-a27a-451759cc7522\n```\n\n", "properties": { "directoryScopeId": { "type": "string", @@ -6688,7 +6570,7 @@ } }, "azuread:index/directoryRoleMember:DirectoryRoleMember": { - "description": "Manages a single directory role membership (assignment) within Azure Active Directory.\n\n\u003e **Deprecation Warning:** This resource has been superseded by the azuread.DirectoryRoleAssignment resource and will be removed in version 3.0 of the AzureAD provider\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.ReadWrite.Directory` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleDirectoryRole = new azuread.DirectoryRole(\"example\", {displayName: \"Security administrator\"});\nconst exampleDirectoryRoleMember = new azuread.DirectoryRoleMember(\"example\", {\n roleObjectId: exampleDirectoryRole.objectId,\n memberObjectId: example.then(example =\u003e example.objectId),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_directory_role = azuread.DirectoryRole(\"example\", display_name=\"Security administrator\")\nexample_directory_role_member = azuread.DirectoryRoleMember(\"example\",\n role_object_id=example_directory_role.object_id,\n member_object_id=example.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleDirectoryRole = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Security administrator\",\n });\n\n var exampleDirectoryRoleMember = new AzureAD.DirectoryRoleMember(\"example\", new()\n {\n RoleObjectId = exampleDirectoryRole.ObjectId,\n MemberObjectId = example.Apply(getUserResult =\u003e getUserResult.ObjectId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDirectoryRole, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Security administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewDirectoryRoleMember(ctx, \"example\", \u0026azuread.DirectoryRoleMemberArgs{\n\t\t\tRoleObjectId: exampleDirectoryRole.ObjectId,\n\t\t\tMemberObjectId: pulumi.String(example.ObjectId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport com.pulumi.azuread.DirectoryRoleMember;\nimport com.pulumi.azuread.DirectoryRoleMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleDirectoryRole = new DirectoryRole(\"exampleDirectoryRole\", DirectoryRoleArgs.builder()\n .displayName(\"Security administrator\")\n .build());\n\n var exampleDirectoryRoleMember = new DirectoryRoleMember(\"exampleDirectoryRoleMember\", DirectoryRoleMemberArgs.builder()\n .roleObjectId(exampleDirectoryRole.objectId())\n .memberObjectId(example.applyValue(getUserResult -\u003e getUserResult.objectId()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleDirectoryRole:\n type: azuread:DirectoryRole\n name: example\n properties:\n displayName: Security administrator\n exampleDirectoryRoleMember:\n type: azuread:DirectoryRoleMember\n name: example\n properties:\n roleObjectId: ${exampleDirectoryRole.objectId}\n memberObjectId: ${example.objectId}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDirectory role members can be imported using the object ID of the role and the object ID of the member, e.g.\n\n```sh\n$ pulumi import azuread:index/directoryRoleMember:DirectoryRoleMember example 00000000-0000-0000-0000-000000000000/member/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Directory Role Object ID and the target Member Object ID in the format `{RoleObjectID}/member/{MemberObjectID}`.\n\n", + "description": "Manages a single directory role membership (assignment) within Azure Active Directory.\n\n\u003e **Deprecation Warning:** This resource has been superseded by the azuread.DirectoryRoleAssignment resource and will be removed in version 3.0 of the AzureAD provider\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.ReadWrite.Directory` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Privileged Role Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleDirectoryRole = new azuread.DirectoryRole(\"example\", {displayName: \"Security administrator\"});\nconst exampleDirectoryRoleMember = new azuread.DirectoryRoleMember(\"example\", {\n roleObjectId: exampleDirectoryRole.objectId,\n memberObjectId: example.then(example =\u003e example.objectId),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_directory_role = azuread.DirectoryRole(\"example\", display_name=\"Security administrator\")\nexample_directory_role_member = azuread.DirectoryRoleMember(\"example\",\n role_object_id=example_directory_role.object_id,\n member_object_id=example.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleDirectoryRole = new AzureAD.DirectoryRole(\"example\", new()\n {\n DisplayName = \"Security administrator\",\n });\n\n var exampleDirectoryRoleMember = new AzureAD.DirectoryRoleMember(\"example\", new()\n {\n RoleObjectId = exampleDirectoryRole.ObjectId,\n MemberObjectId = example.Apply(getUserResult =\u003e getUserResult.ObjectId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDirectoryRole, err := azuread.NewDirectoryRole(ctx, \"example\", \u0026azuread.DirectoryRoleArgs{\n\t\t\tDisplayName: pulumi.String(\"Security administrator\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewDirectoryRoleMember(ctx, \"example\", \u0026azuread.DirectoryRoleMemberArgs{\n\t\t\tRoleObjectId: exampleDirectoryRole.ObjectId,\n\t\t\tMemberObjectId: pulumi.String(example.ObjectId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.DirectoryRole;\nimport com.pulumi.azuread.DirectoryRoleArgs;\nimport com.pulumi.azuread.DirectoryRoleMember;\nimport com.pulumi.azuread.DirectoryRoleMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleDirectoryRole = new DirectoryRole(\"exampleDirectoryRole\", DirectoryRoleArgs.builder()\n .displayName(\"Security administrator\")\n .build());\n\n var exampleDirectoryRoleMember = new DirectoryRoleMember(\"exampleDirectoryRoleMember\", DirectoryRoleMemberArgs.builder()\n .roleObjectId(exampleDirectoryRole.objectId())\n .memberObjectId(example.applyValue(getUserResult -\u003e getUserResult.objectId()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleDirectoryRole:\n type: azuread:DirectoryRole\n name: example\n properties:\n displayName: Security administrator\n exampleDirectoryRoleMember:\n type: azuread:DirectoryRoleMember\n name: example\n properties:\n roleObjectId: ${exampleDirectoryRole.objectId}\n memberObjectId: ${example.objectId}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDirectory role members can be imported using the object ID of the role and the object ID of the member, e.g.\n\n```sh\n$ pulumi import azuread:index/directoryRoleMember:DirectoryRoleMember example 00000000-0000-0000-0000-000000000000/member/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Directory Role Object ID and the target Member Object ID in the format `{RoleObjectID}/member/{MemberObjectID}`.\n\n", "properties": { "memberObjectId": { "type": "string", @@ -6729,7 +6611,7 @@ } }, "azuread:index/group:Group": { - "description": "Manages a group within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Group.ReadWrite.All` or `Directory.ReadWrite.All`.\n\nAlternatively, if the authenticated service principal is also an owner of the group being managed, this resource can use the application role: `Group.Create`.\n\nIf using the `assignable_to_role` property, this resource additionally requires the `RoleManagement.ReadWrite.Directory` application role.\n\nIf specifying owners for a group, which are user principals, this resource additionally requires one of the following application roles: `User.Read.All`, `User.ReadWrite.All`, `Directory.Read.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Groups Administrator`, `User Administrator` or `Global Administrator`\n\nWhen creating this resource in administrative units exclusively, the role `Groups Administrator` is required to be scoped on any administrative unit used.\n\nThe `external_senders_allowed`, `auto_subscribe_new_members`, `hide_from_address_lists` and `hide_from_outlook_clients` properties can only be configured when authenticating as a user and cannot be configured when authenticating as a service principal. Additionally, the user being used for authentication must be a Member of the tenant where the group is being managed and _not_ a Guest. This is a known API issue; please see the [Microsoft Graph Known Issues](https://docs.microsoft.com/en-us/graph/known-issues#groups) official documentation.\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Group(\"example\", {\n displayName: \"example\",\n owners: [current.then(current =\u003e current.objectId)],\n securityEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.Group(\"example\",\n display_name=\"example\",\n owners=[current.object_id],\n security_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n SecurityEnabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"example\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .securityEnabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: example\n owners:\n - ${current.objectId}\n securityEnabled: true\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Microsoft 365 group*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst groupOwner = new azuread.User(\"group_owner\", {\n userPrincipalName: \"example-group-owner@example.com\",\n displayName: \"Group Owner\",\n mailNickname: \"example-group-owner\",\n password: \"SecretP@sswd99!\",\n});\nconst example = new azuread.Group(\"example\", {\n displayName: \"example\",\n mailEnabled: true,\n mailNickname: \"ExampleGroup\",\n securityEnabled: true,\n types: [\"Unified\"],\n owners: [\n current.then(current =\u003e current.objectId),\n groupOwner.objectId,\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\ngroup_owner = azuread.User(\"group_owner\",\n user_principal_name=\"example-group-owner@example.com\",\n display_name=\"Group Owner\",\n mail_nickname=\"example-group-owner\",\n password=\"SecretP@sswd99!\")\nexample = azuread.Group(\"example\",\n display_name=\"example\",\n mail_enabled=True,\n mail_nickname=\"ExampleGroup\",\n security_enabled=True,\n types=[\"Unified\"],\n owners=[\n current.object_id,\n group_owner.object_id,\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var groupOwner = new AzureAD.User(\"group_owner\", new()\n {\n UserPrincipalName = \"example-group-owner@example.com\",\n DisplayName = \"Group Owner\",\n MailNickname = \"example-group-owner\",\n Password = \"SecretP@sswd99!\",\n });\n\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example\",\n MailEnabled = true,\n MailNickname = \"ExampleGroup\",\n SecurityEnabled = true,\n Types = new[]\n {\n \"Unified\",\n },\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n groupOwner.ObjectId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tgroupOwner, err := azuread.NewUser(ctx, \"group_owner\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"example-group-owner@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"Group Owner\"),\n\t\t\tMailNickname: pulumi.String(\"example-group-owner\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tMailEnabled: pulumi.Bool(true),\n\t\t\tMailNickname: pulumi.String(\"ExampleGroup\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t\tTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Unified\"),\n\t\t\t},\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t\tgroupOwner.ObjectId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var groupOwner = new User(\"groupOwner\", UserArgs.builder()\n .userPrincipalName(\"example-group-owner@example.com\")\n .displayName(\"Group Owner\")\n .mailNickname(\"example-group-owner\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"example\")\n .mailEnabled(true)\n .mailNickname(\"ExampleGroup\")\n .securityEnabled(true)\n .types(\"Unified\")\n .owners( \n current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()),\n groupOwner.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n groupOwner:\n type: azuread:User\n name: group_owner\n properties:\n userPrincipalName: example-group-owner@example.com\n displayName: Group Owner\n mailNickname: example-group-owner\n password: SecretP@sswd99!\n example:\n type: azuread:Group\n properties:\n displayName: example\n mailEnabled: true\n mailNickname: ExampleGroup\n securityEnabled: true\n types:\n - Unified\n owners:\n - ${current.objectId}\n - ${groupOwner.objectId}\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Group with members*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nresources:\n example:\n type: azuread:User\n properties:\n displayName: J Doe\n owners:\n - ${current.objectId}\n password: notSecure123\n userPrincipalName: jdoe@example.com\n exampleGroup:\n type: azuread:Group\n name: example\n properties:\n displayName: MyGroup\n owners:\n - ${current.objectId}\n securityEnabled: true\n members:\n - ${example.objectId}\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Group with dynamic membership*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Group(\"example\", {\n displayName: \"MyGroup\",\n owners: [current.then(current =\u003e current.objectId)],\n securityEnabled: true,\n types: [\"DynamicMembership\"],\n dynamicMembership: {\n enabled: true,\n rule: \"user.department -eq \\\"Sales\\\"\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.Group(\"example\",\n display_name=\"MyGroup\",\n owners=[current.object_id],\n security_enabled=True,\n types=[\"DynamicMembership\"],\n dynamic_membership={\n \"enabled\": True,\n \"rule\": \"user.department -eq \\\"Sales\\\"\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"MyGroup\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n SecurityEnabled = true,\n Types = new[]\n {\n \"DynamicMembership\",\n },\n DynamicMembership = new AzureAD.Inputs.GroupDynamicMembershipArgs\n {\n Enabled = true,\n Rule = \"user.department -eq \\\"Sales\\\"\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"MyGroup\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t\tTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"DynamicMembership\"),\n\t\t\t},\n\t\t\tDynamicMembership: \u0026azuread.GroupDynamicMembershipArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\tRule: pulumi.String(\"user.department -eq \\\"Sales\\\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.inputs.GroupDynamicMembershipArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"MyGroup\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .securityEnabled(true)\n .types(\"DynamicMembership\")\n .dynamicMembership(GroupDynamicMembershipArgs.builder()\n .enabled(true)\n .rule(\"user.department -eq \\\"Sales\\\"\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: MyGroup\n owners:\n - ${current.objectId}\n securityEnabled: true\n types:\n - DynamicMembership\n dynamicMembership:\n enabled: true\n rule: user.department -eq \"Sales\"\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nGroups can be imported using their object ID, e.g.\n\n```sh\n$ pulumi import azuread:index/group:Group my_group 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages a group within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Group.ReadWrite.All` or `Directory.ReadWrite.All`.\n\nAlternatively, if the authenticated service principal is also an owner of the group being managed, this resource can use the application role: `Group.Create`.\n\nIf using the `assignable_to_role` property, this resource additionally requires the `RoleManagement.ReadWrite.Directory` application role.\n\nIf specifying owners for a group, which are user principals, this resource additionally requires one of the following application roles: `User.Read.All`, `User.ReadWrite.All`, `Directory.Read.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Groups Administrator`, `User Administrator` or `Global Administrator`\n\nWhen creating this resource in administrative units exclusively, the role `Groups Administrator` is required to be scoped on any administrative unit used.\n\nThe `external_senders_allowed`, `auto_subscribe_new_members`, `hide_from_address_lists` and `hide_from_outlook_clients` properties can only be configured when authenticating as a user and cannot be configured when authenticating as a service principal. Additionally, the user being used for authentication must be a Member of the tenant where the group is being managed and _not_ a Guest. This is a known API issue; please see the [Microsoft Graph Known Issues](https://docs.microsoft.com/en-us/graph/known-issues#groups) official documentation.\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Group(\"example\", {\n displayName: \"example\",\n owners: [current.then(current =\u003e current.objectId)],\n securityEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.Group(\"example\",\n display_name=\"example\",\n owners=[current.object_id],\n security_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n SecurityEnabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"example\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .securityEnabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: example\n owners:\n - ${current.objectId}\n securityEnabled: true\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Microsoft 365 group*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst groupOwner = new azuread.User(\"group_owner\", {\n userPrincipalName: \"example-group-owner@example.com\",\n displayName: \"Group Owner\",\n mailNickname: \"example-group-owner\",\n password: \"SecretP@sswd99!\",\n});\nconst example = new azuread.Group(\"example\", {\n displayName: \"example\",\n mailEnabled: true,\n mailNickname: \"ExampleGroup\",\n securityEnabled: true,\n types: [\"Unified\"],\n owners: [\n current.then(current =\u003e current.objectId),\n groupOwner.objectId,\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\ngroup_owner = azuread.User(\"group_owner\",\n user_principal_name=\"example-group-owner@example.com\",\n display_name=\"Group Owner\",\n mail_nickname=\"example-group-owner\",\n password=\"SecretP@sswd99!\")\nexample = azuread.Group(\"example\",\n display_name=\"example\",\n mail_enabled=True,\n mail_nickname=\"ExampleGroup\",\n security_enabled=True,\n types=[\"Unified\"],\n owners=[\n current.object_id,\n group_owner.object_id,\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var groupOwner = new AzureAD.User(\"group_owner\", new()\n {\n UserPrincipalName = \"example-group-owner@example.com\",\n DisplayName = \"Group Owner\",\n MailNickname = \"example-group-owner\",\n Password = \"SecretP@sswd99!\",\n });\n\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example\",\n MailEnabled = true,\n MailNickname = \"ExampleGroup\",\n SecurityEnabled = true,\n Types = new[]\n {\n \"Unified\",\n },\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n groupOwner.ObjectId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tgroupOwner, err := azuread.NewUser(ctx, \"group_owner\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"example-group-owner@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"Group Owner\"),\n\t\t\tMailNickname: pulumi.String(\"example-group-owner\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tMailEnabled: pulumi.Bool(true),\n\t\t\tMailNickname: pulumi.String(\"ExampleGroup\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t\tTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Unified\"),\n\t\t\t},\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t\tgroupOwner.ObjectId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var groupOwner = new User(\"groupOwner\", UserArgs.builder()\n .userPrincipalName(\"example-group-owner@example.com\")\n .displayName(\"Group Owner\")\n .mailNickname(\"example-group-owner\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"example\")\n .mailEnabled(true)\n .mailNickname(\"ExampleGroup\")\n .securityEnabled(true)\n .types(\"Unified\")\n .owners( \n current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()),\n groupOwner.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n groupOwner:\n type: azuread:User\n name: group_owner\n properties:\n userPrincipalName: example-group-owner@example.com\n displayName: Group Owner\n mailNickname: example-group-owner\n password: SecretP@sswd99!\n example:\n type: azuread:Group\n properties:\n displayName: example\n mailEnabled: true\n mailNickname: ExampleGroup\n securityEnabled: true\n types:\n - Unified\n owners:\n - ${current.objectId}\n - ${groupOwner.objectId}\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Group with members*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nresources:\n example:\n type: azuread:User\n properties:\n displayName: J Doe\n owners:\n - ${current.objectId}\n password: notSecure123\n userPrincipalName: jdoe@example.com\n exampleGroup:\n type: azuread:Group\n name: example\n properties:\n displayName: MyGroup\n owners:\n - ${current.objectId}\n securityEnabled: true\n members:\n - ${example.objectId}\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Group with dynamic membership*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Group(\"example\", {\n displayName: \"MyGroup\",\n owners: [current.then(current =\u003e current.objectId)],\n securityEnabled: true,\n types: [\"DynamicMembership\"],\n dynamicMembership: {\n enabled: true,\n rule: \"user.department -eq \\\"Sales\\\"\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.Group(\"example\",\n display_name=\"MyGroup\",\n owners=[current.object_id],\n security_enabled=True,\n types=[\"DynamicMembership\"],\n dynamic_membership={\n \"enabled\": True,\n \"rule\": \"user.department -eq \\\"Sales\\\"\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"MyGroup\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n SecurityEnabled = true,\n Types = new[]\n {\n \"DynamicMembership\",\n },\n DynamicMembership = new AzureAD.Inputs.GroupDynamicMembershipArgs\n {\n Enabled = true,\n Rule = \"user.department -eq \\\"Sales\\\"\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"MyGroup\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t\tTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"DynamicMembership\"),\n\t\t\t},\n\t\t\tDynamicMembership: \u0026azuread.GroupDynamicMembershipArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\tRule: pulumi.String(\"user.department -eq \\\"Sales\\\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.inputs.GroupDynamicMembershipArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"MyGroup\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .securityEnabled(true)\n .types(\"DynamicMembership\")\n .dynamicMembership(GroupDynamicMembershipArgs.builder()\n .enabled(true)\n .rule(\"user.department -eq \\\"Sales\\\"\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: MyGroup\n owners:\n - ${current.objectId}\n securityEnabled: true\n types:\n - DynamicMembership\n dynamicMembership:\n enabled: true\n rule: user.department -eq \"Sales\"\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nGroups can be imported using their object ID, e.g.\n\n```sh\n$ pulumi import azuread:index/group:Group my_group 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "administrativeUnitIds": { "type": "array", @@ -7172,7 +7054,7 @@ } }, "azuread:index/groupMember:GroupMember": { - "description": "Manages a single group membership within Azure Active Directory.\n\n\u003e **Warning** Do not use this resource at the same time as the `members` property of the `azuread.Group` resource for the same group. Doing so will cause a conflict and group members will be removed.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Group.ReadWrite.All` or `Directory.ReadWrite.All`.\n\nHowever, if the authenticated service principal is an owner of the group being managed, an application role is not required.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Groups Administrator`, `User Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleGroup = new azuread.Group(\"example\", {\n displayName: \"my_group\",\n securityEnabled: true,\n});\nconst exampleGroupMember = new azuread.GroupMember(\"example\", {\n groupObjectId: exampleGroup.id,\n memberObjectId: example.then(example =\u003e example.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_group = azuread.Group(\"example\",\n display_name=\"my_group\",\n security_enabled=True)\nexample_group_member = azuread.GroupMember(\"example\",\n group_object_id=example_group.id,\n member_object_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleGroup = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"my_group\",\n SecurityEnabled = true,\n });\n\n var exampleGroupMember = new AzureAD.GroupMember(\"example\", new()\n {\n GroupObjectId = exampleGroup.Id,\n MemberObjectId = example.Apply(getUserResult =\u003e getUserResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGroup, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"my_group\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroupMember(ctx, \"example\", \u0026azuread.GroupMemberArgs{\n\t\t\tGroupObjectId: exampleGroup.ID(),\n\t\t\tMemberObjectId: pulumi.String(example.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.GroupMember;\nimport com.pulumi.azuread.GroupMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleGroup = new Group(\"exampleGroup\", GroupArgs.builder()\n .displayName(\"my_group\")\n .securityEnabled(true)\n .build());\n\n var exampleGroupMember = new GroupMember(\"exampleGroupMember\", GroupMemberArgs.builder()\n .groupObjectId(exampleGroup.id())\n .memberObjectId(example.applyValue(getUserResult -\u003e getUserResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroup:\n type: azuread:Group\n name: example\n properties:\n displayName: my_group\n securityEnabled: true\n exampleGroupMember:\n type: azuread:GroupMember\n name: example\n properties:\n groupObjectId: ${exampleGroup.id}\n memberObjectId: ${example.id}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nGroup members can be imported using the object ID of the group and the object ID of the member, e.g.\n\n```sh\n$ pulumi import azuread:index/groupMember:GroupMember example 00000000-0000-0000-0000-000000000000/member/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Azure AD Group Object ID and the target Member Object ID in the format `{GroupObjectID}/member/{MemberObjectID}`.\n\n", + "description": "Manages a single group membership within Azure Active Directory.\n\n\u003e **Warning** Do not use this resource at the same time as the `members` property of the `azuread.Group` resource for the same group. Doing so will cause a conflict and group members will be removed.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Group.ReadWrite.All` or `Directory.ReadWrite.All`.\n\nHowever, if the authenticated service principal is an owner of the group being managed, an application role is not required.\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Groups Administrator`, `User Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"jdoe@example.com\",\n});\nconst exampleGroup = new azuread.Group(\"example\", {\n displayName: \"my_group\",\n securityEnabled: true,\n});\nconst exampleGroupMember = new azuread.GroupMember(\"example\", {\n groupObjectId: exampleGroup.id,\n memberObjectId: example.then(example =\u003e example.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"jdoe@example.com\")\nexample_group = azuread.Group(\"example\",\n display_name=\"my_group\",\n security_enabled=True)\nexample_group_member = azuread.GroupMember(\"example\",\n group_object_id=example_group.id,\n member_object_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n });\n\n var exampleGroup = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"my_group\",\n SecurityEnabled = true,\n });\n\n var exampleGroupMember = new AzureAD.GroupMember(\"example\", new()\n {\n GroupObjectId = exampleGroup.Id,\n MemberObjectId = example.Apply(getUserResult =\u003e getUserResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"jdoe@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGroup, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"my_group\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroupMember(ctx, \"example\", \u0026azuread.GroupMemberArgs{\n\t\t\tGroupObjectId: exampleGroup.ID(),\n\t\t\tMemberObjectId: pulumi.String(example.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.GroupMember;\nimport com.pulumi.azuread.GroupMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .build());\n\n var exampleGroup = new Group(\"exampleGroup\", GroupArgs.builder()\n .displayName(\"my_group\")\n .securityEnabled(true)\n .build());\n\n var exampleGroupMember = new GroupMember(\"exampleGroupMember\", GroupMemberArgs.builder()\n .groupObjectId(exampleGroup.id())\n .memberObjectId(example.applyValue(getUserResult -\u003e getUserResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroup:\n type: azuread:Group\n name: example\n properties:\n displayName: my_group\n securityEnabled: true\n exampleGroupMember:\n type: azuread:GroupMember\n name: example\n properties:\n groupObjectId: ${exampleGroup.id}\n memberObjectId: ${example.id}\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: jdoe@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nGroup members can be imported using the object ID of the group and the object ID of the member, e.g.\n\n```sh\n$ pulumi import azuread:index/groupMember:GroupMember example 00000000-0000-0000-0000-000000000000/member/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Azure AD Group Object ID and the target Member Object ID in the format `{GroupObjectID}/member/{MemberObjectID}`.\n\n", "properties": { "groupObjectId": { "type": "string", @@ -7221,7 +7103,7 @@ } }, "azuread:index/groupRoleManagementPolicy:GroupRoleManagementPolicy": { - "description": "Manage a role policy for an Azure AD group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the `RoleManagementPolicy.ReadWrite.AzureADGroup` Microsoft Graph API permissions.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or the `Privileged Role Administrator` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst member = new azuread.User(\"member\", {\n userPrincipalName: \"jdoe@example.com\",\n displayName: \"J. Doe\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\nconst exampleGroupRoleManagementPolicy = new azuread.GroupRoleManagementPolicy(\"example\", {\n groupId: example.id,\n roleId: \"member\",\n activeAssignmentRules: {\n expireAfter: \"P365D\",\n },\n eligibleAssignmentRules: {\n expirationRequired: false,\n },\n notificationRules: {\n eligibleAssignments: {\n approverNotifications: {\n notificationLevel: \"Critical\",\n defaultRecipients: false,\n additionalRecipients: [\n \"someone@example.com\",\n \"someone.else@example.com\",\n ],\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nmember = azuread.User(\"member\",\n user_principal_name=\"jdoe@example.com\",\n display_name=\"J. Doe\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\nexample_group_role_management_policy = azuread.GroupRoleManagementPolicy(\"example\",\n group_id=example.id,\n role_id=\"member\",\n active_assignment_rules={\n \"expire_after\": \"P365D\",\n },\n eligible_assignment_rules={\n \"expiration_required\": False,\n },\n notification_rules={\n \"eligible_assignments\": {\n \"approver_notifications\": {\n \"notification_level\": \"Critical\",\n \"default_recipients\": False,\n \"additional_recipients\": [\n \"someone@example.com\",\n \"someone.else@example.com\",\n ],\n },\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var member = new AzureAD.User(\"member\", new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n DisplayName = \"J. Doe\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n var exampleGroupRoleManagementPolicy = new AzureAD.GroupRoleManagementPolicy(\"example\", new()\n {\n GroupId = example.Id,\n RoleId = \"member\",\n ActiveAssignmentRules = new AzureAD.Inputs.GroupRoleManagementPolicyActiveAssignmentRulesArgs\n {\n ExpireAfter = \"P365D\",\n },\n EligibleAssignmentRules = new AzureAD.Inputs.GroupRoleManagementPolicyEligibleAssignmentRulesArgs\n {\n ExpirationRequired = false,\n },\n NotificationRules = new AzureAD.Inputs.GroupRoleManagementPolicyNotificationRulesArgs\n {\n EligibleAssignments = new AzureAD.Inputs.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsArgs\n {\n ApproverNotifications = new AzureAD.Inputs.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsArgs\n {\n NotificationLevel = \"Critical\",\n DefaultRecipients = false,\n AdditionalRecipients = new[]\n {\n \"someone@example.com\",\n \"someone.else@example.com\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewUser(ctx, \"member\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroupRoleManagementPolicy(ctx, \"example\", \u0026azuread.GroupRoleManagementPolicyArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tRoleId: pulumi.String(\"member\"),\n\t\t\tActiveAssignmentRules: \u0026azuread.GroupRoleManagementPolicyActiveAssignmentRulesArgs{\n\t\t\t\tExpireAfter: pulumi.String(\"P365D\"),\n\t\t\t},\n\t\t\tEligibleAssignmentRules: \u0026azuread.GroupRoleManagementPolicyEligibleAssignmentRulesArgs{\n\t\t\t\tExpirationRequired: pulumi.Bool(false),\n\t\t\t},\n\t\t\tNotificationRules: \u0026azuread.GroupRoleManagementPolicyNotificationRulesArgs{\n\t\t\t\tEligibleAssignments: \u0026azuread.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsArgs{\n\t\t\t\t\tApproverNotifications: \u0026azuread.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsArgs{\n\t\t\t\t\t\tNotificationLevel: pulumi.String(\"Critical\"),\n\t\t\t\t\t\tDefaultRecipients: pulumi.Bool(false),\n\t\t\t\t\t\tAdditionalRecipients: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"someone@example.com\"),\n\t\t\t\t\t\t\tpulumi.String(\"someone.else@example.com\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.GroupRoleManagementPolicy;\nimport com.pulumi.azuread.GroupRoleManagementPolicyArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyActiveAssignmentRulesArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyEligibleAssignmentRulesArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyNotificationRulesArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n var member = new User(\"member\", UserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .displayName(\"J. Doe\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var exampleGroupRoleManagementPolicy = new GroupRoleManagementPolicy(\"exampleGroupRoleManagementPolicy\", GroupRoleManagementPolicyArgs.builder()\n .groupId(example.id())\n .roleId(\"member\")\n .activeAssignmentRules(GroupRoleManagementPolicyActiveAssignmentRulesArgs.builder()\n .expireAfter(\"P365D\")\n .build())\n .eligibleAssignmentRules(GroupRoleManagementPolicyEligibleAssignmentRulesArgs.builder()\n .expirationRequired(false)\n .build())\n .notificationRules(GroupRoleManagementPolicyNotificationRulesArgs.builder()\n .eligibleAssignments(GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsArgs.builder()\n .approverNotifications(GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsArgs.builder()\n .notificationLevel(\"Critical\")\n .defaultRecipients(false)\n .additionalRecipients( \n \"someone@example.com\",\n \"someone.else@example.com\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\n member:\n type: azuread:User\n properties:\n userPrincipalName: jdoe@example.com\n displayName: J. Doe\n mailNickname: jdoe\n password: SecretP@sswd99!\n exampleGroupRoleManagementPolicy:\n type: azuread:GroupRoleManagementPolicy\n name: example\n properties:\n groupId: ${example.id}\n roleId: member\n activeAssignmentRules:\n expireAfter: P365D\n eligibleAssignmentRules:\n expirationRequired: false\n notificationRules:\n eligibleAssignments:\n approverNotifications:\n notificationLevel: Critical\n defaultRecipients: false\n additionalRecipients:\n - someone@example.com\n - someone.else@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBecause these policies are created automatically by Entra ID, they will auto-import on first use.\n\n", + "description": "Manage a role policy for an Azure AD group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the `RoleManagementPolicy.ReadWrite.AzureADGroup` Microsoft Graph API permissions.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or the `Privileged Role Administrator` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst member = new azuread.User(\"member\", {\n userPrincipalName: \"jdoe@example.com\",\n displayName: \"J. Doe\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\nconst exampleGroupRoleManagementPolicy = new azuread.GroupRoleManagementPolicy(\"example\", {\n groupId: example.id,\n roleId: \"member\",\n activeAssignmentRules: {\n expireAfter: \"P365D\",\n },\n eligibleAssignmentRules: {\n expirationRequired: false,\n },\n notificationRules: {\n eligibleAssignments: {\n approverNotifications: {\n notificationLevel: \"Critical\",\n defaultRecipients: false,\n additionalRecipients: [\n \"someone@example.com\",\n \"someone.else@example.com\",\n ],\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nmember = azuread.User(\"member\",\n user_principal_name=\"jdoe@example.com\",\n display_name=\"J. Doe\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\nexample_group_role_management_policy = azuread.GroupRoleManagementPolicy(\"example\",\n group_id=example.id,\n role_id=\"member\",\n active_assignment_rules={\n \"expire_after\": \"P365D\",\n },\n eligible_assignment_rules={\n \"expiration_required\": False,\n },\n notification_rules={\n \"eligible_assignments\": {\n \"approver_notifications\": {\n \"notification_level\": \"Critical\",\n \"default_recipients\": False,\n \"additional_recipients\": [\n \"someone@example.com\",\n \"someone.else@example.com\",\n ],\n },\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var member = new AzureAD.User(\"member\", new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n DisplayName = \"J. Doe\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n var exampleGroupRoleManagementPolicy = new AzureAD.GroupRoleManagementPolicy(\"example\", new()\n {\n GroupId = example.Id,\n RoleId = \"member\",\n ActiveAssignmentRules = new AzureAD.Inputs.GroupRoleManagementPolicyActiveAssignmentRulesArgs\n {\n ExpireAfter = \"P365D\",\n },\n EligibleAssignmentRules = new AzureAD.Inputs.GroupRoleManagementPolicyEligibleAssignmentRulesArgs\n {\n ExpirationRequired = false,\n },\n NotificationRules = new AzureAD.Inputs.GroupRoleManagementPolicyNotificationRulesArgs\n {\n EligibleAssignments = new AzureAD.Inputs.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsArgs\n {\n ApproverNotifications = new AzureAD.Inputs.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsArgs\n {\n NotificationLevel = \"Critical\",\n DefaultRecipients = false,\n AdditionalRecipients = new[]\n {\n \"someone@example.com\",\n \"someone.else@example.com\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewUser(ctx, \"member\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewGroupRoleManagementPolicy(ctx, \"example\", \u0026azuread.GroupRoleManagementPolicyArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tRoleId: pulumi.String(\"member\"),\n\t\t\tActiveAssignmentRules: \u0026azuread.GroupRoleManagementPolicyActiveAssignmentRulesArgs{\n\t\t\t\tExpireAfter: pulumi.String(\"P365D\"),\n\t\t\t},\n\t\t\tEligibleAssignmentRules: \u0026azuread.GroupRoleManagementPolicyEligibleAssignmentRulesArgs{\n\t\t\t\tExpirationRequired: pulumi.Bool(false),\n\t\t\t},\n\t\t\tNotificationRules: \u0026azuread.GroupRoleManagementPolicyNotificationRulesArgs{\n\t\t\t\tEligibleAssignments: \u0026azuread.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsArgs{\n\t\t\t\t\tApproverNotifications: \u0026azuread.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsArgs{\n\t\t\t\t\t\tNotificationLevel: pulumi.String(\"Critical\"),\n\t\t\t\t\t\tDefaultRecipients: pulumi.Bool(false),\n\t\t\t\t\t\tAdditionalRecipients: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"someone@example.com\"),\n\t\t\t\t\t\t\tpulumi.String(\"someone.else@example.com\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.GroupRoleManagementPolicy;\nimport com.pulumi.azuread.GroupRoleManagementPolicyArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyActiveAssignmentRulesArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyEligibleAssignmentRulesArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyNotificationRulesArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsArgs;\nimport com.pulumi.azuread.inputs.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n var member = new User(\"member\", UserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .displayName(\"J. Doe\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var exampleGroupRoleManagementPolicy = new GroupRoleManagementPolicy(\"exampleGroupRoleManagementPolicy\", GroupRoleManagementPolicyArgs.builder()\n .groupId(example.id())\n .roleId(\"member\")\n .activeAssignmentRules(GroupRoleManagementPolicyActiveAssignmentRulesArgs.builder()\n .expireAfter(\"P365D\")\n .build())\n .eligibleAssignmentRules(GroupRoleManagementPolicyEligibleAssignmentRulesArgs.builder()\n .expirationRequired(false)\n .build())\n .notificationRules(GroupRoleManagementPolicyNotificationRulesArgs.builder()\n .eligibleAssignments(GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsArgs.builder()\n .approverNotifications(GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsArgs.builder()\n .notificationLevel(\"Critical\")\n .defaultRecipients(false)\n .additionalRecipients( \n \"someone@example.com\",\n \"someone.else@example.com\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\n member:\n type: azuread:User\n properties:\n userPrincipalName: jdoe@example.com\n displayName: J. Doe\n mailNickname: jdoe\n password: SecretP@sswd99!\n exampleGroupRoleManagementPolicy:\n type: azuread:GroupRoleManagementPolicy\n name: example\n properties:\n groupId: ${example.id}\n roleId: member\n activeAssignmentRules:\n expireAfter: P365D\n eligibleAssignmentRules:\n expirationRequired: false\n notificationRules:\n eligibleAssignments:\n approverNotifications:\n notificationLevel: Critical\n defaultRecipients: false\n additionalRecipients:\n - someone@example.com\n - someone.else@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBecause these policies are created automatically by Entra ID, they will auto-import on first use.\n\n", "properties": { "activationRules": { "$ref": "#/types/azuread:index/GroupRoleManagementPolicyActivationRules:GroupRoleManagementPolicyActivationRules", @@ -7340,7 +7222,7 @@ } }, "azuread:index/invitation:Invitation": { - "description": "Manages an invitation of a guest user within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `User.Invite.All`, `User.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Guest Inviter`, `User Administrator` or `Global Administrator`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Invitation(\"example\", {\n userEmailAddress: \"jdoe@example.com\",\n redirectUrl: \"https://portal.azure.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Invitation(\"example\",\n user_email_address=\"jdoe@example.com\",\n redirect_url=\"https://portal.azure.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Invitation(\"example\", new()\n {\n UserEmailAddress = \"jdoe@example.com\",\n RedirectUrl = \"https://portal.azure.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewInvitation(ctx, \"example\", \u0026azuread.InvitationArgs{\n\t\t\tUserEmailAddress: pulumi.String(\"jdoe@example.com\"),\n\t\t\tRedirectUrl: pulumi.String(\"https://portal.azure.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Invitation;\nimport com.pulumi.azuread.InvitationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Invitation(\"example\", InvitationArgs.builder()\n .userEmailAddress(\"jdoe@example.com\")\n .redirectUrl(\"https://portal.azure.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Invitation\n properties:\n userEmailAddress: jdoe@example.com\n redirectUrl: https://portal.azure.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Invitation with standard message*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Invitation(\"example\", {\n userEmailAddress: \"jdoe@example.com\",\n redirectUrl: \"https://portal.azure.com\",\n message: {\n language: \"en-US\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Invitation(\"example\",\n user_email_address=\"jdoe@example.com\",\n redirect_url=\"https://portal.azure.com\",\n message={\n \"language\": \"en-US\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Invitation(\"example\", new()\n {\n UserEmailAddress = \"jdoe@example.com\",\n RedirectUrl = \"https://portal.azure.com\",\n Message = new AzureAD.Inputs.InvitationMessageArgs\n {\n Language = \"en-US\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewInvitation(ctx, \"example\", \u0026azuread.InvitationArgs{\n\t\t\tUserEmailAddress: pulumi.String(\"jdoe@example.com\"),\n\t\t\tRedirectUrl: pulumi.String(\"https://portal.azure.com\"),\n\t\t\tMessage: \u0026azuread.InvitationMessageArgs{\n\t\t\t\tLanguage: pulumi.String(\"en-US\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Invitation;\nimport com.pulumi.azuread.InvitationArgs;\nimport com.pulumi.azuread.inputs.InvitationMessageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Invitation(\"example\", InvitationArgs.builder()\n .userEmailAddress(\"jdoe@example.com\")\n .redirectUrl(\"https://portal.azure.com\")\n .message(InvitationMessageArgs.builder()\n .language(\"en-US\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Invitation\n properties:\n userEmailAddress: jdoe@example.com\n redirectUrl: https://portal.azure.com\n message:\n language: en-US\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Invitation with custom message body and an additional recipient*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Invitation(\"example\", {\n userDisplayName: \"Bob Bobson\",\n userEmailAddress: \"bbobson@example.com\",\n redirectUrl: \"https://portal.azure.com\",\n message: {\n additionalRecipients: \"aaliceberg@example.com\",\n body: \"Hello there! You are invited to join my Azure tenant!\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Invitation(\"example\",\n user_display_name=\"Bob Bobson\",\n user_email_address=\"bbobson@example.com\",\n redirect_url=\"https://portal.azure.com\",\n message={\n \"additional_recipients\": \"aaliceberg@example.com\",\n \"body\": \"Hello there! You are invited to join my Azure tenant!\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Invitation(\"example\", new()\n {\n UserDisplayName = \"Bob Bobson\",\n UserEmailAddress = \"bbobson@example.com\",\n RedirectUrl = \"https://portal.azure.com\",\n Message = new AzureAD.Inputs.InvitationMessageArgs\n {\n AdditionalRecipients = \"aaliceberg@example.com\",\n Body = \"Hello there! You are invited to join my Azure tenant!\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewInvitation(ctx, \"example\", \u0026azuread.InvitationArgs{\n\t\t\tUserDisplayName: pulumi.String(\"Bob Bobson\"),\n\t\t\tUserEmailAddress: pulumi.String(\"bbobson@example.com\"),\n\t\t\tRedirectUrl: pulumi.String(\"https://portal.azure.com\"),\n\t\t\tMessage: \u0026azuread.InvitationMessageArgs{\n\t\t\t\tAdditionalRecipients: pulumi.String(\"aaliceberg@example.com\"),\n\t\t\t\tBody: pulumi.String(\"Hello there! You are invited to join my Azure tenant!\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Invitation;\nimport com.pulumi.azuread.InvitationArgs;\nimport com.pulumi.azuread.inputs.InvitationMessageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Invitation(\"example\", InvitationArgs.builder()\n .userDisplayName(\"Bob Bobson\")\n .userEmailAddress(\"bbobson@example.com\")\n .redirectUrl(\"https://portal.azure.com\")\n .message(InvitationMessageArgs.builder()\n .additionalRecipients(\"aaliceberg@example.com\")\n .body(\"Hello there! You are invited to join my Azure tenant!\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Invitation\n properties:\n userDisplayName: Bob Bobson\n userEmailAddress: bbobson@example.com\n redirectUrl: https://portal.azure.com\n message:\n additionalRecipients: aaliceberg@example.com\n body: Hello there! You are invited to join my Azure tenant!\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", + "description": "Manages an invitation of a guest user within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `User.Invite.All`, `User.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Guest Inviter`, `User Administrator` or `Global Administrator`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Invitation(\"example\", {\n userEmailAddress: \"jdoe@example.com\",\n redirectUrl: \"https://portal.azure.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Invitation(\"example\",\n user_email_address=\"jdoe@example.com\",\n redirect_url=\"https://portal.azure.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Invitation(\"example\", new()\n {\n UserEmailAddress = \"jdoe@example.com\",\n RedirectUrl = \"https://portal.azure.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewInvitation(ctx, \"example\", \u0026azuread.InvitationArgs{\n\t\t\tUserEmailAddress: pulumi.String(\"jdoe@example.com\"),\n\t\t\tRedirectUrl: pulumi.String(\"https://portal.azure.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Invitation;\nimport com.pulumi.azuread.InvitationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Invitation(\"example\", InvitationArgs.builder()\n .userEmailAddress(\"jdoe@example.com\")\n .redirectUrl(\"https://portal.azure.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Invitation\n properties:\n userEmailAddress: jdoe@example.com\n redirectUrl: https://portal.azure.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Invitation with standard message*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Invitation(\"example\", {\n userEmailAddress: \"jdoe@example.com\",\n redirectUrl: \"https://portal.azure.com\",\n message: {\n language: \"en-US\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Invitation(\"example\",\n user_email_address=\"jdoe@example.com\",\n redirect_url=\"https://portal.azure.com\",\n message={\n \"language\": \"en-US\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Invitation(\"example\", new()\n {\n UserEmailAddress = \"jdoe@example.com\",\n RedirectUrl = \"https://portal.azure.com\",\n Message = new AzureAD.Inputs.InvitationMessageArgs\n {\n Language = \"en-US\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewInvitation(ctx, \"example\", \u0026azuread.InvitationArgs{\n\t\t\tUserEmailAddress: pulumi.String(\"jdoe@example.com\"),\n\t\t\tRedirectUrl: pulumi.String(\"https://portal.azure.com\"),\n\t\t\tMessage: \u0026azuread.InvitationMessageArgs{\n\t\t\t\tLanguage: pulumi.String(\"en-US\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Invitation;\nimport com.pulumi.azuread.InvitationArgs;\nimport com.pulumi.azuread.inputs.InvitationMessageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Invitation(\"example\", InvitationArgs.builder()\n .userEmailAddress(\"jdoe@example.com\")\n .redirectUrl(\"https://portal.azure.com\")\n .message(InvitationMessageArgs.builder()\n .language(\"en-US\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Invitation\n properties:\n userEmailAddress: jdoe@example.com\n redirectUrl: https://portal.azure.com\n message:\n language: en-US\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Invitation with custom message body and an additional recipient*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Invitation(\"example\", {\n userDisplayName: \"Bob Bobson\",\n userEmailAddress: \"bbobson@example.com\",\n redirectUrl: \"https://portal.azure.com\",\n message: {\n additionalRecipients: \"aaliceberg@example.com\",\n body: \"Hello there! You are invited to join my Azure tenant!\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Invitation(\"example\",\n user_display_name=\"Bob Bobson\",\n user_email_address=\"bbobson@example.com\",\n redirect_url=\"https://portal.azure.com\",\n message={\n \"additional_recipients\": \"aaliceberg@example.com\",\n \"body\": \"Hello there! You are invited to join my Azure tenant!\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Invitation(\"example\", new()\n {\n UserDisplayName = \"Bob Bobson\",\n UserEmailAddress = \"bbobson@example.com\",\n RedirectUrl = \"https://portal.azure.com\",\n Message = new AzureAD.Inputs.InvitationMessageArgs\n {\n AdditionalRecipients = \"aaliceberg@example.com\",\n Body = \"Hello there! You are invited to join my Azure tenant!\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewInvitation(ctx, \"example\", \u0026azuread.InvitationArgs{\n\t\t\tUserDisplayName: pulumi.String(\"Bob Bobson\"),\n\t\t\tUserEmailAddress: pulumi.String(\"bbobson@example.com\"),\n\t\t\tRedirectUrl: pulumi.String(\"https://portal.azure.com\"),\n\t\t\tMessage: \u0026azuread.InvitationMessageArgs{\n\t\t\t\tAdditionalRecipients: pulumi.String(\"aaliceberg@example.com\"),\n\t\t\t\tBody: pulumi.String(\"Hello there! You are invited to join my Azure tenant!\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Invitation;\nimport com.pulumi.azuread.InvitationArgs;\nimport com.pulumi.azuread.inputs.InvitationMessageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Invitation(\"example\", InvitationArgs.builder()\n .userDisplayName(\"Bob Bobson\")\n .userEmailAddress(\"bbobson@example.com\")\n .redirectUrl(\"https://portal.azure.com\")\n .message(InvitationMessageArgs.builder()\n .additionalRecipients(\"aaliceberg@example.com\")\n .body(\"Hello there! You are invited to join my Azure tenant!\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Invitation\n properties:\n userDisplayName: Bob Bobson\n userEmailAddress: bbobson@example.com\n redirectUrl: https://portal.azure.com\n message:\n additionalRecipients: aaliceberg@example.com\n body: Hello there! You are invited to join my Azure tenant!\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", "properties": { "message": { "$ref": "#/types/azuread:index/InvitationMessage:InvitationMessage", @@ -7449,7 +7331,7 @@ } }, "azuread:index/namedLocation:NamedLocation": { - "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example_ip = new azuread.NamedLocation(\"example-ip\", {\n displayName: \"IP Named Location\",\n ip: {\n ipRanges: [\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n ],\n trusted: true,\n },\n});\nconst example_country = new azuread.NamedLocation(\"example-country\", {\n displayName: \"Country Named Location\",\n country: {\n countriesAndRegions: [\n \"GB\",\n \"US\",\n ],\n includeUnknownCountriesAndRegions: false,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample_ip = azuread.NamedLocation(\"example-ip\",\n display_name=\"IP Named Location\",\n ip={\n \"ip_ranges\": [\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n ],\n \"trusted\": True,\n })\nexample_country = azuread.NamedLocation(\"example-country\",\n display_name=\"Country Named Location\",\n country={\n \"countries_and_regions\": [\n \"GB\",\n \"US\",\n ],\n \"include_unknown_countries_and_regions\": False,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example_ip = new AzureAD.NamedLocation(\"example-ip\", new()\n {\n DisplayName = \"IP Named Location\",\n Ip = new AzureAD.Inputs.NamedLocationIpArgs\n {\n IpRanges = new[]\n {\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n },\n Trusted = true,\n },\n });\n\n var example_country = new AzureAD.NamedLocation(\"example-country\", new()\n {\n DisplayName = \"Country Named Location\",\n Country = new AzureAD.Inputs.NamedLocationCountryArgs\n {\n CountriesAndRegions = new[]\n {\n \"GB\",\n \"US\",\n },\n IncludeUnknownCountriesAndRegions = false,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewNamedLocation(ctx, \"example-ip\", \u0026azuread.NamedLocationArgs{\n\t\t\tDisplayName: pulumi.String(\"IP Named Location\"),\n\t\t\tIp: \u0026azuread.NamedLocationIpArgs{\n\t\t\t\tIpRanges: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"1.1.1.1/32\"),\n\t\t\t\t\tpulumi.String(\"2.2.2.2/32\"),\n\t\t\t\t},\n\t\t\t\tTrusted: pulumi.Bool(true),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewNamedLocation(ctx, \"example-country\", \u0026azuread.NamedLocationArgs{\n\t\t\tDisplayName: pulumi.String(\"Country Named Location\"),\n\t\t\tCountry: \u0026azuread.NamedLocationCountryArgs{\n\t\t\t\tCountriesAndRegions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"GB\"),\n\t\t\t\t\tpulumi.String(\"US\"),\n\t\t\t\t},\n\t\t\t\tIncludeUnknownCountriesAndRegions: pulumi.Bool(false),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.NamedLocation;\nimport com.pulumi.azuread.NamedLocationArgs;\nimport com.pulumi.azuread.inputs.NamedLocationIpArgs;\nimport com.pulumi.azuread.inputs.NamedLocationCountryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example_ip = new NamedLocation(\"example-ip\", NamedLocationArgs.builder()\n .displayName(\"IP Named Location\")\n .ip(NamedLocationIpArgs.builder()\n .ipRanges( \n \"1.1.1.1/32\",\n \"2.2.2.2/32\")\n .trusted(true)\n .build())\n .build());\n\n var example_country = new NamedLocation(\"example-country\", NamedLocationArgs.builder()\n .displayName(\"Country Named Location\")\n .country(NamedLocationCountryArgs.builder()\n .countriesAndRegions( \n \"GB\",\n \"US\")\n .includeUnknownCountriesAndRegions(false)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example-ip:\n type: azuread:NamedLocation\n properties:\n displayName: IP Named Location\n ip:\n ipRanges:\n - 1.1.1.1/32\n - 2.2.2.2/32\n trusted: true\n example-country:\n type: azuread:NamedLocation\n properties:\n displayName: Country Named Location\n country:\n countriesAndRegions:\n - GB\n - US\n includeUnknownCountriesAndRegions: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nNamed Locations can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/namedLocation:NamedLocation my_location 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example_ip = new azuread.NamedLocation(\"example-ip\", {\n displayName: \"IP Named Location\",\n ip: {\n ipRanges: [\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n ],\n trusted: true,\n },\n});\nconst example_country = new azuread.NamedLocation(\"example-country\", {\n displayName: \"Country Named Location\",\n country: {\n countriesAndRegions: [\n \"GB\",\n \"US\",\n ],\n includeUnknownCountriesAndRegions: false,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample_ip = azuread.NamedLocation(\"example-ip\",\n display_name=\"IP Named Location\",\n ip={\n \"ip_ranges\": [\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n ],\n \"trusted\": True,\n })\nexample_country = azuread.NamedLocation(\"example-country\",\n display_name=\"Country Named Location\",\n country={\n \"countries_and_regions\": [\n \"GB\",\n \"US\",\n ],\n \"include_unknown_countries_and_regions\": False,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example_ip = new AzureAD.NamedLocation(\"example-ip\", new()\n {\n DisplayName = \"IP Named Location\",\n Ip = new AzureAD.Inputs.NamedLocationIpArgs\n {\n IpRanges = new[]\n {\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n },\n Trusted = true,\n },\n });\n\n var example_country = new AzureAD.NamedLocation(\"example-country\", new()\n {\n DisplayName = \"Country Named Location\",\n Country = new AzureAD.Inputs.NamedLocationCountryArgs\n {\n CountriesAndRegions = new[]\n {\n \"GB\",\n \"US\",\n },\n IncludeUnknownCountriesAndRegions = false,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewNamedLocation(ctx, \"example-ip\", \u0026azuread.NamedLocationArgs{\n\t\t\tDisplayName: pulumi.String(\"IP Named Location\"),\n\t\t\tIp: \u0026azuread.NamedLocationIpArgs{\n\t\t\t\tIpRanges: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"1.1.1.1/32\"),\n\t\t\t\t\tpulumi.String(\"2.2.2.2/32\"),\n\t\t\t\t},\n\t\t\t\tTrusted: pulumi.Bool(true),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewNamedLocation(ctx, \"example-country\", \u0026azuread.NamedLocationArgs{\n\t\t\tDisplayName: pulumi.String(\"Country Named Location\"),\n\t\t\tCountry: \u0026azuread.NamedLocationCountryArgs{\n\t\t\t\tCountriesAndRegions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"GB\"),\n\t\t\t\t\tpulumi.String(\"US\"),\n\t\t\t\t},\n\t\t\t\tIncludeUnknownCountriesAndRegions: pulumi.Bool(false),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.NamedLocation;\nimport com.pulumi.azuread.NamedLocationArgs;\nimport com.pulumi.azuread.inputs.NamedLocationIpArgs;\nimport com.pulumi.azuread.inputs.NamedLocationCountryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example_ip = new NamedLocation(\"example-ip\", NamedLocationArgs.builder()\n .displayName(\"IP Named Location\")\n .ip(NamedLocationIpArgs.builder()\n .ipRanges( \n \"1.1.1.1/32\",\n \"2.2.2.2/32\")\n .trusted(true)\n .build())\n .build());\n\n var example_country = new NamedLocation(\"example-country\", NamedLocationArgs.builder()\n .displayName(\"Country Named Location\")\n .country(NamedLocationCountryArgs.builder()\n .countriesAndRegions( \n \"GB\",\n \"US\")\n .includeUnknownCountriesAndRegions(false)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example-ip:\n type: azuread:NamedLocation\n properties:\n displayName: IP Named Location\n ip:\n ipRanges:\n - 1.1.1.1/32\n - 2.2.2.2/32\n trusted: true\n example-country:\n type: azuread:NamedLocation\n properties:\n displayName: Country Named Location\n country:\n countriesAndRegions:\n - GB\n - US\n includeUnknownCountriesAndRegions: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nNamed Locations can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/namedLocation:NamedLocation my_location 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "country": { "$ref": "#/types/azuread:index/NamedLocationCountry:NamedLocationCountry", @@ -7508,7 +7390,7 @@ } }, "azuread:index/privilegedAccessGroupAssignmentSchedule:PrivilegedAccessGroupAssignmentSchedule": { - "description": "Manages an active assignment to a privileged access group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the `PrivilegedAssignmentSchedule.ReadWrite.AzureADGroup` Microsoft Graph API permissions.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or the `Privileged Role Administrator` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst member = new azuread.User(\"member\", {\n userPrincipalName: \"jdoe@example.com\",\n displayName: \"J. Doe\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\nconst examplePrivilegedAccessGroupAssignmentSchedule = new azuread.PrivilegedAccessGroupAssignmentSchedule(\"example\", {\n groupId: pim.id,\n principalId: member.id,\n assignmentType: \"member\",\n duration: \"P30D\",\n justification: \"as requested\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nmember = azuread.User(\"member\",\n user_principal_name=\"jdoe@example.com\",\n display_name=\"J. Doe\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\nexample_privileged_access_group_assignment_schedule = azuread.PrivilegedAccessGroupAssignmentSchedule(\"example\",\n group_id=pim[\"id\"],\n principal_id=member.id,\n assignment_type=\"member\",\n duration=\"P30D\",\n justification=\"as requested\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var member = new AzureAD.User(\"member\", new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n DisplayName = \"J. Doe\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n var examplePrivilegedAccessGroupAssignmentSchedule = new AzureAD.PrivilegedAccessGroupAssignmentSchedule(\"example\", new()\n {\n GroupId = pim.Id,\n PrincipalId = member.Id,\n AssignmentType = \"member\",\n Duration = \"P30D\",\n Justification = \"as requested\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmember, err := azuread.NewUser(ctx, \"member\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewPrivilegedAccessGroupAssignmentSchedule(ctx, \"example\", \u0026azuread.PrivilegedAccessGroupAssignmentScheduleArgs{\n\t\t\tGroupId: pulumi.Any(pim.Id),\n\t\t\tPrincipalId: member.ID(),\n\t\t\tAssignmentType: pulumi.String(\"member\"),\n\t\t\tDuration: pulumi.String(\"P30D\"),\n\t\t\tJustification: pulumi.String(\"as requested\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.PrivilegedAccessGroupAssignmentSchedule;\nimport com.pulumi.azuread.PrivilegedAccessGroupAssignmentScheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n var member = new User(\"member\", UserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .displayName(\"J. Doe\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var examplePrivilegedAccessGroupAssignmentSchedule = new PrivilegedAccessGroupAssignmentSchedule(\"examplePrivilegedAccessGroupAssignmentSchedule\", PrivilegedAccessGroupAssignmentScheduleArgs.builder()\n .groupId(pim.id())\n .principalId(member.id())\n .assignmentType(\"member\")\n .duration(\"P30D\")\n .justification(\"as requested\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\n member:\n type: azuread:User\n properties:\n userPrincipalName: jdoe@example.com\n displayName: J. Doe\n mailNickname: jdoe\n password: SecretP@sswd99!\n examplePrivilegedAccessGroupAssignmentSchedule:\n type: azuread:PrivilegedAccessGroupAssignmentSchedule\n name: example\n properties:\n groupId: ${pim.id}\n principalId: ${member.id}\n assignmentType: member\n duration: P30D\n justification: as requested\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn assignment schedule can be imported using the schedule ID, e.g.\n\n```sh\n$ pulumi import azuread:index/privilegedAccessGroupAssignmentSchedule:PrivilegedAccessGroupAssignmentSchedule example 00000000-0000-0000-0000-000000000000_member_00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages an active assignment to a privileged access group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the `PrivilegedAssignmentSchedule.ReadWrite.AzureADGroup` Microsoft Graph API permissions.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or the `Privileged Role Administrator` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst member = new azuread.User(\"member\", {\n userPrincipalName: \"jdoe@example.com\",\n displayName: \"J. Doe\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\nconst examplePrivilegedAccessGroupAssignmentSchedule = new azuread.PrivilegedAccessGroupAssignmentSchedule(\"example\", {\n groupId: pim.id,\n principalId: member.id,\n assignmentType: \"member\",\n duration: \"P30D\",\n justification: \"as requested\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nmember = azuread.User(\"member\",\n user_principal_name=\"jdoe@example.com\",\n display_name=\"J. Doe\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\nexample_privileged_access_group_assignment_schedule = azuread.PrivilegedAccessGroupAssignmentSchedule(\"example\",\n group_id=pim[\"id\"],\n principal_id=member.id,\n assignment_type=\"member\",\n duration=\"P30D\",\n justification=\"as requested\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var member = new AzureAD.User(\"member\", new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n DisplayName = \"J. Doe\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n var examplePrivilegedAccessGroupAssignmentSchedule = new AzureAD.PrivilegedAccessGroupAssignmentSchedule(\"example\", new()\n {\n GroupId = pim.Id,\n PrincipalId = member.Id,\n AssignmentType = \"member\",\n Duration = \"P30D\",\n Justification = \"as requested\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmember, err := azuread.NewUser(ctx, \"member\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewPrivilegedAccessGroupAssignmentSchedule(ctx, \"example\", \u0026azuread.PrivilegedAccessGroupAssignmentScheduleArgs{\n\t\t\tGroupId: pulumi.Any(pim.Id),\n\t\t\tPrincipalId: member.ID(),\n\t\t\tAssignmentType: pulumi.String(\"member\"),\n\t\t\tDuration: pulumi.String(\"P30D\"),\n\t\t\tJustification: pulumi.String(\"as requested\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.PrivilegedAccessGroupAssignmentSchedule;\nimport com.pulumi.azuread.PrivilegedAccessGroupAssignmentScheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n var member = new User(\"member\", UserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .displayName(\"J. Doe\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var examplePrivilegedAccessGroupAssignmentSchedule = new PrivilegedAccessGroupAssignmentSchedule(\"examplePrivilegedAccessGroupAssignmentSchedule\", PrivilegedAccessGroupAssignmentScheduleArgs.builder()\n .groupId(pim.id())\n .principalId(member.id())\n .assignmentType(\"member\")\n .duration(\"P30D\")\n .justification(\"as requested\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\n member:\n type: azuread:User\n properties:\n userPrincipalName: jdoe@example.com\n displayName: J. Doe\n mailNickname: jdoe\n password: SecretP@sswd99!\n examplePrivilegedAccessGroupAssignmentSchedule:\n type: azuread:PrivilegedAccessGroupAssignmentSchedule\n name: example\n properties:\n groupId: ${pim.id}\n principalId: ${member.id}\n assignmentType: member\n duration: P30D\n justification: as requested\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn assignment schedule can be imported using the schedule ID, e.g.\n\n```sh\n$ pulumi import azuread:index/privilegedAccessGroupAssignmentSchedule:PrivilegedAccessGroupAssignmentSchedule example 00000000-0000-0000-0000-000000000000_member_00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "assignmentType": { "type": "string", @@ -7669,7 +7551,7 @@ } }, "azuread:index/privilegedAccessGroupEligibilitySchedule:PrivilegedAccessGroupEligibilitySchedule": { - "description": "Manages an eligible assignment to a privileged access group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the `PrivilegedEligibilitySchedule.ReadWrite.AzureADGroup` Microsoft Graph API permissions.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or the `Privileged Role Administrator` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst member = new azuread.User(\"member\", {\n userPrincipalName: \"jdoe@example.com\",\n displayName: \"J. Doe\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\nconst examplePrivilegedAccessGroupEligibilitySchedule = new azuread.PrivilegedAccessGroupEligibilitySchedule(\"example\", {\n groupId: pim.id,\n principalId: member.id,\n assignmentType: \"member\",\n duration: \"P30D\",\n justification: \"as requested\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nmember = azuread.User(\"member\",\n user_principal_name=\"jdoe@example.com\",\n display_name=\"J. Doe\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\nexample_privileged_access_group_eligibility_schedule = azuread.PrivilegedAccessGroupEligibilitySchedule(\"example\",\n group_id=pim[\"id\"],\n principal_id=member.id,\n assignment_type=\"member\",\n duration=\"P30D\",\n justification=\"as requested\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var member = new AzureAD.User(\"member\", new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n DisplayName = \"J. Doe\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n var examplePrivilegedAccessGroupEligibilitySchedule = new AzureAD.PrivilegedAccessGroupEligibilitySchedule(\"example\", new()\n {\n GroupId = pim.Id,\n PrincipalId = member.Id,\n AssignmentType = \"member\",\n Duration = \"P30D\",\n Justification = \"as requested\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmember, err := azuread.NewUser(ctx, \"member\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewPrivilegedAccessGroupEligibilitySchedule(ctx, \"example\", \u0026azuread.PrivilegedAccessGroupEligibilityScheduleArgs{\n\t\t\tGroupId: pulumi.Any(pim.Id),\n\t\t\tPrincipalId: member.ID(),\n\t\t\tAssignmentType: pulumi.String(\"member\"),\n\t\t\tDuration: pulumi.String(\"P30D\"),\n\t\t\tJustification: pulumi.String(\"as requested\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.PrivilegedAccessGroupEligibilitySchedule;\nimport com.pulumi.azuread.PrivilegedAccessGroupEligibilityScheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n var member = new User(\"member\", UserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .displayName(\"J. Doe\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var examplePrivilegedAccessGroupEligibilitySchedule = new PrivilegedAccessGroupEligibilitySchedule(\"examplePrivilegedAccessGroupEligibilitySchedule\", PrivilegedAccessGroupEligibilityScheduleArgs.builder()\n .groupId(pim.id())\n .principalId(member.id())\n .assignmentType(\"member\")\n .duration(\"P30D\")\n .justification(\"as requested\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\n member:\n type: azuread:User\n properties:\n userPrincipalName: jdoe@example.com\n displayName: J. Doe\n mailNickname: jdoe\n password: SecretP@sswd99!\n examplePrivilegedAccessGroupEligibilitySchedule:\n type: azuread:PrivilegedAccessGroupEligibilitySchedule\n name: example\n properties:\n groupId: ${pim.id}\n principalId: ${member.id}\n assignmentType: member\n duration: P30D\n justification: as requested\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn assignment schedule can be imported using the schedule ID, e.g.\n\n```sh\n$ pulumi import azuread:index/privilegedAccessGroupEligibilitySchedule:PrivilegedAccessGroupEligibilitySchedule example 00000000-0000-0000-0000-000000000000_member_00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages an eligible assignment to a privileged access group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the `PrivilegedEligibilitySchedule.ReadWrite.AzureADGroup` Microsoft Graph API permissions.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or the `Privileged Role Administrator` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst member = new azuread.User(\"member\", {\n userPrincipalName: \"jdoe@example.com\",\n displayName: \"J. Doe\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\nconst examplePrivilegedAccessGroupEligibilitySchedule = new azuread.PrivilegedAccessGroupEligibilitySchedule(\"example\", {\n groupId: pim.id,\n principalId: member.id,\n assignmentType: \"member\",\n duration: \"P30D\",\n justification: \"as requested\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nmember = azuread.User(\"member\",\n user_principal_name=\"jdoe@example.com\",\n display_name=\"J. Doe\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\nexample_privileged_access_group_eligibility_schedule = azuread.PrivilegedAccessGroupEligibilitySchedule(\"example\",\n group_id=pim[\"id\"],\n principal_id=member.id,\n assignment_type=\"member\",\n duration=\"P30D\",\n justification=\"as requested\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var member = new AzureAD.User(\"member\", new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n DisplayName = \"J. Doe\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n var examplePrivilegedAccessGroupEligibilitySchedule = new AzureAD.PrivilegedAccessGroupEligibilitySchedule(\"example\", new()\n {\n GroupId = pim.Id,\n PrincipalId = member.Id,\n AssignmentType = \"member\",\n Duration = \"P30D\",\n Justification = \"as requested\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmember, err := azuread.NewUser(ctx, \"member\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewPrivilegedAccessGroupEligibilitySchedule(ctx, \"example\", \u0026azuread.PrivilegedAccessGroupEligibilityScheduleArgs{\n\t\t\tGroupId: pulumi.Any(pim.Id),\n\t\t\tPrincipalId: member.ID(),\n\t\t\tAssignmentType: pulumi.String(\"member\"),\n\t\t\tDuration: pulumi.String(\"P30D\"),\n\t\t\tJustification: pulumi.String(\"as requested\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.PrivilegedAccessGroupEligibilitySchedule;\nimport com.pulumi.azuread.PrivilegedAccessGroupEligibilityScheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n var member = new User(\"member\", UserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .displayName(\"J. Doe\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var examplePrivilegedAccessGroupEligibilitySchedule = new PrivilegedAccessGroupEligibilitySchedule(\"examplePrivilegedAccessGroupEligibilitySchedule\", PrivilegedAccessGroupEligibilityScheduleArgs.builder()\n .groupId(pim.id())\n .principalId(member.id())\n .assignmentType(\"member\")\n .duration(\"P30D\")\n .justification(\"as requested\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\n member:\n type: azuread:User\n properties:\n userPrincipalName: jdoe@example.com\n displayName: J. Doe\n mailNickname: jdoe\n password: SecretP@sswd99!\n examplePrivilegedAccessGroupEligibilitySchedule:\n type: azuread:PrivilegedAccessGroupEligibilitySchedule\n name: example\n properties:\n groupId: ${pim.id}\n principalId: ${member.id}\n assignmentType: member\n duration: P30D\n justification: as requested\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn assignment schedule can be imported using the schedule ID, e.g.\n\n```sh\n$ pulumi import azuread:index/privilegedAccessGroupEligibilitySchedule:PrivilegedAccessGroupEligibilitySchedule example 00000000-0000-0000-0000-000000000000_member_00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "assignmentType": { "type": "string", @@ -7830,7 +7712,7 @@ } }, "azuread:index/servicePrincipal:ServicePrincipal": { - "description": "## Example Usage\n\n*Create a service principal for an application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n owners: [current.then(current =\u003e current.objectId)],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: example.clientId,\n appRoleAssignmentRequired: false,\n owners: [current.then(current =\u003e current.objectId)],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n owners=[current.object_id])\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example.client_id,\n app_role_assignment_required=False,\n owners=[current.object_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n AppRoleAssignmentRequired = false,\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t\tAppRoleAssignmentRequired: pulumi.Bool(false),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .appRoleAssignmentRequired(false)\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n owners:\n - ${current.objectId}\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n appRoleAssignmentRequired: false\n owners:\n - ${current.objectId}\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Create a service principal for an enterprise application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n owners: [current.then(current =\u003e current.objectId)],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: example.clientId,\n appRoleAssignmentRequired: false,\n owners: [current.then(current =\u003e current.objectId)],\n featureTags: [{\n enterprise: true,\n gallery: true,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n owners=[current.object_id])\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example.client_id,\n app_role_assignment_required=False,\n owners=[current.object_id],\n feature_tags=[{\n \"enterprise\": True,\n \"gallery\": True,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n AppRoleAssignmentRequired = false,\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n FeatureTags = new[]\n {\n new AzureAD.Inputs.ServicePrincipalFeatureTagArgs\n {\n Enterprise = true,\n Gallery = true,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t\tAppRoleAssignmentRequired: pulumi.Bool(false),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tFeatureTags: azuread.ServicePrincipalFeatureTagArray{\n\t\t\t\t\u0026azuread.ServicePrincipalFeatureTagArgs{\n\t\t\t\t\tEnterprise: pulumi.Bool(true),\n\t\t\t\t\tGallery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.inputs.ServicePrincipalFeatureTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .appRoleAssignmentRequired(false)\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .featureTags(ServicePrincipalFeatureTagArgs.builder()\n .enterprise(true)\n .gallery(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n owners:\n - ${current.objectId}\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n appRoleAssignmentRequired: false\n owners:\n - ${current.objectId}\n featureTags:\n - enterprise: true\n gallery: true\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Manage a service principal for a first-party Microsoft application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n useExisting: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"microsoftGraph\"],\n use_existing=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .useExisting(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.microsoftGraph}\n useExisting: true\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Create a service principal for an application created from a gallery template*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Marketo\",\n});\nconst exampleApplication = new azuread.Application(\"example\", {\n displayName: \"example\",\n templateId: example.then(example =\u003e example.templateId),\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: exampleApplication.clientId,\n useExisting: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Marketo\")\nexample_application = azuread.Application(\"example\",\n display_name=\"example\",\n template_id=example.template_id)\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example_application.client_id,\n use_existing=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Marketo\",\n });\n\n var exampleApplication = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = exampleApplication.ClientId,\n UseExisting = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Marketo\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplication, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: exampleApplication.ClientId,\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Marketo\")\n .build());\n\n var exampleApplication = new Application(\"exampleApplication\", ApplicationArgs.builder()\n .displayName(\"example\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(exampleApplication.clientId())\n .useExisting(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApplication:\n type: azuread:Application\n name: example\n properties:\n displayName: example\n templateId: ${example.templateId}\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${exampleApplication.clientId}\n useExisting: true\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Marketo\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nService principals can be imported using their object ID, e.g.\n\n```sh\n$ pulumi import azuread:index/servicePrincipal:ServicePrincipal example 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "## Example Usage\n\n*Create a service principal for an application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n owners: [current.then(current =\u003e current.objectId)],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: example.clientId,\n appRoleAssignmentRequired: false,\n owners: [current.then(current =\u003e current.objectId)],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n owners=[current.object_id])\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example.client_id,\n app_role_assignment_required=False,\n owners=[current.object_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n AppRoleAssignmentRequired = false,\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t\tAppRoleAssignmentRequired: pulumi.Bool(false),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .appRoleAssignmentRequired(false)\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n owners:\n - ${current.objectId}\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n appRoleAssignmentRequired: false\n owners:\n - ${current.objectId}\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Create a service principal for an enterprise application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n owners: [current.then(current =\u003e current.objectId)],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: example.clientId,\n appRoleAssignmentRequired: false,\n owners: [current.then(current =\u003e current.objectId)],\n featureTags: [{\n enterprise: true,\n gallery: true,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n owners=[current.object_id])\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example.client_id,\n app_role_assignment_required=False,\n owners=[current.object_id],\n feature_tags=[{\n \"enterprise\": True,\n \"gallery\": True,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n AppRoleAssignmentRequired = false,\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n FeatureTags = new[]\n {\n new AzureAD.Inputs.ServicePrincipalFeatureTagArgs\n {\n Enterprise = true,\n Gallery = true,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t\tAppRoleAssignmentRequired: pulumi.Bool(false),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tFeatureTags: azuread.ServicePrincipalFeatureTagArray{\n\t\t\t\t\u0026azuread.ServicePrincipalFeatureTagArgs{\n\t\t\t\t\tEnterprise: pulumi.Bool(true),\n\t\t\t\t\tGallery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.inputs.ServicePrincipalFeatureTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .appRoleAssignmentRequired(false)\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .featureTags(ServicePrincipalFeatureTagArgs.builder()\n .enterprise(true)\n .gallery(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n owners:\n - ${current.objectId}\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n appRoleAssignmentRequired: false\n owners:\n - ${current.objectId}\n featureTags:\n - enterprise: true\n gallery: true\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Manage a service principal for a first-party Microsoft application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n useExisting: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"microsoftGraph\"],\n use_existing=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .useExisting(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.microsoftGraph}\n useExisting: true\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Create a service principal for an application created from a gallery template*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Marketo\",\n});\nconst exampleApplication = new azuread.Application(\"example\", {\n displayName: \"example\",\n templateId: example.then(example =\u003e example.templateId),\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: exampleApplication.clientId,\n useExisting: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Marketo\")\nexample_application = azuread.Application(\"example\",\n display_name=\"example\",\n template_id=example.template_id)\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example_application.client_id,\n use_existing=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Marketo\",\n });\n\n var exampleApplication = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = exampleApplication.ClientId,\n UseExisting = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Marketo\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplication, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: exampleApplication.ClientId,\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Marketo\")\n .build());\n\n var exampleApplication = new Application(\"exampleApplication\", ApplicationArgs.builder()\n .displayName(\"example\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(exampleApplication.clientId())\n .useExisting(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApplication:\n type: azuread:Application\n name: example\n properties:\n displayName: example\n templateId: ${example.templateId}\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${exampleApplication.clientId}\n useExisting: true\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Marketo\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nService principals can be imported using their object ID, e.g.\n\n```sh\n$ pulumi import azuread:index/servicePrincipal:ServicePrincipal example 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "accountEnabled": { "type": "boolean", @@ -7861,11 +7743,6 @@ }, "description": "A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles).\n" }, - "applicationId": { - "type": "string", - "description": "The application ID (client ID) of the application for which to create a service principal\n", - "deprecationMessage": "The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider" - }, "applicationTenantId": { "type": "string", "description": "The tenant ID where the associated application is registered.\n" @@ -7994,7 +7871,6 @@ "required": [ "appRoleIds", "appRoles", - "applicationId", "applicationTenantId", "clientId", "displayName", @@ -8028,12 +7904,6 @@ "type": "boolean", "description": "Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.\n" }, - "applicationId": { - "type": "string", - "description": "The application ID (client ID) of the application for which to create a service principal\n", - "deprecationMessage": "The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "clientId": { "type": "string", "description": "The client ID of the application for which to create a service principal.\n", @@ -8100,6 +7970,9 @@ "description": "When true, the resource will return an existing service principal instead of failing with an error\n" } }, + "requiredInputs": [ + "clientId" + ], "stateInputs": { "description": "Input properties used for looking up and filtering ServicePrincipal resources.\n", "properties": { @@ -8132,12 +8005,6 @@ }, "description": "A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles).\n" }, - "applicationId": { - "type": "string", - "description": "The application ID (client ID) of the application for which to create a service principal\n", - "deprecationMessage": "The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider", - "willReplaceOnChanges": true - }, "applicationTenantId": { "type": "string", "description": "The tenant ID where the associated application is registered.\n" @@ -8268,7 +8135,7 @@ } }, "azuread:index/servicePrincipalCertificate:ServicePrincipalCertificate": { - "description": "## Example Usage\n\n*Using a PEM certificate*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {applicationId: example.applicationId});\nconst exampleServicePrincipalCertificate = new azuread.ServicePrincipalCertificate(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n type: \"AsymmetricX509Cert\",\n value: std.file({\n input: \"cert.pem\",\n }).then(invoke =\u003e invoke.result),\n endDate: \"2021-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", application_id=example.application_id)\nexample_service_principal_certificate = azuread.ServicePrincipalCertificate(\"example\",\n service_principal_id=example_service_principal.id,\n type=\"AsymmetricX509Cert\",\n value=std.file(input=\"cert.pem\").result,\n end_date=\"2021-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ApplicationId = example.ApplicationId,\n });\n\n var exampleServicePrincipalCertificate = new AzureAD.ServicePrincipalCertificate(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n Type = \"AsymmetricX509Cert\",\n Value = Std.File.Invoke(new()\n {\n Input = \"cert.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n EndDate = \"2021-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tApplicationId: example.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFile, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"cert.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalCertificate(ctx, \"example\", \u0026azuread.ServicePrincipalCertificateArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tValue: pulumi.String(invokeFile.Result),\n\t\t\tEndDate: pulumi.String(\"2021-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalCertificate;\nimport com.pulumi.azuread.ServicePrincipalCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .applicationId(example.applicationId())\n .build());\n\n var exampleServicePrincipalCertificate = new ServicePrincipalCertificate(\"exampleServicePrincipalCertificate\", ServicePrincipalCertificateArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .type(\"AsymmetricX509Cert\")\n .value(StdFunctions.file(FileArgs.builder()\n .input(\"cert.pem\")\n .build()).result())\n .endDate(\"2021-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n applicationId: ${example.applicationId}\n exampleServicePrincipalCertificate:\n type: azuread:ServicePrincipalCertificate\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n type: AsymmetricX509Cert\n value:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.pem\n Return: result\n endDate: 2021-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Using a DER certificate*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {applicationId: example.applicationId});\nconst exampleServicePrincipalCertificate = new azuread.ServicePrincipalCertificate(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n type: \"AsymmetricX509Cert\",\n encoding: \"base64\",\n value: std.file({\n input: \"cert.der\",\n }).then(invoke =\u003e std.base64encode({\n input: invoke.result,\n })).then(invoke =\u003e invoke.result),\n endDate: \"2021-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", application_id=example.application_id)\nexample_service_principal_certificate = azuread.ServicePrincipalCertificate(\"example\",\n service_principal_id=example_service_principal.id,\n type=\"AsymmetricX509Cert\",\n encoding=\"base64\",\n value=std.base64encode(input=std.file(input=\"cert.der\").result).result,\n end_date=\"2021-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ApplicationId = example.ApplicationId,\n });\n\n var exampleServicePrincipalCertificate = new AzureAD.ServicePrincipalCertificate(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n Type = \"AsymmetricX509Cert\",\n Encoding = \"base64\",\n Value = Std.File.Invoke(new()\n {\n Input = \"cert.der\",\n }).Apply(invoke =\u003e Std.Base64encode.Invoke(new()\n {\n Input = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n EndDate = \"2021-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tApplicationId: example.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeBase64encode, err := std.Base64encode(ctx, \u0026std.Base64encodeArgs{\n\t\t\tInput: std.File(ctx, \u0026std.FileArgs{\n\t\t\t\tInput: \"cert.der\",\n\t\t\t}, nil).Result,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalCertificate(ctx, \"example\", \u0026azuread.ServicePrincipalCertificateArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tEncoding: pulumi.String(\"base64\"),\n\t\t\tValue: pulumi.String(invokeBase64encode.Result),\n\t\t\tEndDate: pulumi.String(\"2021-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalCertificate;\nimport com.pulumi.azuread.ServicePrincipalCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .applicationId(example.applicationId())\n .build());\n\n var exampleServicePrincipalCertificate = new ServicePrincipalCertificate(\"exampleServicePrincipalCertificate\", ServicePrincipalCertificateArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .type(\"AsymmetricX509Cert\")\n .encoding(\"base64\")\n .value(StdFunctions.base64encode(Base64encodeArgs.builder()\n .input(StdFunctions.file(FileArgs.builder()\n .input(\"cert.der\")\n .build()).result())\n .build()).result())\n .endDate(\"2021-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n applicationId: ${example.applicationId}\n exampleServicePrincipalCertificate:\n type: azuread:ServicePrincipalCertificate\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n type: AsymmetricX509Cert\n encoding: base64\n value:\n fn::invoke:\n Function: std:base64encode\n Arguments:\n input:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.der\n Return: result\n Return: result\n endDate: 2021-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCertificates can be imported using the object ID of the associated service principal and the key ID of the certificate credential, e.g.\n\n```sh\n$ pulumi import azuread:index/servicePrincipalCertificate:ServicePrincipalCertificate example 00000000-0000-0000-0000-000000000000/certificate/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the service principal's object ID, the string \"certificate\" and the certificate's key ID in the format `{ServicePrincipalObjectId}/certificate/{CertificateKeyId}`.\n\n", + "description": "## Example Usage\n\n*Using a PEM certificate*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleServicePrincipalCertificate = new azuread.ServicePrincipalCertificate(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n type: \"AsymmetricX509Cert\",\n value: std.file({\n input: \"cert.pem\",\n }).then(invoke =\u003e invoke.result),\n endDate: \"2021-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_service_principal_certificate = azuread.ServicePrincipalCertificate(\"example\",\n service_principal_id=example_service_principal.id,\n type=\"AsymmetricX509Cert\",\n value=std.file(input=\"cert.pem\").result,\n end_date=\"2021-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleServicePrincipalCertificate = new AzureAD.ServicePrincipalCertificate(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n Type = \"AsymmetricX509Cert\",\n Value = Std.File.Invoke(new()\n {\n Input = \"cert.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n EndDate = \"2021-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFile, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"cert.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalCertificate(ctx, \"example\", \u0026azuread.ServicePrincipalCertificateArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tValue: pulumi.String(invokeFile.Result),\n\t\t\tEndDate: pulumi.String(\"2021-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalCertificate;\nimport com.pulumi.azuread.ServicePrincipalCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleServicePrincipalCertificate = new ServicePrincipalCertificate(\"exampleServicePrincipalCertificate\", ServicePrincipalCertificateArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .type(\"AsymmetricX509Cert\")\n .value(StdFunctions.file(FileArgs.builder()\n .input(\"cert.pem\")\n .build()).result())\n .endDate(\"2021-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleServicePrincipalCertificate:\n type: azuread:ServicePrincipalCertificate\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n type: AsymmetricX509Cert\n value:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.pem\n Return: result\n endDate: 2021-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Using a DER certificate*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleServicePrincipalCertificate = new azuread.ServicePrincipalCertificate(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n type: \"AsymmetricX509Cert\",\n encoding: \"base64\",\n value: std.file({\n input: \"cert.der\",\n }).then(invoke =\u003e std.base64encode({\n input: invoke.result,\n })).then(invoke =\u003e invoke.result),\n endDate: \"2021-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumi_std as std\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_service_principal_certificate = azuread.ServicePrincipalCertificate(\"example\",\n service_principal_id=example_service_principal.id,\n type=\"AsymmetricX509Cert\",\n encoding=\"base64\",\n value=std.base64encode(input=std.file(input=\"cert.der\").result).result,\n end_date=\"2021-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleServicePrincipalCertificate = new AzureAD.ServicePrincipalCertificate(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n Type = \"AsymmetricX509Cert\",\n Encoding = \"base64\",\n Value = Std.File.Invoke(new()\n {\n Input = \"cert.der\",\n }).Apply(invoke =\u003e Std.Base64encode.Invoke(new()\n {\n Input = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n EndDate = \"2021-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeBase64encode, err := std.Base64encode(ctx, \u0026std.Base64encodeArgs{\n\t\t\tInput: std.File(ctx, \u0026std.FileArgs{\n\t\t\t\tInput: \"cert.der\",\n\t\t\t}, nil).Result,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalCertificate(ctx, \"example\", \u0026azuread.ServicePrincipalCertificateArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tType: pulumi.String(\"AsymmetricX509Cert\"),\n\t\t\tEncoding: pulumi.String(\"base64\"),\n\t\t\tValue: pulumi.String(invokeBase64encode.Result),\n\t\t\tEndDate: pulumi.String(\"2021-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalCertificate;\nimport com.pulumi.azuread.ServicePrincipalCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleServicePrincipalCertificate = new ServicePrincipalCertificate(\"exampleServicePrincipalCertificate\", ServicePrincipalCertificateArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .type(\"AsymmetricX509Cert\")\n .encoding(\"base64\")\n .value(StdFunctions.base64encode(Base64encodeArgs.builder()\n .input(StdFunctions.file(FileArgs.builder()\n .input(\"cert.der\")\n .build()).result())\n .build()).result())\n .endDate(\"2021-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleServicePrincipalCertificate:\n type: azuread:ServicePrincipalCertificate\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n type: AsymmetricX509Cert\n encoding: base64\n value:\n fn::invoke:\n Function: std:base64encode\n Arguments:\n input:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.der\n Return: result\n Return: result\n endDate: 2021-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCertificates can be imported using the object ID of the associated service principal and the key ID of the certificate credential, e.g.\n\n```sh\n$ pulumi import azuread:index/servicePrincipalCertificate:ServicePrincipalCertificate example 00000000-0000-0000-0000-000000000000/certificate/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the service principal's object ID, the string \"certificate\" and the certificate's key ID in the format `{ServicePrincipalObjectId}/certificate/{CertificateKeyId}`.\n\n", "properties": { "encoding": { "type": "string", @@ -8280,7 +8147,8 @@ }, "endDateRelative": { "type": "string", - "description": "A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are \"ns\", \"us\" (or \"µs\"), \"ms\", \"s\", \"m\", \"h\". Changing this field forces a new resource to be created.\n\n\u003e One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD.\n" + "description": "A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are \"ns\", \"us\" (or \"µs\"), \"ms\", \"s\", \"m\", \"h\". Changing this field forces a new resource to be created.\n\n\u003e One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property." }, "keyId": { "type": "string", @@ -8288,7 +8156,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n" + "description": "The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n" }, "startDate": { "type": "string", @@ -8325,6 +8193,7 @@ "endDateRelative": { "type": "string", "description": "A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are \"ns\", \"us\" (or \"µs\"), \"ms\", \"s\", \"m\", \"h\". Changing this field forces a new resource to be created.\n\n\u003e One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.", "willReplaceOnChanges": true }, "keyId": { @@ -8334,7 +8203,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, "startDate": { @@ -8374,6 +8243,7 @@ "endDateRelative": { "type": "string", "description": "A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are \"ns\", \"us\" (or \"µs\"), \"ms\", \"s\", \"m\", \"h\". Changing this field forces a new resource to be created.\n\n\u003e One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.", "willReplaceOnChanges": true }, "keyId": { @@ -8383,7 +8253,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, "startDate": { @@ -8407,7 +8277,7 @@ } }, "azuread:index/servicePrincipalClaimsMappingPolicyAssignment:ServicePrincipalClaimsMappingPolicyAssignment": { - "description": "Manages a Claims Mapping Policy Assignment within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application roles: `Policy.ReadWrite.ApplicationConfiguration` and `Policy.Read.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst app = new azuread.ServicePrincipalClaimsMappingPolicyAssignment(\"app\", {\n claimsMappingPolicyId: myPolicy.id,\n servicePrincipalId: myPrincipal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\napp = azuread.ServicePrincipalClaimsMappingPolicyAssignment(\"app\",\n claims_mapping_policy_id=my_policy[\"id\"],\n service_principal_id=my_principal[\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var app = new AzureAD.ServicePrincipalClaimsMappingPolicyAssignment(\"app\", new()\n {\n ClaimsMappingPolicyId = myPolicy.Id,\n ServicePrincipalId = myPrincipal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewServicePrincipalClaimsMappingPolicyAssignment(ctx, \"app\", \u0026azuread.ServicePrincipalClaimsMappingPolicyAssignmentArgs{\n\t\t\tClaimsMappingPolicyId: pulumi.Any(myPolicy.Id),\n\t\t\tServicePrincipalId: pulumi.Any(myPrincipal.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ServicePrincipalClaimsMappingPolicyAssignment;\nimport com.pulumi.azuread.ServicePrincipalClaimsMappingPolicyAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var app = new ServicePrincipalClaimsMappingPolicyAssignment(\"app\", ServicePrincipalClaimsMappingPolicyAssignmentArgs.builder()\n .claimsMappingPolicyId(myPolicy.id())\n .servicePrincipalId(myPrincipal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n app:\n type: azuread:ServicePrincipalClaimsMappingPolicyAssignment\n properties:\n claimsMappingPolicyId: ${myPolicy.id}\n servicePrincipalId: ${myPrincipal.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClaims Mapping Policy can be imported using the `id`, in the form `service-principal-uuid/claimsMappingPolicy/claims-mapping-policy-uuid`, e.g:\n\n```sh\n$ pulumi import azuread:index/servicePrincipalClaimsMappingPolicyAssignment:ServicePrincipalClaimsMappingPolicyAssignment app 00000000-0000-0000-0000-000000000000/claimsMappingPolicy/11111111-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages a Claims Mapping Policy Assignment within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application roles: `Policy.ReadWrite.ApplicationConfiguration` and `Policy.Read.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Application Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst app = new azuread.ServicePrincipalClaimsMappingPolicyAssignment(\"app\", {\n claimsMappingPolicyId: myPolicy.id,\n servicePrincipalId: myPrincipal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\napp = azuread.ServicePrincipalClaimsMappingPolicyAssignment(\"app\",\n claims_mapping_policy_id=my_policy[\"id\"],\n service_principal_id=my_principal[\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var app = new AzureAD.ServicePrincipalClaimsMappingPolicyAssignment(\"app\", new()\n {\n ClaimsMappingPolicyId = myPolicy.Id,\n ServicePrincipalId = myPrincipal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewServicePrincipalClaimsMappingPolicyAssignment(ctx, \"app\", \u0026azuread.ServicePrincipalClaimsMappingPolicyAssignmentArgs{\n\t\t\tClaimsMappingPolicyId: pulumi.Any(myPolicy.Id),\n\t\t\tServicePrincipalId: pulumi.Any(myPrincipal.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.ServicePrincipalClaimsMappingPolicyAssignment;\nimport com.pulumi.azuread.ServicePrincipalClaimsMappingPolicyAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var app = new ServicePrincipalClaimsMappingPolicyAssignment(\"app\", ServicePrincipalClaimsMappingPolicyAssignmentArgs.builder()\n .claimsMappingPolicyId(myPolicy.id())\n .servicePrincipalId(myPrincipal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n app:\n type: azuread:ServicePrincipalClaimsMappingPolicyAssignment\n properties:\n claimsMappingPolicyId: ${myPolicy.id}\n servicePrincipalId: ${myPrincipal.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClaims Mapping Policy can be imported using the `id`, in the form `service-principal-uuid/claimsMappingPolicy/claims-mapping-policy-uuid`, e.g:\n\n```sh\n$ pulumi import azuread:index/servicePrincipalClaimsMappingPolicyAssignment:ServicePrincipalClaimsMappingPolicyAssignment app 00000000-0000-0000-0000-000000000000/claimsMappingPolicy/11111111-0000-0000-0000-000000000000\n```\n\n", "properties": { "claimsMappingPolicyId": { "type": "string", @@ -8415,7 +8285,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for the policy assignment.\n" + "description": "The ID of the service principal for the policy assignment.\n" } }, "required": [ @@ -8430,7 +8300,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for the policy assignment.\n", + "description": "The ID of the service principal for the policy assignment.\n", "willReplaceOnChanges": true } }, @@ -8448,7 +8318,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for the policy assignment.\n", + "description": "The ID of the service principal for the policy assignment.\n", "willReplaceOnChanges": true } }, @@ -8456,7 +8326,7 @@ } }, "azuread:index/servicePrincipalDelegatedPermissionGrant:ServicePrincipalDelegatedPermissionGrant": { - "description": "Manages a delegated permission grant for a service principal, on behalf of a single user, or all users.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one the following directory role: `Global Administrator`\n\n## Example Usage\n\n*Delegated permission grant for all users*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n useExisting: true,\n});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n resourceAccesses: [\n {\n id: msgraph.oauth2PermissionScopeIds.openid,\n type: \"Scope\",\n },\n {\n id: msgraph.oauth2PermissionScopeIds[\"User.Read\"],\n type: \"Scope\",\n },\n ],\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.applicationId});\nconst exampleServicePrincipalDelegatedPermissionGrant = new azuread.ServicePrincipalDelegatedPermissionGrant(\"example\", {\n servicePrincipalObjectId: exampleServicePrincipal.objectId,\n resourceServicePrincipalObjectId: msgraph.objectId,\n claimValues: [\n \"openid\",\n \"User.Read.All\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"microsoftGraph\"],\n use_existing=True)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": well_known.result[\"microsoftGraph\"],\n \"resource_accesses\": [\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"openid\"],\n \"type\": \"Scope\",\n },\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"User.Read\"],\n \"type\": \"Scope\",\n },\n ],\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.application_id)\nexample_service_principal_delegated_permission_grant = azuread.ServicePrincipalDelegatedPermissionGrant(\"example\",\n service_principal_object_id=example_service_principal.object_id,\n resource_service_principal_object_id=msgraph.object_id,\n claim_values=[\n \"openid\",\n \"User.Read.All\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.Openid),\n Type = \"Scope\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.User_Read),\n Type = \"Scope\",\n },\n },\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ApplicationId,\n });\n\n var exampleServicePrincipalDelegatedPermissionGrant = new AzureAD.ServicePrincipalDelegatedPermissionGrant(\"example\", new()\n {\n ServicePrincipalObjectId = exampleServicePrincipal.ObjectId,\n ResourceServicePrincipalObjectId = msgraph.ObjectId,\n ClaimValues = new[]\n {\n \"openid\",\n \"User.Read.All\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.Openid, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.User.Read, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalDelegatedPermissionGrant(ctx, \"example\", \u0026azuread.ServicePrincipalDelegatedPermissionGrantArgs{\n\t\t\tServicePrincipalObjectId: exampleServicePrincipal.ObjectId,\n\t\t\tResourceServicePrincipalObjectId: msgraph.ObjectId,\n\t\t\tClaimValues: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"openid\"),\n\t\t\t\tpulumi.String(\"User.Read.All\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.ServicePrincipalDelegatedPermissionGrant;\nimport com.pulumi.azuread.ServicePrincipalDelegatedPermissionGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .useExisting(true)\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.openid()))\n .type(\"Scope\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.User.Read()))\n .type(\"Scope\")\n .build())\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.applicationId())\n .build());\n\n var exampleServicePrincipalDelegatedPermissionGrant = new ServicePrincipalDelegatedPermissionGrant(\"exampleServicePrincipalDelegatedPermissionGrant\", ServicePrincipalDelegatedPermissionGrantArgs.builder()\n .servicePrincipalObjectId(exampleServicePrincipal.objectId())\n .resourceServicePrincipalObjectId(msgraph.objectId())\n .claimValues( \n \"openid\",\n \"User.Read.All\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.microsoftGraph}\n useExisting: true\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${wellKnown.result.microsoftGraph}\n resourceAccesses:\n - id: ${msgraph.oauth2PermissionScopeIds.openid}\n type: Scope\n - id: ${msgraph.oauth2PermissionScopeIds\"User.Read\"[%!s(MISSING)]}\n type: Scope\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.applicationId}\n exampleServicePrincipalDelegatedPermissionGrant:\n type: azuread:ServicePrincipalDelegatedPermissionGrant\n name: example\n properties:\n servicePrincipalObjectId: ${exampleServicePrincipal.objectId}\n resourceServicePrincipalObjectId: ${msgraph.objectId}\n claimValues:\n - openid\n - User.Read.All\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Delegated permission grant for a single user*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n useExisting: true,\n});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n resourceAccesses: [\n {\n id: msgraph.oauth2PermissionScopeIds.openid,\n type: \"Scope\",\n },\n {\n id: msgraph.oauth2PermissionScopeIds[\"User.Read\"],\n type: \"Scope\",\n },\n ],\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.applicationId});\nconst exampleUser = new azuread.User(\"example\", {\n displayName: \"J. Doe\",\n userPrincipalName: \"jdoe@example.com\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\nconst exampleServicePrincipalDelegatedPermissionGrant = new azuread.ServicePrincipalDelegatedPermissionGrant(\"example\", {\n servicePrincipalObjectId: exampleServicePrincipal.objectId,\n resourceServicePrincipalObjectId: msgraph.objectId,\n claimValues: [\n \"openid\",\n \"User.Read.All\",\n ],\n userObjectId: exampleUser.objectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"microsoftGraph\"],\n use_existing=True)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": well_known.result[\"microsoftGraph\"],\n \"resource_accesses\": [\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"openid\"],\n \"type\": \"Scope\",\n },\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"User.Read\"],\n \"type\": \"Scope\",\n },\n ],\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.application_id)\nexample_user = azuread.User(\"example\",\n display_name=\"J. Doe\",\n user_principal_name=\"jdoe@example.com\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\nexample_service_principal_delegated_permission_grant = azuread.ServicePrincipalDelegatedPermissionGrant(\"example\",\n service_principal_object_id=example_service_principal.object_id,\n resource_service_principal_object_id=msgraph.object_id,\n claim_values=[\n \"openid\",\n \"User.Read.All\",\n ],\n user_object_id=example_user.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.Openid),\n Type = \"Scope\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.User_Read),\n Type = \"Scope\",\n },\n },\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ApplicationId,\n });\n\n var exampleUser = new AzureAD.User(\"example\", new()\n {\n DisplayName = \"J. Doe\",\n UserPrincipalName = \"jdoe@example.com\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n var exampleServicePrincipalDelegatedPermissionGrant = new AzureAD.ServicePrincipalDelegatedPermissionGrant(\"example\", new()\n {\n ServicePrincipalObjectId = exampleServicePrincipal.ObjectId,\n ResourceServicePrincipalObjectId = msgraph.ObjectId,\n ClaimValues = new[]\n {\n \"openid\",\n \"User.Read.All\",\n },\n UserObjectId = exampleUser.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.Openid, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.User.Read, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleUser, err := azuread.NewUser(ctx, \"example\", \u0026azuread.UserArgs{\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalDelegatedPermissionGrant(ctx, \"example\", \u0026azuread.ServicePrincipalDelegatedPermissionGrantArgs{\n\t\t\tServicePrincipalObjectId: exampleServicePrincipal.ObjectId,\n\t\t\tResourceServicePrincipalObjectId: msgraph.ObjectId,\n\t\t\tClaimValues: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"openid\"),\n\t\t\t\tpulumi.String(\"User.Read.All\"),\n\t\t\t},\n\t\t\tUserObjectId: exampleUser.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.ServicePrincipalDelegatedPermissionGrant;\nimport com.pulumi.azuread.ServicePrincipalDelegatedPermissionGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .useExisting(true)\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.openid()))\n .type(\"Scope\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.User.Read()))\n .type(\"Scope\")\n .build())\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.applicationId())\n .build());\n\n var exampleUser = new User(\"exampleUser\", UserArgs.builder()\n .displayName(\"J. Doe\")\n .userPrincipalName(\"jdoe@example.com\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var exampleServicePrincipalDelegatedPermissionGrant = new ServicePrincipalDelegatedPermissionGrant(\"exampleServicePrincipalDelegatedPermissionGrant\", ServicePrincipalDelegatedPermissionGrantArgs.builder()\n .servicePrincipalObjectId(exampleServicePrincipal.objectId())\n .resourceServicePrincipalObjectId(msgraph.objectId())\n .claimValues( \n \"openid\",\n \"User.Read.All\")\n .userObjectId(exampleUser.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.microsoftGraph}\n useExisting: true\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${wellKnown.result.microsoftGraph}\n resourceAccesses:\n - id: ${msgraph.oauth2PermissionScopeIds.openid}\n type: Scope\n - id: ${msgraph.oauth2PermissionScopeIds\"User.Read\"[%!s(MISSING)]}\n type: Scope\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.applicationId}\n exampleUser:\n type: azuread:User\n name: example\n properties:\n displayName: J. Doe\n userPrincipalName: jdoe@example.com\n mailNickname: jdoe\n password: SecretP@sswd99!\n exampleServicePrincipalDelegatedPermissionGrant:\n type: azuread:ServicePrincipalDelegatedPermissionGrant\n name: example\n properties:\n servicePrincipalObjectId: ${exampleServicePrincipal.objectId}\n resourceServicePrincipalObjectId: ${msgraph.objectId}\n claimValues:\n - openid\n - User.Read.All\n userObjectId: ${exampleUser.objectId}\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDelegated permission grants can be imported using their ID, e.g.\n\n```sh\n$ pulumi import azuread:index/servicePrincipalDelegatedPermissionGrant:ServicePrincipalDelegatedPermissionGrant example aaBBcDDeFG6h5JKLMN2PQrrssTTUUvWWxxxxxyyyzzz\n```\n\n", + "description": "Manages a delegated permission grant for a service principal, on behalf of a single user, or all users.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one the following directory role: `Global Administrator`\n\n## Example Usage\n\n*Delegated permission grant for all users*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n useExisting: true,\n});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n resourceAccesses: [\n {\n id: msgraph.oauth2PermissionScopeIds.openid,\n type: \"Scope\",\n },\n {\n id: msgraph.oauth2PermissionScopeIds[\"User.Read\"],\n type: \"Scope\",\n },\n ],\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleServicePrincipalDelegatedPermissionGrant = new azuread.ServicePrincipalDelegatedPermissionGrant(\"example\", {\n servicePrincipalObjectId: exampleServicePrincipal.objectId,\n resourceServicePrincipalObjectId: msgraph.objectId,\n claimValues: [\n \"openid\",\n \"User.Read.All\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"microsoftGraph\"],\n use_existing=True)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": well_known.result[\"microsoftGraph\"],\n \"resource_accesses\": [\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"openid\"],\n \"type\": \"Scope\",\n },\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"User.Read\"],\n \"type\": \"Scope\",\n },\n ],\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_service_principal_delegated_permission_grant = azuread.ServicePrincipalDelegatedPermissionGrant(\"example\",\n service_principal_object_id=example_service_principal.object_id,\n resource_service_principal_object_id=msgraph.object_id,\n claim_values=[\n \"openid\",\n \"User.Read.All\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.Openid),\n Type = \"Scope\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.User_Read),\n Type = \"Scope\",\n },\n },\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleServicePrincipalDelegatedPermissionGrant = new AzureAD.ServicePrincipalDelegatedPermissionGrant(\"example\", new()\n {\n ServicePrincipalObjectId = exampleServicePrincipal.ObjectId,\n ResourceServicePrincipalObjectId = msgraph.ObjectId,\n ClaimValues = new[]\n {\n \"openid\",\n \"User.Read.All\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.Openid, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.User.Read, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalDelegatedPermissionGrant(ctx, \"example\", \u0026azuread.ServicePrincipalDelegatedPermissionGrantArgs{\n\t\t\tServicePrincipalObjectId: exampleServicePrincipal.ObjectId,\n\t\t\tResourceServicePrincipalObjectId: msgraph.ObjectId,\n\t\t\tClaimValues: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"openid\"),\n\t\t\t\tpulumi.String(\"User.Read.All\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.ServicePrincipalDelegatedPermissionGrant;\nimport com.pulumi.azuread.ServicePrincipalDelegatedPermissionGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .useExisting(true)\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.openid()))\n .type(\"Scope\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.User.Read()))\n .type(\"Scope\")\n .build())\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleServicePrincipalDelegatedPermissionGrant = new ServicePrincipalDelegatedPermissionGrant(\"exampleServicePrincipalDelegatedPermissionGrant\", ServicePrincipalDelegatedPermissionGrantArgs.builder()\n .servicePrincipalObjectId(exampleServicePrincipal.objectId())\n .resourceServicePrincipalObjectId(msgraph.objectId())\n .claimValues( \n \"openid\",\n \"User.Read.All\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.microsoftGraph}\n useExisting: true\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${wellKnown.result.microsoftGraph}\n resourceAccesses:\n - id: ${msgraph.oauth2PermissionScopeIds.openid}\n type: Scope\n - id: ${msgraph.oauth2PermissionScopeIds\"User.Read\"[%!s(MISSING)]}\n type: Scope\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleServicePrincipalDelegatedPermissionGrant:\n type: azuread:ServicePrincipalDelegatedPermissionGrant\n name: example\n properties:\n servicePrincipalObjectId: ${exampleServicePrincipal.objectId}\n resourceServicePrincipalObjectId: ${msgraph.objectId}\n claimValues:\n - openid\n - User.Read.All\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Delegated permission grant for a single user*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n useExisting: true,\n});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: wellKnown.then(wellKnown =\u003e wellKnown.result?.microsoftGraph),\n resourceAccesses: [\n {\n id: msgraph.oauth2PermissionScopeIds.openid,\n type: \"Scope\",\n },\n {\n id: msgraph.oauth2PermissionScopeIds[\"User.Read\"],\n type: \"Scope\",\n },\n ],\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleUser = new azuread.User(\"example\", {\n displayName: \"J. Doe\",\n userPrincipalName: \"jdoe@example.com\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\nconst exampleServicePrincipalDelegatedPermissionGrant = new azuread.ServicePrincipalDelegatedPermissionGrant(\"example\", {\n servicePrincipalObjectId: exampleServicePrincipal.objectId,\n resourceServicePrincipalObjectId: msgraph.objectId,\n claimValues: [\n \"openid\",\n \"User.Read.All\",\n ],\n userObjectId: exampleUser.objectId,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"microsoftGraph\"],\n use_existing=True)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": well_known.result[\"microsoftGraph\"],\n \"resource_accesses\": [\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"openid\"],\n \"type\": \"Scope\",\n },\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"User.Read\"],\n \"type\": \"Scope\",\n },\n ],\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_user = azuread.User(\"example\",\n display_name=\"J. Doe\",\n user_principal_name=\"jdoe@example.com\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\nexample_service_principal_delegated_permission_grant = azuread.ServicePrincipalDelegatedPermissionGrant(\"example\",\n service_principal_object_id=example_service_principal.object_id,\n resource_service_principal_object_id=msgraph.object_id,\n claim_values=[\n \"openid\",\n \"User.Read.All\",\n ],\n user_object_id=example_user.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.Openid),\n Type = \"Scope\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.User_Read),\n Type = \"Scope\",\n },\n },\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleUser = new AzureAD.User(\"example\", new()\n {\n DisplayName = \"J. Doe\",\n UserPrincipalName = \"jdoe@example.com\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n var exampleServicePrincipalDelegatedPermissionGrant = new AzureAD.ServicePrincipalDelegatedPermissionGrant(\"example\", new()\n {\n ServicePrincipalObjectId = exampleServicePrincipal.ObjectId,\n ResourceServicePrincipalObjectId = msgraph.ObjectId,\n ClaimValues = new[]\n {\n \"openid\",\n \"User.Read.All\",\n },\n UserObjectId = exampleUser.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.Openid, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.User.Read, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleUser, err := azuread.NewUser(ctx, \"example\", \u0026azuread.UserArgs{\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalDelegatedPermissionGrant(ctx, \"example\", \u0026azuread.ServicePrincipalDelegatedPermissionGrantArgs{\n\t\t\tServicePrincipalObjectId: exampleServicePrincipal.ObjectId,\n\t\t\tResourceServicePrincipalObjectId: msgraph.ObjectId,\n\t\t\tClaimValues: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"openid\"),\n\t\t\t\tpulumi.String(\"User.Read.All\"),\n\t\t\t},\n\t\t\tUserObjectId: exampleUser.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport com.pulumi.azuread.ServicePrincipalDelegatedPermissionGrant;\nimport com.pulumi.azuread.ServicePrincipalDelegatedPermissionGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .useExisting(true)\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().microsoftGraph()))\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.openid()))\n .type(\"Scope\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.User.Read()))\n .type(\"Scope\")\n .build())\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleUser = new User(\"exampleUser\", UserArgs.builder()\n .displayName(\"J. Doe\")\n .userPrincipalName(\"jdoe@example.com\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n var exampleServicePrincipalDelegatedPermissionGrant = new ServicePrincipalDelegatedPermissionGrant(\"exampleServicePrincipalDelegatedPermissionGrant\", ServicePrincipalDelegatedPermissionGrantArgs.builder()\n .servicePrincipalObjectId(exampleServicePrincipal.objectId())\n .resourceServicePrincipalObjectId(msgraph.objectId())\n .claimValues( \n \"openid\",\n \"User.Read.All\")\n .userObjectId(exampleUser.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.microsoftGraph}\n useExisting: true\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${wellKnown.result.microsoftGraph}\n resourceAccesses:\n - id: ${msgraph.oauth2PermissionScopeIds.openid}\n type: Scope\n - id: ${msgraph.oauth2PermissionScopeIds\"User.Read\"[%!s(MISSING)]}\n type: Scope\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleUser:\n type: azuread:User\n name: example\n properties:\n displayName: J. Doe\n userPrincipalName: jdoe@example.com\n mailNickname: jdoe\n password: SecretP@sswd99!\n exampleServicePrincipalDelegatedPermissionGrant:\n type: azuread:ServicePrincipalDelegatedPermissionGrant\n name: example\n properties:\n servicePrincipalObjectId: ${exampleServicePrincipal.objectId}\n resourceServicePrincipalObjectId: ${msgraph.objectId}\n claimValues:\n - openid\n - User.Read.All\n userObjectId: ${exampleUser.objectId}\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDelegated permission grants can be imported using their ID, e.g.\n\n```sh\n$ pulumi import azuread:index/servicePrincipalDelegatedPermissionGrant:ServicePrincipalDelegatedPermissionGrant example aaBBcDDeFG6h5JKLMN2PQrrssTTUUvWWxxxxxyyyzzz\n```\n\n", "properties": { "claimValues": { "type": "array", @@ -8542,7 +8412,7 @@ } }, "azuread:index/servicePrincipalPassword:ServicePrincipalPassword": { - "description": "## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleServicePrincipalPassword = new azuread.ServicePrincipalPassword(\"example\", {servicePrincipalId: exampleServicePrincipal.objectId});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_service_principal_password = azuread.ServicePrincipalPassword(\"example\", service_principal_id=example_service_principal.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleServicePrincipalPassword = new AzureAD.ServicePrincipalPassword(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.ObjectId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalPassword(ctx, \"example\", \u0026azuread.ServicePrincipalPasswordArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ObjectId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalPassword;\nimport com.pulumi.azuread.ServicePrincipalPasswordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleServicePrincipalPassword = new ServicePrincipalPassword(\"exampleServicePrincipalPassword\", ServicePrincipalPasswordArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.objectId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleServicePrincipalPassword:\n type: azuread:ServicePrincipalPassword\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Time-based rotation*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as time from \"@pulumiverse/time\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleRotating = new time.Rotating(\"example\", {rotationDays: 7});\nconst exampleServicePrincipalPassword = new azuread.ServicePrincipalPassword(\"example\", {\n servicePrincipalId: exampleServicePrincipal.objectId,\n rotateWhenChanged: {\n rotation: exampleRotating.id,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumiverse_time as time\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_rotating = time.Rotating(\"example\", rotation_days=7)\nexample_service_principal_password = azuread.ServicePrincipalPassword(\"example\",\n service_principal_id=example_service_principal.object_id,\n rotate_when_changed={\n \"rotation\": example_rotating.id,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Time = Pulumiverse.Time;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleRotating = new Time.Rotating(\"example\", new()\n {\n RotationDays = 7,\n });\n\n var exampleServicePrincipalPassword = new AzureAD.ServicePrincipalPassword(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.ObjectId,\n RotateWhenChanged = \n {\n { \"rotation\", exampleRotating.Id },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi-time/sdk/go/time\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRotating, err := time.NewRotating(ctx, \"example\", \u0026time.RotatingArgs{\n\t\t\tRotationDays: pulumi.Int(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalPassword(ctx, \"example\", \u0026azuread.ServicePrincipalPasswordArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ObjectId,\n\t\t\tRotateWhenChanged: pulumi.StringMap{\n\t\t\t\t\"rotation\": exampleRotating.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.time.Rotating;\nimport com.pulumi.time.RotatingArgs;\nimport com.pulumi.azuread.ServicePrincipalPassword;\nimport com.pulumi.azuread.ServicePrincipalPasswordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleRotating = new Rotating(\"exampleRotating\", RotatingArgs.builder()\n .rotationDays(7)\n .build());\n\n var exampleServicePrincipalPassword = new ServicePrincipalPassword(\"exampleServicePrincipalPassword\", ServicePrincipalPasswordArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.objectId())\n .rotateWhenChanged(Map.of(\"rotation\", exampleRotating.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleRotating:\n type: time:Rotating\n name: example\n properties:\n rotationDays: 7\n exampleServicePrincipalPassword:\n type: azuread:ServicePrincipalPassword\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.objectId}\n rotateWhenChanged:\n rotation: ${exampleRotating.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", + "description": "## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleServicePrincipalPassword = new azuread.ServicePrincipalPassword(\"example\", {servicePrincipalId: exampleServicePrincipal.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_service_principal_password = azuread.ServicePrincipalPassword(\"example\", service_principal_id=example_service_principal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleServicePrincipalPassword = new AzureAD.ServicePrincipalPassword(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalPassword(ctx, \"example\", \u0026azuread.ServicePrincipalPasswordArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalPassword;\nimport com.pulumi.azuread.ServicePrincipalPasswordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleServicePrincipalPassword = new ServicePrincipalPassword(\"exampleServicePrincipalPassword\", ServicePrincipalPasswordArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleServicePrincipalPassword:\n type: azuread:ServicePrincipalPassword\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Time-based rotation*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as time from \"@pulumiverse/time\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleRotating = new time.Rotating(\"example\", {rotationDays: 7});\nconst exampleServicePrincipalPassword = new azuread.ServicePrincipalPassword(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n rotateWhenChanged: {\n rotation: exampleRotating.id,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\nimport pulumiverse_time as time\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_rotating = time.Rotating(\"example\", rotation_days=7)\nexample_service_principal_password = azuread.ServicePrincipalPassword(\"example\",\n service_principal_id=example_service_principal.id,\n rotate_when_changed={\n \"rotation\": example_rotating.id,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\nusing Time = Pulumiverse.Time;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleRotating = new Time.Rotating(\"example\", new()\n {\n RotationDays = 7,\n });\n\n var exampleServicePrincipalPassword = new AzureAD.ServicePrincipalPassword(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n RotateWhenChanged = \n {\n { \"rotation\", exampleRotating.Id },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi-time/sdk/go/time\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRotating, err := time.NewRotating(ctx, \"example\", \u0026time.RotatingArgs{\n\t\t\tRotationDays: pulumi.Int(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalPassword(ctx, \"example\", \u0026azuread.ServicePrincipalPasswordArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tRotateWhenChanged: pulumi.StringMap{\n\t\t\t\t\"rotation\": exampleRotating.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.time.Rotating;\nimport com.pulumi.time.RotatingArgs;\nimport com.pulumi.azuread.ServicePrincipalPassword;\nimport com.pulumi.azuread.ServicePrincipalPasswordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleRotating = new Rotating(\"exampleRotating\", RotatingArgs.builder()\n .rotationDays(7)\n .build());\n\n var exampleServicePrincipalPassword = new ServicePrincipalPassword(\"exampleServicePrincipalPassword\", ServicePrincipalPasswordArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .rotateWhenChanged(Map.of(\"rotation\", exampleRotating.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleRotating:\n type: time:Rotating\n name: example\n properties:\n rotationDays: 7\n exampleServicePrincipalPassword:\n type: azuread:ServicePrincipalPassword\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n rotateWhenChanged:\n rotation: ${exampleRotating.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", "properties": { "displayName": { "type": "string", @@ -8554,7 +8424,8 @@ }, "endDateRelative": { "type": "string", - "description": "A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n" + "description": "A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property." }, "keyId": { "type": "string", @@ -8569,7 +8440,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created.\n" + "description": "The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created.\n" }, "startDate": { "type": "string", @@ -8603,6 +8474,7 @@ "endDateRelative": { "type": "string", "description": "A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.", "willReplaceOnChanges": true }, "rotateWhenChanged": { @@ -8615,7 +8487,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, "startDate": { @@ -8643,6 +8515,7 @@ "endDateRelative": { "type": "string", "description": "A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created.\n", + "deprecationMessage": "The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.", "willReplaceOnChanges": true }, "keyId": { @@ -8659,7 +8532,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, "startDate": { @@ -8677,7 +8550,7 @@ } }, "azuread:index/servicePrincipalTokenSigningCertificate:ServicePrincipalTokenSigningCertificate": { - "description": "## Example Usage\n\n*Using default settings*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.applicationId});\nconst exampleServicePrincipalTokenSigningCertificate = new azuread.ServicePrincipalTokenSigningCertificate(\"example\", {servicePrincipalId: exampleServicePrincipal.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.application_id)\nexample_service_principal_token_signing_certificate = azuread.ServicePrincipalTokenSigningCertificate(\"example\", service_principal_id=example_service_principal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ApplicationId,\n });\n\n var exampleServicePrincipalTokenSigningCertificate = new AzureAD.ServicePrincipalTokenSigningCertificate(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalTokenSigningCertificate(ctx, \"example\", \u0026azuread.ServicePrincipalTokenSigningCertificateArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalTokenSigningCertificate;\nimport com.pulumi.azuread.ServicePrincipalTokenSigningCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.applicationId())\n .build());\n\n var exampleServicePrincipalTokenSigningCertificate = new ServicePrincipalTokenSigningCertificate(\"exampleServicePrincipalTokenSigningCertificate\", ServicePrincipalTokenSigningCertificateArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.applicationId}\n exampleServicePrincipalTokenSigningCertificate:\n type: azuread:ServicePrincipalTokenSigningCertificate\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Using custom settings*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.applicationId});\nconst exampleServicePrincipalTokenSigningCertificate = new azuread.ServicePrincipalTokenSigningCertificate(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n displayName: \"CN=example.com\",\n endDate: \"2023-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.application_id)\nexample_service_principal_token_signing_certificate = azuread.ServicePrincipalTokenSigningCertificate(\"example\",\n service_principal_id=example_service_principal.id,\n display_name=\"CN=example.com\",\n end_date=\"2023-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ApplicationId,\n });\n\n var exampleServicePrincipalTokenSigningCertificate = new AzureAD.ServicePrincipalTokenSigningCertificate(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n DisplayName = \"CN=example.com\",\n EndDate = \"2023-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ApplicationId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalTokenSigningCertificate(ctx, \"example\", \u0026azuread.ServicePrincipalTokenSigningCertificateArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tDisplayName: pulumi.String(\"CN=example.com\"),\n\t\t\tEndDate: pulumi.String(\"2023-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalTokenSigningCertificate;\nimport com.pulumi.azuread.ServicePrincipalTokenSigningCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.applicationId())\n .build());\n\n var exampleServicePrincipalTokenSigningCertificate = new ServicePrincipalTokenSigningCertificate(\"exampleServicePrincipalTokenSigningCertificate\", ServicePrincipalTokenSigningCertificateArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .displayName(\"CN=example.com\")\n .endDate(\"2023-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.applicationId}\n exampleServicePrincipalTokenSigningCertificate:\n type: azuread:ServicePrincipalTokenSigningCertificate\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n displayName: CN=example.com\n endDate: 2023-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nToken signing certificates can be imported using the object ID of the associated service principal and the key ID of the verify certificate credential, e.g.\n\n```sh\n$ pulumi import azuread:index/servicePrincipalTokenSigningCertificate:ServicePrincipalTokenSigningCertificate example 00000000-0000-0000-0000-000000000000/tokenSigningCertificate/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the service principal's object ID, the string \"tokenSigningCertificate\" and the verify certificate's key ID in the format `{ServicePrincipalObjectId}/tokenSigningCertificate/{CertificateKeyId}`.\n\n", + "description": "## Example Usage\n\n*Using default settings*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleServicePrincipalTokenSigningCertificate = new azuread.ServicePrincipalTokenSigningCertificate(\"example\", {servicePrincipalId: exampleServicePrincipal.id});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_service_principal_token_signing_certificate = azuread.ServicePrincipalTokenSigningCertificate(\"example\", service_principal_id=example_service_principal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleServicePrincipalTokenSigningCertificate = new AzureAD.ServicePrincipalTokenSigningCertificate(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalTokenSigningCertificate(ctx, \"example\", \u0026azuread.ServicePrincipalTokenSigningCertificateArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalTokenSigningCertificate;\nimport com.pulumi.azuread.ServicePrincipalTokenSigningCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleServicePrincipalTokenSigningCertificate = new ServicePrincipalTokenSigningCertificate(\"exampleServicePrincipalTokenSigningCertificate\", ServicePrincipalTokenSigningCertificateArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleServicePrincipalTokenSigningCertificate:\n type: azuread:ServicePrincipalTokenSigningCertificate\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Using custom settings*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Application(\"example\", {displayName: \"example\"});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {clientId: example.clientId});\nconst exampleServicePrincipalTokenSigningCertificate = new azuread.ServicePrincipalTokenSigningCertificate(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n displayName: \"CN=example.com\",\n endDate: \"2023-05-01T01:02:03Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Application(\"example\", display_name=\"example\")\nexample_service_principal = azuread.ServicePrincipal(\"example\", client_id=example.client_id)\nexample_service_principal_token_signing_certificate = azuread.ServicePrincipalTokenSigningCertificate(\"example\",\n service_principal_id=example_service_principal.id,\n display_name=\"CN=example.com\",\n end_date=\"2023-05-01T01:02:03Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = example.ClientId,\n });\n\n var exampleServicePrincipalTokenSigningCertificate = new AzureAD.ServicePrincipalTokenSigningCertificate(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n DisplayName = \"CN=example.com\",\n EndDate = \"2023-05-01T01:02:03Z\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: example.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewServicePrincipalTokenSigningCertificate(ctx, \"example\", \u0026azuread.ServicePrincipalTokenSigningCertificateArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tDisplayName: pulumi.String(\"CN=example.com\"),\n\t\t\tEndDate: pulumi.String(\"2023-05-01T01:02:03Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.ServicePrincipalTokenSigningCertificate;\nimport com.pulumi.azuread.ServicePrincipalTokenSigningCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(example.clientId())\n .build());\n\n var exampleServicePrincipalTokenSigningCertificate = new ServicePrincipalTokenSigningCertificate(\"exampleServicePrincipalTokenSigningCertificate\", ServicePrincipalTokenSigningCertificateArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .displayName(\"CN=example.com\")\n .endDate(\"2023-05-01T01:02:03Z\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Application\n properties:\n displayName: example\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${example.clientId}\n exampleServicePrincipalTokenSigningCertificate:\n type: azuread:ServicePrincipalTokenSigningCertificate\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n displayName: CN=example.com\n endDate: 2023-05-01T01:02:03Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nToken signing certificates can be imported using the object ID of the associated service principal and the key ID of the verify certificate credential, e.g.\n\n```sh\n$ pulumi import azuread:index/servicePrincipalTokenSigningCertificate:ServicePrincipalTokenSigningCertificate example 00000000-0000-0000-0000-000000000000/tokenSigningCertificate/11111111-1111-1111-1111-111111111111\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the service principal's object ID, the string \"tokenSigningCertificate\" and the verify certificate's key ID in the format `{ServicePrincipalObjectId}/tokenSigningCertificate/{CertificateKeyId}`.\n\n", "properties": { "displayName": { "type": "string", @@ -8693,7 +8566,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n" + "description": "The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n" }, "startDate": { "type": "string", @@ -8731,7 +8604,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true } }, @@ -8757,7 +8630,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, "startDate": { @@ -8778,11 +8651,11 @@ } }, "azuread:index/synchronizationJob:SynchronizationJob": { - "description": "Manages a synchronization job associated with a service principal (enterprise application) within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Application.ReadWrite.All` or `Directory.ReadWrite.All`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Azure Databricks SCIM Provisioning Connector\",\n});\nconst exampleApplication = new azuread.Application(\"example\", {\n displayName: \"example\",\n templateId: example.then(example =\u003e example.templateId),\n featureTags: [{\n enterprise: true,\n gallery: true,\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: exampleApplication.applicationId,\n useExisting: true,\n});\nconst exampleSynchronizationSecret = new azuread.SynchronizationSecret(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n credentials: [\n {\n key: \"BaseAddress\",\n value: \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n {\n key: \"SecretToken\",\n value: \"some-token\",\n },\n ],\n});\nconst exampleSynchronizationJob = new azuread.SynchronizationJob(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n templateId: \"dataBricks\",\n enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Azure Databricks SCIM Provisioning Connector\")\nexample_application = azuread.Application(\"example\",\n display_name=\"example\",\n template_id=example.template_id,\n feature_tags=[{\n \"enterprise\": True,\n \"gallery\": True,\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example_application.application_id,\n use_existing=True)\nexample_synchronization_secret = azuread.SynchronizationSecret(\"example\",\n service_principal_id=example_service_principal.id,\n credentials=[\n {\n \"key\": \"BaseAddress\",\n \"value\": \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n {\n \"key\": \"SecretToken\",\n \"value\": \"some-token\",\n },\n ])\nexample_synchronization_job = azuread.SynchronizationJob(\"example\",\n service_principal_id=example_service_principal.id,\n template_id=\"dataBricks\",\n enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Azure Databricks SCIM Provisioning Connector\",\n });\n\n var exampleApplication = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n FeatureTags = new[]\n {\n new AzureAD.Inputs.ApplicationFeatureTagArgs\n {\n Enterprise = true,\n Gallery = true,\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = exampleApplication.ApplicationId,\n UseExisting = true,\n });\n\n var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n Credentials = new[]\n {\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"BaseAddress\",\n Value = \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"SecretToken\",\n Value = \"some-token\",\n },\n },\n });\n\n var exampleSynchronizationJob = new AzureAD.SynchronizationJob(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n TemplateId = \"dataBricks\",\n Enabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Azure Databricks SCIM Provisioning Connector\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplication, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t\tFeatureTags: azuread.ApplicationFeatureTagArray{\n\t\t\t\t\u0026azuread.ApplicationFeatureTagArgs{\n\t\t\t\t\tEnterprise: pulumi.Bool(true),\n\t\t\t\t\tGallery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: exampleApplication.ApplicationId,\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewSynchronizationSecret(ctx, \"example\", \u0026azuread.SynchronizationSecretArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tCredentials: azuread.SynchronizationSecretCredentialArray{\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"BaseAddress\"),\n\t\t\t\t\tValue: pulumi.String(\"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"SecretToken\"),\n\t\t\t\t\tValue: pulumi.String(\"some-token\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewSynchronizationJob(ctx, \"example\", \u0026azuread.SynchronizationJobArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tTemplateId: pulumi.String(\"dataBricks\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationFeatureTagArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.SynchronizationSecret;\nimport com.pulumi.azuread.SynchronizationSecretArgs;\nimport com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs;\nimport com.pulumi.azuread.SynchronizationJob;\nimport com.pulumi.azuread.SynchronizationJobArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Azure Databricks SCIM Provisioning Connector\")\n .build());\n\n var exampleApplication = new Application(\"exampleApplication\", ApplicationArgs.builder()\n .displayName(\"example\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .featureTags(ApplicationFeatureTagArgs.builder()\n .enterprise(true)\n .gallery(true)\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(exampleApplication.applicationId())\n .useExisting(true)\n .build());\n\n var exampleSynchronizationSecret = new SynchronizationSecret(\"exampleSynchronizationSecret\", SynchronizationSecretArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .credentials( \n SynchronizationSecretCredentialArgs.builder()\n .key(\"BaseAddress\")\n .value(\"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\")\n .build(),\n SynchronizationSecretCredentialArgs.builder()\n .key(\"SecretToken\")\n .value(\"some-token\")\n .build())\n .build());\n\n var exampleSynchronizationJob = new SynchronizationJob(\"exampleSynchronizationJob\", SynchronizationJobArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .templateId(\"dataBricks\")\n .enabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApplication:\n type: azuread:Application\n name: example\n properties:\n displayName: example\n templateId: ${example.templateId}\n featureTags:\n - enterprise: true\n gallery: true\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${exampleApplication.applicationId}\n useExisting: true\n exampleSynchronizationSecret:\n type: azuread:SynchronizationSecret\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n credentials:\n - key: BaseAddress\n value: https://adb-example.azuredatabricks.net/api/2.0/preview/scim\n - key: SecretToken\n value: some-token\n exampleSynchronizationJob:\n type: azuread:SynchronizationJob\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n templateId: dataBricks\n enabled: true\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Azure Databricks SCIM Provisioning Connector\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nSynchronization jobs can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/synchronizationJob:SynchronizationJob example 00000000-0000-0000-0000-000000000000/job/dataBricks.f5532fc709734b1a90e8a1fa9fd03a82.8442fd39-2183-419c-8732-74b6ce866bd5\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Service Principal Object ID and the ID of the Synchronization Job Id in the format `{servicePrincipalId}/job/{jobId}`.\n\n", + "description": "Manages a synchronization job associated with a service principal (enterprise application) within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Application.ReadWrite.All` or `Directory.ReadWrite.All`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Azure Databricks SCIM Provisioning Connector\",\n});\nconst exampleApplicationFromTemplate = new azuread.ApplicationFromTemplate(\"example\", {\n displayName: \"example\",\n templateId: example.then(example =\u003e example.templateId),\n});\nconst exampleGetServicePrincipal = azuread.getServicePrincipalOutput({\n objectId: exampleApplicationFromTemplate.servicePrincipalObjectId,\n});\nconst exampleSynchronizationSecret = new azuread.SynchronizationSecret(\"example\", {\n servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal =\u003e exampleGetServicePrincipal.id),\n credentials: [\n {\n key: \"BaseAddress\",\n value: \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n {\n key: \"SecretToken\",\n value: \"some-token\",\n },\n ],\n});\nconst exampleSynchronizationJob = new azuread.SynchronizationJob(\"example\", {\n servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal =\u003e exampleGetServicePrincipal.id),\n templateId: \"dataBricks\",\n enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Azure Databricks SCIM Provisioning Connector\")\nexample_application_from_template = azuread.ApplicationFromTemplate(\"example\",\n display_name=\"example\",\n template_id=example.template_id)\nexample_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id)\nexample_synchronization_secret = azuread.SynchronizationSecret(\"example\",\n service_principal_id=example_get_service_principal.id,\n credentials=[\n {\n \"key\": \"BaseAddress\",\n \"value\": \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n {\n \"key\": \"SecretToken\",\n \"value\": \"some-token\",\n },\n ])\nexample_synchronization_job = azuread.SynchronizationJob(\"example\",\n service_principal_id=example_get_service_principal.id,\n template_id=\"dataBricks\",\n enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Azure Databricks SCIM Provisioning Connector\",\n });\n\n var exampleApplicationFromTemplate = new AzureAD.ApplicationFromTemplate(\"example\", new()\n {\n DisplayName = \"example\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n });\n\n var exampleGetServicePrincipal = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ObjectId = exampleApplicationFromTemplate.ServicePrincipalObjectId,\n });\n\n var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret(\"example\", new()\n {\n ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.Id),\n Credentials = new[]\n {\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"BaseAddress\",\n Value = \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"SecretToken\",\n Value = \"some-token\",\n },\n },\n });\n\n var exampleSynchronizationJob = new AzureAD.SynchronizationJob(\"example\", new()\n {\n ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.Id),\n TemplateId = \"dataBricks\",\n Enabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Azure Databricks SCIM Provisioning Connector\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplicationFromTemplate, err := azuread.NewApplicationFromTemplate(ctx, \"example\", \u0026azuread.ApplicationFromTemplateArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetServicePrincipal := azuread.LookupServicePrincipalOutput(ctx, azuread.GetServicePrincipalOutputArgs{\n\t\t\tObjectId: exampleApplicationFromTemplate.ServicePrincipalObjectId,\n\t\t}, nil)\n\t\t_, err = azuread.NewSynchronizationSecret(ctx, \"example\", \u0026azuread.SynchronizationSecretArgs{\n\t\t\tServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) {\n\t\t\t\treturn \u0026exampleGetServicePrincipal.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tCredentials: azuread.SynchronizationSecretCredentialArray{\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"BaseAddress\"),\n\t\t\t\t\tValue: pulumi.String(\"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"SecretToken\"),\n\t\t\t\t\tValue: pulumi.String(\"some-token\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewSynchronizationJob(ctx, \"example\", \u0026azuread.SynchronizationJobArgs{\n\t\t\tServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) {\n\t\t\t\treturn \u0026exampleGetServicePrincipal.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tTemplateId: pulumi.String(\"dataBricks\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.ApplicationFromTemplate;\nimport com.pulumi.azuread.ApplicationFromTemplateArgs;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport com.pulumi.azuread.SynchronizationSecret;\nimport com.pulumi.azuread.SynchronizationSecretArgs;\nimport com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs;\nimport com.pulumi.azuread.SynchronizationJob;\nimport com.pulumi.azuread.SynchronizationJobArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Azure Databricks SCIM Provisioning Connector\")\n .build());\n\n var exampleApplicationFromTemplate = new ApplicationFromTemplate(\"exampleApplicationFromTemplate\", ApplicationFromTemplateArgs.builder()\n .displayName(\"example\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .build());\n\n final var exampleGetServicePrincipal = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .objectId(exampleApplicationFromTemplate.servicePrincipalObjectId())\n .build());\n\n var exampleSynchronizationSecret = new SynchronizationSecret(\"exampleSynchronizationSecret\", SynchronizationSecretArgs.builder()\n .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult).applyValue(exampleGetServicePrincipal -\u003e exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.id())))\n .credentials( \n SynchronizationSecretCredentialArgs.builder()\n .key(\"BaseAddress\")\n .value(\"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\")\n .build(),\n SynchronizationSecretCredentialArgs.builder()\n .key(\"SecretToken\")\n .value(\"some-token\")\n .build())\n .build());\n\n var exampleSynchronizationJob = new SynchronizationJob(\"exampleSynchronizationJob\", SynchronizationJobArgs.builder()\n .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult).applyValue(exampleGetServicePrincipal -\u003e exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.id())))\n .templateId(\"dataBricks\")\n .enabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApplicationFromTemplate:\n type: azuread:ApplicationFromTemplate\n name: example\n properties:\n displayName: example\n templateId: ${example.templateId}\n exampleSynchronizationSecret:\n type: azuread:SynchronizationSecret\n name: example\n properties:\n servicePrincipalId: ${exampleGetServicePrincipal.id}\n credentials:\n - key: BaseAddress\n value: https://adb-example.azuredatabricks.net/api/2.0/preview/scim\n - key: SecretToken\n value: some-token\n exampleSynchronizationJob:\n type: azuread:SynchronizationJob\n name: example\n properties:\n servicePrincipalId: ${exampleGetServicePrincipal.id}\n templateId: dataBricks\n enabled: true\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Azure Databricks SCIM Provisioning Connector\n exampleGetServicePrincipal:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n objectId: ${exampleApplicationFromTemplate.servicePrincipalObjectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nSynchronization jobs can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/synchronizationJob:SynchronizationJob example 00000000-0000-0000-0000-000000000000/job/dataBricks.f5532fc709734b1a90e8a1fa9fd03a82.8442fd39-2183-419c-8732-74b6ce866bd5\n```\n\n-\u003e This ID format is unique to Terraform and is composed of the Service Principal Object ID and the ID of the Synchronization Job Id in the format `{servicePrincipalId}/job/{jobId}`.\n\n", "properties": { "enabled": { "type": "boolean", - "description": "Whether or not the provisioning job is enabled. Default state is `true`.\n" + "description": "Whether the provisioning job is enabled. Default state is `true`.\n" }, "schedules": { "type": "array", @@ -8793,7 +8666,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created.\n" + "description": "The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created.\n" }, "templateId": { "type": "string", @@ -8808,11 +8681,11 @@ "inputProperties": { "enabled": { "type": "boolean", - "description": "Whether or not the provisioning job is enabled. Default state is `true`.\n" + "description": "Whether the provisioning job is enabled. Default state is `true`.\n" }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, "templateId": { @@ -8830,7 +8703,7 @@ "properties": { "enabled": { "type": "boolean", - "description": "Whether or not the provisioning job is enabled. Default state is `true`.\n" + "description": "Whether the provisioning job is enabled. Default state is `true`.\n" }, "schedules": { "type": "array", @@ -8841,7 +8714,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true }, "templateId": { @@ -8854,7 +8727,7 @@ } }, "azuread:index/synchronizationJobProvisionOnDemand:SynchronizationJobProvisionOnDemand": { - "description": "Manages synchronization job on demand provisioning associated with a service principal (enterprise application) within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Synchronization.ReadWrite.All`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst exampleGroup = new azuread.Group(\"example\", {\n displayName: \"example\",\n owners: [current.then(current =\u003e current.objectId)],\n securityEnabled: true,\n});\nconst example = azuread.getApplicationTemplate({\n displayName: \"Azure Databricks SCIM Provisioning Connector\",\n});\nconst exampleApplication = new azuread.Application(\"example\", {\n displayName: \"example\",\n templateId: example.then(example =\u003e example.templateId),\n featureTags: [{\n enterprise: true,\n gallery: true,\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: exampleApplication.clientId,\n useExisting: true,\n});\nconst exampleSynchronizationSecret = new azuread.SynchronizationSecret(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n credentials: [\n {\n key: \"BaseAddress\",\n value: \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n {\n key: \"SecretToken\",\n value: \"some-token\",\n },\n ],\n});\nconst exampleSynchronizationJob = new azuread.SynchronizationJob(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n templateId: \"dataBricks\",\n enabled: true,\n});\nconst exampleSynchronizationJobProvisionOnDemand = new azuread.SynchronizationJobProvisionOnDemand(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n synchronizationJobId: exampleSynchronizationJob.id,\n parameters: [{\n ruleId: \"\",\n subjects: [{\n objectId: exampleGroup.objectId,\n objectTypeName: \"Group\",\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample_group = azuread.Group(\"example\",\n display_name=\"example\",\n owners=[current.object_id],\n security_enabled=True)\nexample = azuread.get_application_template(display_name=\"Azure Databricks SCIM Provisioning Connector\")\nexample_application = azuread.Application(\"example\",\n display_name=\"example\",\n template_id=example.template_id,\n feature_tags=[{\n \"enterprise\": True,\n \"gallery\": True,\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example_application.client_id,\n use_existing=True)\nexample_synchronization_secret = azuread.SynchronizationSecret(\"example\",\n service_principal_id=example_service_principal.id,\n credentials=[\n {\n \"key\": \"BaseAddress\",\n \"value\": \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n {\n \"key\": \"SecretToken\",\n \"value\": \"some-token\",\n },\n ])\nexample_synchronization_job = azuread.SynchronizationJob(\"example\",\n service_principal_id=example_service_principal.id,\n template_id=\"dataBricks\",\n enabled=True)\nexample_synchronization_job_provision_on_demand = azuread.SynchronizationJobProvisionOnDemand(\"example\",\n service_principal_id=example_service_principal.id,\n synchronization_job_id=example_synchronization_job.id,\n parameters=[{\n \"rule_id\": \"\",\n \"subjects\": [{\n \"object_id\": example_group.object_id,\n \"object_type_name\": \"Group\",\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var exampleGroup = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n SecurityEnabled = true,\n });\n\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Azure Databricks SCIM Provisioning Connector\",\n });\n\n var exampleApplication = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n FeatureTags = new[]\n {\n new AzureAD.Inputs.ApplicationFeatureTagArgs\n {\n Enterprise = true,\n Gallery = true,\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = exampleApplication.ClientId,\n UseExisting = true,\n });\n\n var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n Credentials = new[]\n {\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"BaseAddress\",\n Value = \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"SecretToken\",\n Value = \"some-token\",\n },\n },\n });\n\n var exampleSynchronizationJob = new AzureAD.SynchronizationJob(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n TemplateId = \"dataBricks\",\n Enabled = true,\n });\n\n var exampleSynchronizationJobProvisionOnDemand = new AzureAD.SynchronizationJobProvisionOnDemand(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n SynchronizationJobId = exampleSynchronizationJob.Id,\n Parameters = new[]\n {\n new AzureAD.Inputs.SynchronizationJobProvisionOnDemandParameterArgs\n {\n RuleId = \"\",\n Subjects = new[]\n {\n new AzureAD.Inputs.SynchronizationJobProvisionOnDemandParameterSubjectArgs\n {\n ObjectId = exampleGroup.ObjectId,\n ObjectTypeName = \"Group\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGroup, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Azure Databricks SCIM Provisioning Connector\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplication, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t\tFeatureTags: azuread.ApplicationFeatureTagArray{\n\t\t\t\t\u0026azuread.ApplicationFeatureTagArgs{\n\t\t\t\t\tEnterprise: pulumi.Bool(true),\n\t\t\t\t\tGallery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: exampleApplication.ClientId,\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewSynchronizationSecret(ctx, \"example\", \u0026azuread.SynchronizationSecretArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tCredentials: azuread.SynchronizationSecretCredentialArray{\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"BaseAddress\"),\n\t\t\t\t\tValue: pulumi.String(\"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"SecretToken\"),\n\t\t\t\t\tValue: pulumi.String(\"some-token\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSynchronizationJob, err := azuread.NewSynchronizationJob(ctx, \"example\", \u0026azuread.SynchronizationJobArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tTemplateId: pulumi.String(\"dataBricks\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewSynchronizationJobProvisionOnDemand(ctx, \"example\", \u0026azuread.SynchronizationJobProvisionOnDemandArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tSynchronizationJobId: exampleSynchronizationJob.ID(),\n\t\t\tParameters: azuread.SynchronizationJobProvisionOnDemandParameterArray{\n\t\t\t\t\u0026azuread.SynchronizationJobProvisionOnDemandParameterArgs{\n\t\t\t\t\tRuleId: pulumi.String(\"\"),\n\t\t\t\t\tSubjects: azuread.SynchronizationJobProvisionOnDemandParameterSubjectArray{\n\t\t\t\t\t\t\u0026azuread.SynchronizationJobProvisionOnDemandParameterSubjectArgs{\n\t\t\t\t\t\t\tObjectId: exampleGroup.ObjectId,\n\t\t\t\t\t\t\tObjectTypeName: pulumi.String(\"Group\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationFeatureTagArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.SynchronizationSecret;\nimport com.pulumi.azuread.SynchronizationSecretArgs;\nimport com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs;\nimport com.pulumi.azuread.SynchronizationJob;\nimport com.pulumi.azuread.SynchronizationJobArgs;\nimport com.pulumi.azuread.SynchronizationJobProvisionOnDemand;\nimport com.pulumi.azuread.SynchronizationJobProvisionOnDemandArgs;\nimport com.pulumi.azuread.inputs.SynchronizationJobProvisionOnDemandParameterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var exampleGroup = new Group(\"exampleGroup\", GroupArgs.builder()\n .displayName(\"example\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .securityEnabled(true)\n .build());\n\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Azure Databricks SCIM Provisioning Connector\")\n .build());\n\n var exampleApplication = new Application(\"exampleApplication\", ApplicationArgs.builder()\n .displayName(\"example\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .featureTags(ApplicationFeatureTagArgs.builder()\n .enterprise(true)\n .gallery(true)\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(exampleApplication.clientId())\n .useExisting(true)\n .build());\n\n var exampleSynchronizationSecret = new SynchronizationSecret(\"exampleSynchronizationSecret\", SynchronizationSecretArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .credentials( \n SynchronizationSecretCredentialArgs.builder()\n .key(\"BaseAddress\")\n .value(\"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\")\n .build(),\n SynchronizationSecretCredentialArgs.builder()\n .key(\"SecretToken\")\n .value(\"some-token\")\n .build())\n .build());\n\n var exampleSynchronizationJob = new SynchronizationJob(\"exampleSynchronizationJob\", SynchronizationJobArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .templateId(\"dataBricks\")\n .enabled(true)\n .build());\n\n var exampleSynchronizationJobProvisionOnDemand = new SynchronizationJobProvisionOnDemand(\"exampleSynchronizationJobProvisionOnDemand\", SynchronizationJobProvisionOnDemandArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .synchronizationJobId(exampleSynchronizationJob.id())\n .parameters(SynchronizationJobProvisionOnDemandParameterArgs.builder()\n .ruleId(\"\")\n .subjects(SynchronizationJobProvisionOnDemandParameterSubjectArgs.builder()\n .objectId(exampleGroup.objectId())\n .objectTypeName(\"Group\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroup:\n type: azuread:Group\n name: example\n properties:\n displayName: example\n owners:\n - ${current.objectId}\n securityEnabled: true\n exampleApplication:\n type: azuread:Application\n name: example\n properties:\n displayName: example\n templateId: ${example.templateId}\n featureTags:\n - enterprise: true\n gallery: true\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${exampleApplication.clientId}\n useExisting: true\n exampleSynchronizationSecret:\n type: azuread:SynchronizationSecret\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n credentials:\n - key: BaseAddress\n value: https://adb-example.azuredatabricks.net/api/2.0/preview/scim\n - key: SecretToken\n value: some-token\n exampleSynchronizationJob:\n type: azuread:SynchronizationJob\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n templateId: dataBricks\n enabled: true\n exampleSynchronizationJobProvisionOnDemand:\n type: azuread:SynchronizationJobProvisionOnDemand\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n synchronizationJobId: ${exampleSynchronizationJob.id}\n parameters:\n - ruleId:\n subjects:\n - objectId: ${exampleGroup.objectId}\n objectTypeName: Group\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Azure Databricks SCIM Provisioning Connector\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", + "description": "Manages synchronization job on demand provisioning associated with a service principal (enterprise application) within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Synchronization.ReadWrite.All`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nconst exampleGroup = new azuread.Group(\"example\", {\n displayName: \"example\",\n owners: [current.then(current =\u003e current.objectId)],\n securityEnabled: true,\n});\nconst example = azuread.getApplicationTemplate({\n displayName: \"Azure Databricks SCIM Provisioning Connector\",\n});\nconst exampleApplicationFromTemplate = new azuread.ApplicationFromTemplate(\"example\", {\n displayName: \"example\",\n templateId: example.then(example =\u003e example.templateId),\n});\nconst exampleGetServicePrincipal = azuread.getServicePrincipalOutput({\n objectId: exampleApplicationFromTemplate.servicePrincipalObjectId,\n});\nconst exampleSynchronizationSecret = new azuread.SynchronizationSecret(\"example\", {\n servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal =\u003e exampleGetServicePrincipal.id),\n credentials: [\n {\n key: \"BaseAddress\",\n value: \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n {\n key: \"SecretToken\",\n value: \"some-token\",\n },\n ],\n});\nconst exampleSynchronizationJob = new azuread.SynchronizationJob(\"example\", {\n servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal =\u003e exampleGetServicePrincipal.id),\n templateId: \"dataBricks\",\n enabled: true,\n});\nconst exampleSynchronizationJobProvisionOnDemand = new azuread.SynchronizationJobProvisionOnDemand(\"example\", {\n servicePrincipalId: exampleSynchronizationJob.servicePrincipalId,\n synchronizationJobId: exampleSynchronizationJob.id,\n parameters: [{\n ruleId: \"\",\n subjects: [{\n objectId: exampleGroup.objectId,\n objectTypeName: \"Group\",\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\nexample_group = azuread.Group(\"example\",\n display_name=\"example\",\n owners=[current.object_id],\n security_enabled=True)\nexample = azuread.get_application_template(display_name=\"Azure Databricks SCIM Provisioning Connector\")\nexample_application_from_template = azuread.ApplicationFromTemplate(\"example\",\n display_name=\"example\",\n template_id=example.template_id)\nexample_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id)\nexample_synchronization_secret = azuread.SynchronizationSecret(\"example\",\n service_principal_id=example_get_service_principal.id,\n credentials=[\n {\n \"key\": \"BaseAddress\",\n \"value\": \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n {\n \"key\": \"SecretToken\",\n \"value\": \"some-token\",\n },\n ])\nexample_synchronization_job = azuread.SynchronizationJob(\"example\",\n service_principal_id=example_get_service_principal.id,\n template_id=\"dataBricks\",\n enabled=True)\nexample_synchronization_job_provision_on_demand = azuread.SynchronizationJobProvisionOnDemand(\"example\",\n service_principal_id=example_synchronization_job.service_principal_id,\n synchronization_job_id=example_synchronization_job.id,\n parameters=[{\n \"rule_id\": \"\",\n \"subjects\": [{\n \"object_id\": example_group.object_id,\n \"object_type_name\": \"Group\",\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n var exampleGroup = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"example\",\n Owners = new[]\n {\n current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n },\n SecurityEnabled = true,\n });\n\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Azure Databricks SCIM Provisioning Connector\",\n });\n\n var exampleApplicationFromTemplate = new AzureAD.ApplicationFromTemplate(\"example\", new()\n {\n DisplayName = \"example\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n });\n\n var exampleGetServicePrincipal = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ObjectId = exampleApplicationFromTemplate.ServicePrincipalObjectId,\n });\n\n var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret(\"example\", new()\n {\n ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.Id),\n Credentials = new[]\n {\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"BaseAddress\",\n Value = \"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\",\n },\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"SecretToken\",\n Value = \"some-token\",\n },\n },\n });\n\n var exampleSynchronizationJob = new AzureAD.SynchronizationJob(\"example\", new()\n {\n ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.Id),\n TemplateId = \"dataBricks\",\n Enabled = true,\n });\n\n var exampleSynchronizationJobProvisionOnDemand = new AzureAD.SynchronizationJobProvisionOnDemand(\"example\", new()\n {\n ServicePrincipalId = exampleSynchronizationJob.ServicePrincipalId,\n SynchronizationJobId = exampleSynchronizationJob.Id,\n Parameters = new[]\n {\n new AzureAD.Inputs.SynchronizationJobProvisionOnDemandParameterArgs\n {\n RuleId = \"\",\n Subjects = new[]\n {\n new AzureAD.Inputs.SynchronizationJobProvisionOnDemandParameterSubjectArgs\n {\n ObjectId = exampleGroup.ObjectId,\n ObjectTypeName = \"Group\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGroup, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tOwners: pulumi.StringArray{\n\t\t\t\tpulumi.String(current.ObjectId),\n\t\t\t},\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Azure Databricks SCIM Provisioning Connector\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplicationFromTemplate, err := azuread.NewApplicationFromTemplate(ctx, \"example\", \u0026azuread.ApplicationFromTemplateArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetServicePrincipal := azuread.LookupServicePrincipalOutput(ctx, azuread.GetServicePrincipalOutputArgs{\n\t\t\tObjectId: exampleApplicationFromTemplate.ServicePrincipalObjectId,\n\t\t}, nil)\n\t\t_, err = azuread.NewSynchronizationSecret(ctx, \"example\", \u0026azuread.SynchronizationSecretArgs{\n\t\t\tServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) {\n\t\t\t\treturn \u0026exampleGetServicePrincipal.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tCredentials: azuread.SynchronizationSecretCredentialArray{\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"BaseAddress\"),\n\t\t\t\t\tValue: pulumi.String(\"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"SecretToken\"),\n\t\t\t\t\tValue: pulumi.String(\"some-token\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSynchronizationJob, err := azuread.NewSynchronizationJob(ctx, \"example\", \u0026azuread.SynchronizationJobArgs{\n\t\t\tServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) {\n\t\t\t\treturn \u0026exampleGetServicePrincipal.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tTemplateId: pulumi.String(\"dataBricks\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewSynchronizationJobProvisionOnDemand(ctx, \"example\", \u0026azuread.SynchronizationJobProvisionOnDemandArgs{\n\t\t\tServicePrincipalId: exampleSynchronizationJob.ServicePrincipalId,\n\t\t\tSynchronizationJobId: exampleSynchronizationJob.ID(),\n\t\t\tParameters: azuread.SynchronizationJobProvisionOnDemandParameterArray{\n\t\t\t\t\u0026azuread.SynchronizationJobProvisionOnDemandParameterArgs{\n\t\t\t\t\tRuleId: pulumi.String(\"\"),\n\t\t\t\t\tSubjects: azuread.SynchronizationJobProvisionOnDemandParameterSubjectArray{\n\t\t\t\t\t\t\u0026azuread.SynchronizationJobProvisionOnDemandParameterSubjectArgs{\n\t\t\t\t\t\t\tObjectId: exampleGroup.ObjectId,\n\t\t\t\t\t\t\tObjectTypeName: pulumi.String(\"Group\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.ApplicationFromTemplate;\nimport com.pulumi.azuread.ApplicationFromTemplateArgs;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport com.pulumi.azuread.SynchronizationSecret;\nimport com.pulumi.azuread.SynchronizationSecretArgs;\nimport com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs;\nimport com.pulumi.azuread.SynchronizationJob;\nimport com.pulumi.azuread.SynchronizationJobArgs;\nimport com.pulumi.azuread.SynchronizationJobProvisionOnDemand;\nimport com.pulumi.azuread.SynchronizationJobProvisionOnDemandArgs;\nimport com.pulumi.azuread.inputs.SynchronizationJobProvisionOnDemandParameterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n var exampleGroup = new Group(\"exampleGroup\", GroupArgs.builder()\n .displayName(\"example\")\n .owners(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .securityEnabled(true)\n .build());\n\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Azure Databricks SCIM Provisioning Connector\")\n .build());\n\n var exampleApplicationFromTemplate = new ApplicationFromTemplate(\"exampleApplicationFromTemplate\", ApplicationFromTemplateArgs.builder()\n .displayName(\"example\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .build());\n\n final var exampleGetServicePrincipal = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .objectId(exampleApplicationFromTemplate.servicePrincipalObjectId())\n .build());\n\n var exampleSynchronizationSecret = new SynchronizationSecret(\"exampleSynchronizationSecret\", SynchronizationSecretArgs.builder()\n .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult).applyValue(exampleGetServicePrincipal -\u003e exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.id())))\n .credentials( \n SynchronizationSecretCredentialArgs.builder()\n .key(\"BaseAddress\")\n .value(\"https://adb-example.azuredatabricks.net/api/2.0/preview/scim\")\n .build(),\n SynchronizationSecretCredentialArgs.builder()\n .key(\"SecretToken\")\n .value(\"some-token\")\n .build())\n .build());\n\n var exampleSynchronizationJob = new SynchronizationJob(\"exampleSynchronizationJob\", SynchronizationJobArgs.builder()\n .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult).applyValue(exampleGetServicePrincipal -\u003e exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.id())))\n .templateId(\"dataBricks\")\n .enabled(true)\n .build());\n\n var exampleSynchronizationJobProvisionOnDemand = new SynchronizationJobProvisionOnDemand(\"exampleSynchronizationJobProvisionOnDemand\", SynchronizationJobProvisionOnDemandArgs.builder()\n .servicePrincipalId(exampleSynchronizationJob.servicePrincipalId())\n .synchronizationJobId(exampleSynchronizationJob.id())\n .parameters(SynchronizationJobProvisionOnDemandParameterArgs.builder()\n .ruleId(\"\")\n .subjects(SynchronizationJobProvisionOnDemandParameterSubjectArgs.builder()\n .objectId(exampleGroup.objectId())\n .objectTypeName(\"Group\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroup:\n type: azuread:Group\n name: example\n properties:\n displayName: example\n owners:\n - ${current.objectId}\n securityEnabled: true\n exampleApplicationFromTemplate:\n type: azuread:ApplicationFromTemplate\n name: example\n properties:\n displayName: example\n templateId: ${example.templateId}\n exampleSynchronizationSecret:\n type: azuread:SynchronizationSecret\n name: example\n properties:\n servicePrincipalId: ${exampleGetServicePrincipal.id}\n credentials:\n - key: BaseAddress\n value: https://adb-example.azuredatabricks.net/api/2.0/preview/scim\n - key: SecretToken\n value: some-token\n exampleSynchronizationJob:\n type: azuread:SynchronizationJob\n name: example\n properties:\n servicePrincipalId: ${exampleGetServicePrincipal.id}\n templateId: dataBricks\n enabled: true\n exampleSynchronizationJobProvisionOnDemand:\n type: azuread:SynchronizationJobProvisionOnDemand\n name: example\n properties:\n servicePrincipalId: ${exampleSynchronizationJob.servicePrincipalId}\n synchronizationJobId: ${exampleSynchronizationJob.id}\n parameters:\n - ruleId:\n subjects:\n - objectId: ${exampleGroup.objectId}\n objectTypeName: Group\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Azure Databricks SCIM Provisioning Connector\n exampleGetServicePrincipal:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n objectId: ${exampleApplicationFromTemplate.servicePrincipalObjectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", "properties": { "parameters": { "type": "array", @@ -8865,11 +8738,11 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for the synchronization job.\n" + "description": "The ID of the service principal for the synchronization job.\n" }, "synchronizationJobId": { "type": "string", - "description": "Identifier of the synchronization template this job is based on.\n" + "description": "The ID of the synchronization job.\n" }, "triggers": { "type": "object", @@ -8894,12 +8767,12 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for the synchronization job.\n", + "description": "The ID of the service principal for the synchronization job.\n", "willReplaceOnChanges": true }, "synchronizationJobId": { "type": "string", - "description": "Identifier of the synchronization template this job is based on.\n", + "description": "The ID of the synchronization job.\n", "willReplaceOnChanges": true }, "triggers": { @@ -8928,12 +8801,12 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for the synchronization job.\n", + "description": "The ID of the service principal for the synchronization job.\n", "willReplaceOnChanges": true }, "synchronizationJobId": { "type": "string", - "description": "Identifier of the synchronization template this job is based on.\n", + "description": "The ID of the synchronization job.\n", "willReplaceOnChanges": true }, "triggers": { @@ -8948,7 +8821,7 @@ } }, "azuread:index/synchronizationSecret:SynchronizationSecret": { - "description": "Manages synchronization secrets associated with a service principal (enterprise application) within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Application.ReadWrite.All` or `Directory.ReadWrite.All`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Azure Databricks SCIM Provisioning Connector\",\n});\nconst exampleApplication = new azuread.Application(\"example\", {\n displayName: \"example\",\n templateId: example.then(example =\u003e example.templateId),\n featureTags: [{\n enterprise: true,\n gallery: true,\n }],\n});\nconst exampleServicePrincipal = new azuread.ServicePrincipal(\"example\", {\n clientId: exampleApplication.applicationId,\n useExisting: true,\n});\nconst exampleSynchronizationSecret = new azuread.SynchronizationSecret(\"example\", {\n servicePrincipalId: exampleServicePrincipal.id,\n credentials: [\n {\n key: \"BaseAddress\",\n value: \"abc\",\n },\n {\n key: \"SecretToken\",\n value: \"some-token\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Azure Databricks SCIM Provisioning Connector\")\nexample_application = azuread.Application(\"example\",\n display_name=\"example\",\n template_id=example.template_id,\n feature_tags=[{\n \"enterprise\": True,\n \"gallery\": True,\n }])\nexample_service_principal = azuread.ServicePrincipal(\"example\",\n client_id=example_application.application_id,\n use_existing=True)\nexample_synchronization_secret = azuread.SynchronizationSecret(\"example\",\n service_principal_id=example_service_principal.id,\n credentials=[\n {\n \"key\": \"BaseAddress\",\n \"value\": \"abc\",\n },\n {\n \"key\": \"SecretToken\",\n \"value\": \"some-token\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Azure Databricks SCIM Provisioning Connector\",\n });\n\n var exampleApplication = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n FeatureTags = new[]\n {\n new AzureAD.Inputs.ApplicationFeatureTagArgs\n {\n Enterprise = true,\n Gallery = true,\n },\n },\n });\n\n var exampleServicePrincipal = new AzureAD.ServicePrincipal(\"example\", new()\n {\n ClientId = exampleApplication.ApplicationId,\n UseExisting = true,\n });\n\n var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret(\"example\", new()\n {\n ServicePrincipalId = exampleServicePrincipal.Id,\n Credentials = new[]\n {\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"BaseAddress\",\n Value = \"abc\",\n },\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"SecretToken\",\n Value = \"some-token\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Azure Databricks SCIM Provisioning Connector\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplication, err := azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t\tFeatureTags: azuread.ApplicationFeatureTagArray{\n\t\t\t\t\u0026azuread.ApplicationFeatureTagArgs{\n\t\t\t\t\tEnterprise: pulumi.Bool(true),\n\t\t\t\t\tGallery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, \"example\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: exampleApplication.ApplicationId,\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewSynchronizationSecret(ctx, \"example\", \u0026azuread.SynchronizationSecretArgs{\n\t\t\tServicePrincipalId: exampleServicePrincipal.ID(),\n\t\t\tCredentials: azuread.SynchronizationSecretCredentialArray{\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"BaseAddress\"),\n\t\t\t\t\tValue: pulumi.String(\"abc\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"SecretToken\"),\n\t\t\t\t\tValue: pulumi.String(\"some-token\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationFeatureTagArgs;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.SynchronizationSecret;\nimport com.pulumi.azuread.SynchronizationSecretArgs;\nimport com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Azure Databricks SCIM Provisioning Connector\")\n .build());\n\n var exampleApplication = new Application(\"exampleApplication\", ApplicationArgs.builder()\n .displayName(\"example\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .featureTags(ApplicationFeatureTagArgs.builder()\n .enterprise(true)\n .gallery(true)\n .build())\n .build());\n\n var exampleServicePrincipal = new ServicePrincipal(\"exampleServicePrincipal\", ServicePrincipalArgs.builder()\n .clientId(exampleApplication.applicationId())\n .useExisting(true)\n .build());\n\n var exampleSynchronizationSecret = new SynchronizationSecret(\"exampleSynchronizationSecret\", SynchronizationSecretArgs.builder()\n .servicePrincipalId(exampleServicePrincipal.id())\n .credentials( \n SynchronizationSecretCredentialArgs.builder()\n .key(\"BaseAddress\")\n .value(\"abc\")\n .build(),\n SynchronizationSecretCredentialArgs.builder()\n .key(\"SecretToken\")\n .value(\"some-token\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApplication:\n type: azuread:Application\n name: example\n properties:\n displayName: example\n templateId: ${example.templateId}\n featureTags:\n - enterprise: true\n gallery: true\n exampleServicePrincipal:\n type: azuread:ServicePrincipal\n name: example\n properties:\n clientId: ${exampleApplication.applicationId}\n useExisting: true\n exampleSynchronizationSecret:\n type: azuread:SynchronizationSecret\n name: example\n properties:\n servicePrincipalId: ${exampleServicePrincipal.id}\n credentials:\n - key: BaseAddress\n value: abc\n - key: SecretToken\n value: some-token\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Azure Databricks SCIM Provisioning Connector\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", + "description": "Manages synchronization secrets associated with a service principal (enterprise application) within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `Application.ReadWrite.All` or `Directory.ReadWrite.All`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Azure Databricks SCIM Provisioning Connector\",\n});\nconst exampleApplicationFromTemplate = new azuread.ApplicationFromTemplate(\"example\", {\n displayName: \"example\",\n templateId: example.then(example =\u003e example.templateId),\n});\nconst exampleGetServicePrincipal = azuread.getServicePrincipalOutput({\n objectId: exampleApplicationFromTemplate.servicePrincipalObjectId,\n});\nconst exampleSynchronizationSecret = new azuread.SynchronizationSecret(\"example\", {\n servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal =\u003e exampleGetServicePrincipal.id),\n credentials: [\n {\n key: \"BaseAddress\",\n value: \"abc\",\n },\n {\n key: \"SecretToken\",\n value: \"some-token\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Azure Databricks SCIM Provisioning Connector\")\nexample_application_from_template = azuread.ApplicationFromTemplate(\"example\",\n display_name=\"example\",\n template_id=example.template_id)\nexample_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id)\nexample_synchronization_secret = azuread.SynchronizationSecret(\"example\",\n service_principal_id=example_get_service_principal.id,\n credentials=[\n {\n \"key\": \"BaseAddress\",\n \"value\": \"abc\",\n },\n {\n \"key\": \"SecretToken\",\n \"value\": \"some-token\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Azure Databricks SCIM Provisioning Connector\",\n });\n\n var exampleApplicationFromTemplate = new AzureAD.ApplicationFromTemplate(\"example\", new()\n {\n DisplayName = \"example\",\n TemplateId = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n });\n\n var exampleGetServicePrincipal = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ObjectId = exampleApplicationFromTemplate.ServicePrincipalObjectId,\n });\n\n var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret(\"example\", new()\n {\n ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.Id),\n Credentials = new[]\n {\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"BaseAddress\",\n Value = \"abc\",\n },\n new AzureAD.Inputs.SynchronizationSecretCredentialArgs\n {\n Key = \"SecretToken\",\n Value = \"some-token\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Azure Databricks SCIM Provisioning Connector\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApplicationFromTemplate, err := azuread.NewApplicationFromTemplate(ctx, \"example\", \u0026azuread.ApplicationFromTemplateArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tTemplateId: pulumi.String(example.TemplateId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetServicePrincipal := azuread.LookupServicePrincipalOutput(ctx, azuread.GetServicePrincipalOutputArgs{\n\t\t\tObjectId: exampleApplicationFromTemplate.ServicePrincipalObjectId,\n\t\t}, nil)\n\t\t_, err = azuread.NewSynchronizationSecret(ctx, \"example\", \u0026azuread.SynchronizationSecretArgs{\n\t\t\tServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) {\n\t\t\t\treturn \u0026exampleGetServicePrincipal.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tCredentials: azuread.SynchronizationSecretCredentialArray{\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"BaseAddress\"),\n\t\t\t\t\tValue: pulumi.String(\"abc\"),\n\t\t\t\t},\n\t\t\t\t\u0026azuread.SynchronizationSecretCredentialArgs{\n\t\t\t\t\tKey: pulumi.String(\"SecretToken\"),\n\t\t\t\t\tValue: pulumi.String(\"some-token\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport com.pulumi.azuread.ApplicationFromTemplate;\nimport com.pulumi.azuread.ApplicationFromTemplateArgs;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport com.pulumi.azuread.SynchronizationSecret;\nimport com.pulumi.azuread.SynchronizationSecretArgs;\nimport com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Azure Databricks SCIM Provisioning Connector\")\n .build());\n\n var exampleApplicationFromTemplate = new ApplicationFromTemplate(\"exampleApplicationFromTemplate\", ApplicationFromTemplateArgs.builder()\n .displayName(\"example\")\n .templateId(example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()))\n .build());\n\n final var exampleGetServicePrincipal = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .objectId(exampleApplicationFromTemplate.servicePrincipalObjectId())\n .build());\n\n var exampleSynchronizationSecret = new SynchronizationSecret(\"exampleSynchronizationSecret\", SynchronizationSecretArgs.builder()\n .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult).applyValue(exampleGetServicePrincipal -\u003e exampleGetServicePrincipal.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.id())))\n .credentials( \n SynchronizationSecretCredentialArgs.builder()\n .key(\"BaseAddress\")\n .value(\"abc\")\n .build(),\n SynchronizationSecretCredentialArgs.builder()\n .key(\"SecretToken\")\n .value(\"some-token\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApplicationFromTemplate:\n type: azuread:ApplicationFromTemplate\n name: example\n properties:\n displayName: example\n templateId: ${example.templateId}\n exampleSynchronizationSecret:\n type: azuread:SynchronizationSecret\n name: example\n properties:\n servicePrincipalId: ${exampleGetServicePrincipal.id}\n credentials:\n - key: BaseAddress\n value: abc\n - key: SecretToken\n value: some-token\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Azure Databricks SCIM Provisioning Connector\n exampleGetServicePrincipal:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n objectId: ${exampleApplicationFromTemplate.servicePrincipalObjectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource does not support importing.\n\n", "properties": { "credentials": { "type": "array", @@ -8959,7 +8832,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created.\n" + "description": "The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created.\n" } }, "required": [ @@ -8975,7 +8848,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true } }, @@ -8994,7 +8867,7 @@ }, "servicePrincipalId": { "type": "string", - "description": "The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created.\n", + "description": "The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created.\n", "willReplaceOnChanges": true } }, @@ -9002,7 +8875,7 @@ } }, "azuread:index/user:User": { - "description": "Manages a user within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `User.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `User Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.User(\"example\", {\n userPrincipalName: \"jdoe@example.com\",\n displayName: \"J. Doe\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.User(\"example\",\n user_principal_name=\"jdoe@example.com\",\n display_name=\"J. Doe\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.User(\"example\", new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n DisplayName = \"J. Doe\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewUser(ctx, \"example\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new User(\"example\", UserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .displayName(\"J. Doe\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:User\n properties:\n userPrincipalName: jdoe@example.com\n displayName: J. Doe\n mailNickname: jdoe\n password: SecretP@sswd99!\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsers can be imported using their object ID, e.g.\n\n```sh\n$ pulumi import azuread:index/user:User my_user 00000000-0000-0000-0000-000000000000\n```\n\n", + "description": "Manages a user within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `User.ReadWrite.All` or `Directory.ReadWrite.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `User Administrator` or `Global Administrator`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.User(\"example\", {\n userPrincipalName: \"jdoe@example.com\",\n displayName: \"J. Doe\",\n mailNickname: \"jdoe\",\n password: \"SecretP@sswd99!\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.User(\"example\",\n user_principal_name=\"jdoe@example.com\",\n display_name=\"J. Doe\",\n mail_nickname=\"jdoe\",\n password=\"SecretP@sswd99!\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.User(\"example\", new()\n {\n UserPrincipalName = \"jdoe@example.com\",\n DisplayName = \"J. Doe\",\n MailNickname = \"jdoe\",\n Password = \"SecretP@sswd99!\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewUser(ctx, \"example\", \u0026azuread.UserArgs{\n\t\t\tUserPrincipalName: pulumi.String(\"jdoe@example.com\"),\n\t\t\tDisplayName: pulumi.String(\"J. Doe\"),\n\t\t\tMailNickname: pulumi.String(\"jdoe\"),\n\t\t\tPassword: pulumi.String(\"SecretP@sswd99!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.User;\nimport com.pulumi.azuread.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new User(\"example\", UserArgs.builder()\n .userPrincipalName(\"jdoe@example.com\")\n .displayName(\"J. Doe\")\n .mailNickname(\"jdoe\")\n .password(\"SecretP@sswd99!\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:User\n properties:\n userPrincipalName: jdoe@example.com\n displayName: J. Doe\n mailNickname: jdoe\n password: SecretP@sswd99!\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsers can be imported using their object ID, e.g.\n\n```sh\n$ pulumi import azuread:index/user:User my_user 00000000-0000-0000-0000-000000000000\n```\n\n", "properties": { "aboutMe": { "type": "string", @@ -9598,7 +9471,7 @@ } }, "azuread:index/userFlowAttribute:UserFlowAttribute": { - "description": "Manages user flow attributes in an Azure Active Directory (Azure AD) tenant.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `IdentityUserFlow.ReadWrite.All`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.UserFlowAttribute(\"example\", {\n displayName: \"Hobby\",\n description: \"Your hobby\",\n dataType: \"string\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.UserFlowAttribute(\"example\",\n display_name=\"Hobby\",\n description=\"Your hobby\",\n data_type=\"string\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.UserFlowAttribute(\"example\", new()\n {\n DisplayName = \"Hobby\",\n Description = \"Your hobby\",\n DataType = \"string\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewUserFlowAttribute(ctx, \"example\", \u0026azuread.UserFlowAttributeArgs{\n\t\t\tDisplayName: pulumi.String(\"Hobby\"),\n\t\t\tDescription: pulumi.String(\"Your hobby\"),\n\t\t\tDataType: pulumi.String(\"string\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.UserFlowAttribute;\nimport com.pulumi.azuread.UserFlowAttributeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new UserFlowAttribute(\"example\", UserFlowAttributeArgs.builder()\n .displayName(\"Hobby\")\n .description(\"Your hobby\")\n .dataType(\"string\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:UserFlowAttribute\n properties:\n displayName: Hobby\n description: Your hobby\n dataType: string\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUser flow attributes can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/userFlowAttribute:UserFlowAttribute example extension_ecc9f88db2924942b8a96f44873616fe_Hobbyjkorv\n```\n\n-\u003e This ID can be queried using the [User Flow Attributes API](https://learn.microsoft.com/en-us/graph/api/identityuserflowattribute-list?view=graph-rest-1.0\u0026tabs=http).\n\n", + "description": "Manages user flow attributes in an Azure Active Directory (Azure AD) tenant.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the following application role: `IdentityUserFlow.ReadWrite.All`\n\n## Example Usage\n\n*Basic example*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.UserFlowAttribute(\"example\", {\n displayName: \"Hobby\",\n description: \"Your hobby\",\n dataType: \"string\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.UserFlowAttribute(\"example\",\n display_name=\"Hobby\",\n description=\"Your hobby\",\n data_type=\"string\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.UserFlowAttribute(\"example\", new()\n {\n DisplayName = \"Hobby\",\n Description = \"Your hobby\",\n DataType = \"string\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.NewUserFlowAttribute(ctx, \"example\", \u0026azuread.UserFlowAttributeArgs{\n\t\t\tDisplayName: pulumi.String(\"Hobby\"),\n\t\t\tDescription: pulumi.String(\"Your hobby\"),\n\t\t\tDataType: pulumi.String(\"string\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.UserFlowAttribute;\nimport com.pulumi.azuread.UserFlowAttributeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new UserFlowAttribute(\"example\", UserFlowAttributeArgs.builder()\n .displayName(\"Hobby\")\n .description(\"Your hobby\")\n .dataType(\"string\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:UserFlowAttribute\n properties:\n displayName: Hobby\n description: Your hobby\n dataType: string\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUser flow attributes can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import azuread:index/userFlowAttribute:UserFlowAttribute example extension_ecc9f88db2924942b8a96f44873616fe_Hobbyjkorv\n```\n\n-\u003e This ID can be queried using the [User Flow Attributes API](https://learn.microsoft.com/en-us/graph/api/identityuserflowattribute-list?view=graph-rest-1.0\u0026tabs=http).\n\n", "properties": { "attributeType": { "type": "string", @@ -9672,7 +9545,7 @@ }, "functions": { "azuread:index/getAccessPackage:getAccessPackage": { - "description": "Use this data source to retrieve information for an existing access package within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `EntitlementManagement.Read.All`, or `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this data source requires one of the following directory roles: `Catalog owner`, `Catalog reader`, `Access package manager`, `Global Reader`, or `Global Administrator`.\n\n## Example Usage\n\n*Look up by ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackage({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackage.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAccessPackage(ctx, \u0026azuread.LookupAccessPackageArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackage(GetAccessPackageArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackage\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by DisplayName*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackage({\n catalogId: \"00000000-0000-0000-0000-000000000000\",\n displayName: \"My access package Catalog\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package(catalog_id=\"00000000-0000-0000-0000-000000000000\",\n display_name=\"My access package Catalog\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackage.Invoke(new()\n {\n CatalogId = \"00000000-0000-0000-0000-000000000000\",\n DisplayName = \"My access package Catalog\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAccessPackage(ctx, \u0026azuread.LookupAccessPackageArgs{\n\t\t\tCatalogId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\tDisplayName: pulumi.StringRef(\"My access package Catalog\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackage(GetAccessPackageArgs.builder()\n .catalogId(\"00000000-0000-0000-0000-000000000000\")\n .displayName(\"My access package Catalog\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackage\n Arguments:\n catalogId: 00000000-0000-0000-0000-000000000000\n displayName: My access package Catalog\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Use this data source to retrieve information for an existing access package within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `EntitlementManagement.Read.All`, or `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this data source requires one of the following directory roles: `Catalog owner`, `Catalog reader`, `Access package manager`, `Global Reader`, or `Global Administrator`.\n\n## Example Usage\n\n*Look up by ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackage({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackage.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAccessPackage(ctx, \u0026azuread.LookupAccessPackageArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackage(GetAccessPackageArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackage\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by DisplayName*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackage({\n catalogId: \"00000000-0000-0000-0000-000000000000\",\n displayName: \"My access package Catalog\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package(catalog_id=\"00000000-0000-0000-0000-000000000000\",\n display_name=\"My access package Catalog\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackage.Invoke(new()\n {\n CatalogId = \"00000000-0000-0000-0000-000000000000\",\n DisplayName = \"My access package Catalog\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAccessPackage(ctx, \u0026azuread.LookupAccessPackageArgs{\n\t\t\tCatalogId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\tDisplayName: pulumi.StringRef(\"My access package Catalog\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackage(GetAccessPackageArgs.builder()\n .catalogId(\"00000000-0000-0000-0000-000000000000\")\n .displayName(\"My access package Catalog\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackage\n Arguments:\n catalogId: 00000000-0000-0000-0000-000000000000\n displayName: My access package Catalog\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getAccessPackage.\n", "properties": { @@ -9727,7 +9600,7 @@ } }, "azuread:index/getAccessPackageCatalog:getAccessPackageCatalog": { - "description": "i\nUse this resource to retrieve information for an existing access package catalog within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `EntitlementManagement.Read.All`, or `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this data source requires one of the following directory roles: `Catalog owner`, `Catalog reader`, `Global Reader`, or `Global Administrator`.\n\n## Example Usage\n\n*Look up by ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackageCatalog({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package_catalog(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackageCatalog.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAccessPackageCatalog(ctx, \u0026azuread.LookupAccessPackageCatalogArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackageCatalog(GetAccessPackageCatalogArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackageCatalog\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by DisplayName*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackageCatalog({\n displayName: \"My access package Catalog\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package_catalog(display_name=\"My access package Catalog\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackageCatalog.Invoke(new()\n {\n DisplayName = \"My access package Catalog\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAccessPackageCatalog(ctx, \u0026azuread.LookupAccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"My access package Catalog\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackageCatalog(GetAccessPackageCatalogArgs.builder()\n .displayName(\"My access package Catalog\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackageCatalog\n Arguments:\n displayName: My access package Catalog\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "i\nUse this resource to retrieve information for an existing access package catalog within Identity Governance in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `EntitlementManagement.Read.All`, or `EntitlementManagement.ReadWrite.All`.\n\nWhen authenticated with a user principal, this data source requires one of the following directory roles: `Catalog owner`, `Catalog reader`, `Global Reader`, or `Global Administrator`.\n\n## Example Usage\n\n*Look up by ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackageCatalog({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package_catalog(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackageCatalog.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAccessPackageCatalog(ctx, \u0026azuread.LookupAccessPackageCatalogArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackageCatalog(GetAccessPackageCatalogArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackageCatalog\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by DisplayName*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackageCatalog({\n displayName: \"My access package Catalog\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package_catalog(display_name=\"My access package Catalog\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackageCatalog.Invoke(new()\n {\n DisplayName = \"My access package Catalog\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAccessPackageCatalog(ctx, \u0026azuread.LookupAccessPackageCatalogArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"My access package Catalog\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackageCatalog(GetAccessPackageCatalogArgs.builder()\n .displayName(\"My access package Catalog\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackageCatalog\n Arguments:\n displayName: My access package Catalog\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getAccessPackageCatalog.\n", "properties": { @@ -9780,7 +9653,7 @@ } }, "azuread:index/getAccessPackageCatalogRole:getAccessPackageCatalogRole": { - "description": "Gets information about an access package catalog role.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `EntitlementManagement.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n### By Group Display Name)\n\n*Look up by display name*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackageCatalogRole({\n displayName: \"Catalog owner\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package_catalog_role(display_name=\"Catalog owner\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackageCatalogRole.Invoke(new()\n {\n DisplayName = \"Catalog owner\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetAccessPackageCatalogRole(ctx, \u0026azuread.GetAccessPackageCatalogRoleArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Catalog owner\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackageCatalogRole(GetAccessPackageCatalogRoleArgs.builder()\n .displayName(\"Catalog owner\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackageCatalogRole\n Arguments:\n displayName: Catalog owner\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by object ID*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackageCatalogRole({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package_catalog_role(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackageCatalogRole.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetAccessPackageCatalogRole(ctx, \u0026azuread.GetAccessPackageCatalogRoleArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackageCatalogRole(GetAccessPackageCatalogRoleArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackageCatalogRole\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Gets information about an access package catalog role.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `EntitlementManagement.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n### By Group Display Name)\n\n*Look up by display name*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackageCatalogRole({\n displayName: \"Catalog owner\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package_catalog_role(display_name=\"Catalog owner\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackageCatalogRole.Invoke(new()\n {\n DisplayName = \"Catalog owner\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetAccessPackageCatalogRole(ctx, \u0026azuread.GetAccessPackageCatalogRoleArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Catalog owner\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackageCatalogRole(GetAccessPackageCatalogRoleArgs.builder()\n .displayName(\"Catalog owner\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackageCatalogRole\n Arguments:\n displayName: Catalog owner\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by object ID*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAccessPackageCatalogRole({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_access_package_catalog_role(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAccessPackageCatalogRole.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetAccessPackageCatalogRole(ctx, \u0026azuread.GetAccessPackageCatalogRoleArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAccessPackageCatalogRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAccessPackageCatalogRole(GetAccessPackageCatalogRoleArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAccessPackageCatalogRole\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getAccessPackageCatalogRole.\n", "properties": { @@ -9830,7 +9703,7 @@ } }, "azuread:index/getAdministrativeUnit:getAdministrativeUnit": { - "description": "Gets information about an adminisrative unit in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `AdministrativeUnit.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n### By Group Display Name)\n\n*Look up by display name*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAdministrativeUnit({\n displayName: \"Example-AU\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_administrative_unit(display_name=\"Example-AU\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAdministrativeUnit.Invoke(new()\n {\n DisplayName = \"Example-AU\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAdministrativeUnit(ctx, \u0026azuread.LookupAdministrativeUnitArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Example-AU\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAdministrativeUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAdministrativeUnit(GetAdministrativeUnitArgs.builder()\n .displayName(\"Example-AU\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAdministrativeUnit\n Arguments:\n displayName: Example-AU\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by object ID*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAdministrativeUnit({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_administrative_unit(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAdministrativeUnit.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAdministrativeUnit(ctx, \u0026azuread.LookupAdministrativeUnitArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAdministrativeUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAdministrativeUnit(GetAdministrativeUnitArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAdministrativeUnit\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Gets information about an adminisrative unit in Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `AdministrativeUnit.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n### By Group Display Name)\n\n*Look up by display name*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAdministrativeUnit({\n displayName: \"Example-AU\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_administrative_unit(display_name=\"Example-AU\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAdministrativeUnit.Invoke(new()\n {\n DisplayName = \"Example-AU\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAdministrativeUnit(ctx, \u0026azuread.LookupAdministrativeUnitArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Example-AU\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAdministrativeUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAdministrativeUnit(GetAdministrativeUnitArgs.builder()\n .displayName(\"Example-AU\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAdministrativeUnit\n Arguments:\n displayName: Example-AU\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by object ID*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getAdministrativeUnit({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_administrative_unit(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetAdministrativeUnit.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupAdministrativeUnit(ctx, \u0026azuread.LookupAdministrativeUnitArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetAdministrativeUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getAdministrativeUnit(GetAdministrativeUnitArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getAdministrativeUnit\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getAdministrativeUnit.\n", "properties": { @@ -9888,14 +9761,10 @@ } }, "azuread:index/getApplication:getApplication": { - "description": "Use this data source to access information about an existing Application within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Application.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplication({\n displayName: \"My First AzureAD Application\",\n});\nexport const applicationObjectId = example.then(example =\u003e example.objectId);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application(display_name=\"My First AzureAD Application\")\npulumi.export(\"applicationObjectId\", example.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplication.Invoke(new()\n {\n DisplayName = \"My First AzureAD Application\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"applicationObjectId\"] = example.Apply(getApplicationResult =\u003e getApplicationResult.ObjectId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupApplication(ctx, \u0026azuread.LookupApplicationArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"My First AzureAD Application\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"applicationObjectId\", example.ObjectId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplication(GetApplicationArgs.builder()\n .displayName(\"My First AzureAD Application\")\n .build());\n\n ctx.export(\"applicationObjectId\", example.applyValue(getApplicationResult -\u003e getApplicationResult.objectId()));\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplication\n Arguments:\n displayName: My First AzureAD Application\noutputs:\n applicationObjectId: ${example.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Use this data source to access information about an existing Application within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Application.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplication({\n displayName: \"My First AzureAD Application\",\n});\nexport const applicationObjectId = example.then(example =\u003e example.objectId);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application(display_name=\"My First AzureAD Application\")\npulumi.export(\"applicationObjectId\", example.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplication.Invoke(new()\n {\n DisplayName = \"My First AzureAD Application\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"applicationObjectId\"] = example.Apply(getApplicationResult =\u003e getApplicationResult.ObjectId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.LookupApplication(ctx, \u0026azuread.LookupApplicationArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"My First AzureAD Application\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"applicationObjectId\", example.ObjectId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplication(GetApplicationArgs.builder()\n .displayName(\"My First AzureAD Application\")\n .build());\n\n ctx.export(\"applicationObjectId\", example.applyValue(getApplicationResult -\u003e getApplicationResult.objectId()));\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplication\n Arguments:\n displayName: My First AzureAD Application\noutputs:\n applicationObjectId: ${example.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getApplication.\n", "properties": { - "applicationId": { - "type": "string", - "deprecationMessage": "The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider" - }, "clientId": { "type": "string", "description": "Specifies the Client ID of the application.\n" @@ -9939,10 +9808,6 @@ }, "type": "array" }, - "applicationId": { - "deprecationMessage": "The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider", - "type": "string" - }, "clientId": { "description": "The Client ID for the application.\n", "type": "string" @@ -10100,7 +9965,6 @@ "apis", "appRoleIds", "appRoles", - "applicationId", "clientId", "description", "deviceOnlyAuthEnabled", @@ -10136,7 +10000,7 @@ } }, "azuread:index/getApplicationPublishedAppIds:getApplicationPublishedAppIds": { - "description": "## Example Usage\n\n*Listing well-known application IDs*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nexport const publishedAppIds = wellKnown.then(wellKnown =\u003e wellKnown.result);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\npulumi.export(\"publishedAppIds\", well_known.result)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"publishedAppIds\"] = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"publishedAppIds\", wellKnown.Result)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n ctx.export(\"publishedAppIds\", wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result()));\n }\n}\n```\n```yaml\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\noutputs:\n publishedAppIds: ${wellKnown.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Granting access to an application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.MicrosoftGraph),\n useExisting: true,\n});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: wellKnown.then(wellKnown =\u003e wellKnown.result?.MicrosoftGraph),\n resourceAccesses: [\n {\n id: msgraph.appRoleIds[\"User.Read.All\"],\n type: \"Role\",\n },\n {\n id: msgraph.oauth2PermissionScopeIds[\"User.ReadWrite\"],\n type: \"Scope\",\n },\n ],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"MicrosoftGraph\"],\n use_existing=True)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": well_known.result[\"MicrosoftGraph\"],\n \"resource_accesses\": [\n {\n \"id\": msgraph.app_role_ids[\"User.Read.All\"],\n \"type\": \"Role\",\n },\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"User.ReadWrite\"],\n \"type\": \"Scope\",\n },\n ],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.User_Read_All),\n Type = \"Role\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.User_ReadWrite),\n Type = \"Scope\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn appRoleIds.User.Read.All, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.User.ReadWrite, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().MicrosoftGraph()))\n .useExisting(true)\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().MicrosoftGraph()))\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.User.Read.All()))\n .type(\"Role\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.User.ReadWrite()))\n .type(\"Scope\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.MicrosoftGraph}\n useExisting: true\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${wellKnown.result.MicrosoftGraph}\n resourceAccesses:\n - id: ${msgraph.appRoleIds\"User.Read.All\"[%!s(MISSING)]}\n type: Role\n - id: ${msgraph.oauth2PermissionScopeIds\"User.ReadWrite\"[%!s(MISSING)]}\n type: Scope\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "## Example Usage\n\n*Listing well-known application IDs*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nexport const publishedAppIds = wellKnown.then(wellKnown =\u003e wellKnown.result);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\npulumi.export(\"publishedAppIds\", well_known.result)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"publishedAppIds\"] = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"publishedAppIds\", wellKnown.Result)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n ctx.export(\"publishedAppIds\", wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result()));\n }\n}\n```\n```yaml\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\noutputs:\n publishedAppIds: ${wellKnown.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Granting access to an application*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst wellKnown = azuread.getApplicationPublishedAppIds({});\nconst msgraph = new azuread.ServicePrincipal(\"msgraph\", {\n clientId: wellKnown.then(wellKnown =\u003e wellKnown.result?.MicrosoftGraph),\n useExisting: true,\n});\nconst example = new azuread.Application(\"example\", {\n displayName: \"example\",\n requiredResourceAccesses: [{\n resourceAppId: wellKnown.then(wellKnown =\u003e wellKnown.result?.MicrosoftGraph),\n resourceAccesses: [\n {\n id: msgraph.appRoleIds[\"User.Read.All\"],\n type: \"Role\",\n },\n {\n id: msgraph.oauth2PermissionScopeIds[\"User.ReadWrite\"],\n type: \"Scope\",\n },\n ],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nwell_known = azuread.get_application_published_app_ids()\nmsgraph = azuread.ServicePrincipal(\"msgraph\",\n client_id=well_known.result[\"MicrosoftGraph\"],\n use_existing=True)\nexample = azuread.Application(\"example\",\n display_name=\"example\",\n required_resource_accesses=[{\n \"resource_app_id\": well_known.result[\"MicrosoftGraph\"],\n \"resource_accesses\": [\n {\n \"id\": msgraph.app_role_ids[\"User.Read.All\"],\n \"type\": \"Role\",\n },\n {\n \"id\": msgraph.oauth2_permission_scope_ids[\"User.ReadWrite\"],\n \"type\": \"Scope\",\n },\n ],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wellKnown = AzureAD.GetApplicationPublishedAppIds.Invoke();\n\n var msgraph = new AzureAD.ServicePrincipal(\"msgraph\", new()\n {\n ClientId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n UseExisting = true,\n });\n\n var example = new AzureAD.Application(\"example\", new()\n {\n DisplayName = \"example\",\n RequiredResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs\n {\n ResourceAppId = wellKnown.Apply(getApplicationPublishedAppIdsResult =\u003e getApplicationPublishedAppIdsResult.Result?.MicrosoftGraph),\n ResourceAccesses = new[]\n {\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.AppRoleIds.Apply(appRoleIds =\u003e appRoleIds.User_Read_All),\n Type = \"Role\",\n },\n new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs\n {\n Id = msgraph.Oauth2PermissionScopeIds.Apply(oauth2PermissionScopeIds =\u003e oauth2PermissionScopeIds.User_ReadWrite),\n Type = \"Scope\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\twellKnown, err := azuread.GetApplicationPublishedAppIds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmsgraph, err := azuread.NewServicePrincipal(ctx, \"msgraph\", \u0026azuread.ServicePrincipalArgs{\n\t\t\tClientId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\tUseExisting: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azuread.NewApplication(ctx, \"example\", \u0026azuread.ApplicationArgs{\n\t\t\tDisplayName: pulumi.String(\"example\"),\n\t\t\tRequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{\n\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessArgs{\n\t\t\t\t\tResourceAppId: pulumi.String(wellKnown.Result.MicrosoftGraph),\n\t\t\t\t\tResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn appRoleIds.User.Read.All, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Role\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026azuread.ApplicationRequiredResourceAccessResourceAccessArgs{\n\t\t\t\t\t\t\tId: msgraph.Oauth2PermissionScopeIds.ApplyT(func(oauth2PermissionScopeIds map[string]string) (string, error) {\n\t\t\t\t\t\t\t\treturn oauth2PermissionScopeIds.User.ReadWrite, nil\n\t\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\tType: pulumi.String(\"Scope\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.ServicePrincipal;\nimport com.pulumi.azuread.ServicePrincipalArgs;\nimport com.pulumi.azuread.Application;\nimport com.pulumi.azuread.ApplicationArgs;\nimport com.pulumi.azuread.inputs.ApplicationRequiredResourceAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var wellKnown = AzureadFunctions.getApplicationPublishedAppIds();\n\n var msgraph = new ServicePrincipal(\"msgraph\", ServicePrincipalArgs.builder()\n .clientId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().MicrosoftGraph()))\n .useExisting(true)\n .build());\n\n var example = new Application(\"example\", ApplicationArgs.builder()\n .displayName(\"example\")\n .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder()\n .resourceAppId(wellKnown.applyValue(getApplicationPublishedAppIdsResult -\u003e getApplicationPublishedAppIdsResult.result().MicrosoftGraph()))\n .resourceAccesses( \n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.appRoleIds().applyValue(appRoleIds -\u003e appRoleIds.User.Read.All()))\n .type(\"Role\")\n .build(),\n ApplicationRequiredResourceAccessResourceAccessArgs.builder()\n .id(msgraph.oauth2PermissionScopeIds().applyValue(oauth2PermissionScopeIds -\u003e oauth2PermissionScopeIds.User.ReadWrite()))\n .type(\"Scope\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n msgraph:\n type: azuread:ServicePrincipal\n properties:\n clientId: ${wellKnown.result.MicrosoftGraph}\n useExisting: true\n example:\n type: azuread:Application\n properties:\n displayName: example\n requiredResourceAccesses:\n - resourceAppId: ${wellKnown.result.MicrosoftGraph}\n resourceAccesses:\n - id: ${msgraph.appRoleIds\"User.Read.All\"[%!s(MISSING)]}\n type: Role\n - id: ${msgraph.oauth2PermissionScopeIds\"User.ReadWrite\"[%!s(MISSING)]}\n type: Scope\nvariables:\n wellKnown:\n fn::invoke:\n Function: azuread:getApplicationPublishedAppIds\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "outputs": { "description": "A collection of values returned by getApplicationPublishedAppIds.\n", "properties": { @@ -10160,7 +10024,7 @@ } }, "azuread:index/getApplicationTemplate:getApplicationTemplate": { - "description": "Use this data source to access information about an Application Template from the [Azure AD App Gallery](https://azuremarketplace.microsoft.com/en-US/marketplace/apps/category/azure-active-directory-apps).\n\n## API Permissions\n\nThis data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Marketo\",\n});\nexport const applicationTemplateId = example.then(example =\u003e example.templateId);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Marketo\")\npulumi.export(\"applicationTemplateId\", example.template_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Marketo\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"applicationTemplateId\"] = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Marketo\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"applicationTemplateId\", example.TemplateId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Marketo\")\n .build());\n\n ctx.export(\"applicationTemplateId\", example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()));\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Marketo\noutputs:\n applicationTemplateId: ${example.templateId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Use this data source to access information about an Application Template from the [Azure AD App Gallery](https://azuremarketplace.microsoft.com/en-US/marketplace/apps/category/azure-active-directory-apps).\n\n## API Permissions\n\nThis data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getApplicationTemplate({\n displayName: \"Marketo\",\n});\nexport const applicationTemplateId = example.then(example =\u003e example.templateId);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_application_template(display_name=\"Marketo\")\npulumi.export(\"applicationTemplateId\", example.template_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetApplicationTemplate.Invoke(new()\n {\n DisplayName = \"Marketo\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"applicationTemplateId\"] = example.Apply(getApplicationTemplateResult =\u003e getApplicationTemplateResult.TemplateId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetApplicationTemplate(ctx, \u0026azuread.GetApplicationTemplateArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Marketo\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"applicationTemplateId\", example.TemplateId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetApplicationTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getApplicationTemplate(GetApplicationTemplateArgs.builder()\n .displayName(\"Marketo\")\n .build());\n\n ctx.export(\"applicationTemplateId\", example.applyValue(getApplicationTemplateResult -\u003e getApplicationTemplateResult.templateId()));\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getApplicationTemplate\n Arguments:\n displayName: Marketo\noutputs:\n applicationTemplateId: ${example.templateId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getApplicationTemplate.\n", "properties": { @@ -10239,7 +10103,7 @@ } }, "azuread:index/getClientConfig:getClientConfig": { - "description": "Use this data source to access the configuration of the AzureAD provider.\n\n## API Permissions\n\nNo additional roles are required to use this data source.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nexport const objectId = current.then(current =\u003e current.objectId);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\npulumi.export(\"objectId\", current.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"objectId\"] = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"objectId\", current.ObjectId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n ctx.export(\"objectId\", current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()));\n }\n}\n```\n```yaml\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\noutputs:\n objectId: ${current.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Use this data source to access the configuration of the AzureAD provider.\n\n## API Permissions\n\nNo additional roles are required to use this data source.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getClientConfig({});\nexport const objectId = current.then(current =\u003e current.objectId);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_client_config()\npulumi.export(\"objectId\", current.object_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetClientConfig.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"objectId\"] = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetClientConfig(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"objectId\", current.ObjectId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getClientConfig();\n\n ctx.export(\"objectId\", current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()));\n }\n}\n```\n```yaml\nvariables:\n current:\n fn::invoke:\n Function: azuread:getClientConfig\n Arguments: {}\noutputs:\n objectId: ${current.objectId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "outputs": { "description": "A collection of values returned by getClientConfig.\n", "properties": { @@ -10270,7 +10134,7 @@ } }, "azuread:index/getDirectoryObject:getDirectoryObject": { - "description": "Retrieves the OData type for a generic directory object having the provided object ID.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires either `User.Read.All`, `Group.Read.All` or `Directory.Read.All`, depending on the type of object being queried.\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n*Look up and output type of object by ID*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getDirectoryObject({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\nexport const objectType = example.then(example =\u003e example.type);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_directory_object(object_id=\"00000000-0000-0000-0000-000000000000\")\npulumi.export(\"objectType\", example.type)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetDirectoryObject.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"objectType\"] = example.Apply(getDirectoryObjectResult =\u003e getDirectoryObjectResult.Type),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetDirectoryObject(ctx, \u0026azuread.GetDirectoryObjectArgs{\n\t\t\tObjectId: \"00000000-0000-0000-0000-000000000000\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"objectType\", example.Type)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetDirectoryObjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getDirectoryObject(GetDirectoryObjectArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n ctx.export(\"objectType\", example.applyValue(getDirectoryObjectResult -\u003e getDirectoryObjectResult.type()));\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getDirectoryObject\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\noutputs:\n objectType: ${example.type}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Attributes Reference \n\nThe following attributes are exported:\n\n*`object_id` - The object ID of the directory object.\n*`type` - The shortened OData type of the directory object. Possible values include: `Group`, `User` or `ServicePrincipal`.\n", + "description": "Retrieves the OData type for a generic directory object having the provided object ID.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires either `User.Read.All`, `Group.Read.All` or `Directory.Read.All`, depending on the type of object being queried.\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n*Look up and output type of object by ID*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getDirectoryObject({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\nexport const objectType = example.then(example =\u003e example.type);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_directory_object(object_id=\"00000000-0000-0000-0000-000000000000\")\npulumi.export(\"objectType\", example.type)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetDirectoryObject.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"objectType\"] = example.Apply(getDirectoryObjectResult =\u003e getDirectoryObjectResult.Type),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.GetDirectoryObject(ctx, \u0026azuread.GetDirectoryObjectArgs{\n\t\t\tObjectId: \"00000000-0000-0000-0000-000000000000\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"objectType\", example.Type)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetDirectoryObjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getDirectoryObject(GetDirectoryObjectArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n ctx.export(\"objectType\", example.applyValue(getDirectoryObjectResult -\u003e getDirectoryObjectResult.type()));\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getDirectoryObject\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\noutputs:\n objectType: ${example.type}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Attributes Reference \n\nThe following attributes are exported:\n\n*`object_id` - The object ID of the directory object.\n*`type` - The shortened OData type of the directory object. Possible values include: `Group`, `User` or `ServicePrincipal`.\n", "inputs": { "description": "A collection of arguments for invoking getDirectoryObject.\n", "properties": { @@ -10307,7 +10171,7 @@ } }, "azuread:index/getDirectoryRoleTemplates:getDirectoryRoleTemplates": { - "description": "Use this data source to access information about directory role templates within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.Read.Directory` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getDirectoryRoleTemplates({});\nexport const roles = current.then(current =\u003e current.objectIds);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_directory_role_templates()\npulumi.export(\"roles\", current.object_ids)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetDirectoryRoleTemplates.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"roles\"] = current.Apply(getDirectoryRoleTemplatesResult =\u003e getDirectoryRoleTemplatesResult.ObjectIds),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetDirectoryRoleTemplates(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"roles\", current.ObjectIds)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getDirectoryRoleTemplates();\n\n ctx.export(\"roles\", current.applyValue(getDirectoryRoleTemplatesResult -\u003e getDirectoryRoleTemplatesResult.objectIds()));\n }\n}\n```\n```yaml\nvariables:\n current:\n fn::invoke:\n Function: azuread:getDirectoryRoleTemplates\n Arguments: {}\noutputs:\n roles: ${current.objectIds}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Use this data source to access information about directory role templates within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.Read.Directory` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getDirectoryRoleTemplates({});\nexport const roles = current.then(current =\u003e current.objectIds);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_directory_role_templates()\npulumi.export(\"roles\", current.object_ids)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetDirectoryRoleTemplates.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"roles\"] = current.Apply(getDirectoryRoleTemplatesResult =\u003e getDirectoryRoleTemplatesResult.ObjectIds),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetDirectoryRoleTemplates(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"roles\", current.ObjectIds)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getDirectoryRoleTemplates();\n\n ctx.export(\"roles\", current.applyValue(getDirectoryRoleTemplatesResult -\u003e getDirectoryRoleTemplatesResult.objectIds()));\n }\n}\n```\n```yaml\nvariables:\n current:\n fn::invoke:\n Function: azuread:getDirectoryRoleTemplates\n Arguments: {}\noutputs:\n roles: ${current.objectIds}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "outputs": { "description": "A collection of values returned by getDirectoryRoleTemplates.\n", "properties": { @@ -10339,7 +10203,7 @@ } }, "azuread:index/getDirectoryRoles:getDirectoryRoles": { - "description": "Use this data source to access information about activated directory roles within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.Read.Directory` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getDirectoryRoles({});\nexport const roles = current.then(current =\u003e current.objectIds);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_directory_roles()\npulumi.export(\"roles\", current.object_ids)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetDirectoryRoles.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"roles\"] = current.Apply(getDirectoryRolesResult =\u003e getDirectoryRolesResult.ObjectIds),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetDirectoryRoles(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"roles\", current.ObjectIds)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getDirectoryRoles();\n\n ctx.export(\"roles\", current.applyValue(getDirectoryRolesResult -\u003e getDirectoryRolesResult.objectIds()));\n }\n}\n```\n```yaml\nvariables:\n current:\n fn::invoke:\n Function: azuread:getDirectoryRoles\n Arguments: {}\noutputs:\n roles: ${current.objectIds}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Use this data source to access information about activated directory roles within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires one of the following application roles: `RoleManagement.Read.Directory` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst current = azuread.getDirectoryRoles({});\nexport const roles = current.then(current =\u003e current.objectIds);\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\ncurrent = azuread.get_directory_roles()\npulumi.export(\"roles\", current.object_ids)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AzureAD.GetDirectoryRoles.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"roles\"] = current.Apply(getDirectoryRolesResult =\u003e getDirectoryRolesResult.ObjectIds),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := azuread.GetDirectoryRoles(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"roles\", current.ObjectIds)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AzureadFunctions.getDirectoryRoles();\n\n ctx.export(\"roles\", current.applyValue(getDirectoryRolesResult -\u003e getDirectoryRolesResult.objectIds()));\n }\n}\n```\n```yaml\nvariables:\n current:\n fn::invoke:\n Function: azuread:getDirectoryRoles\n Arguments: {}\noutputs:\n roles: ${current.objectIds}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "outputs": { "description": "A collection of values returned by getDirectoryRoles.\n", "properties": { @@ -10379,7 +10243,7 @@ } }, "azuread:index/getDomains:getDomains": { - "description": "Use this data source to access information about existing Domains within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Domain.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst aadDomains = azuread.getDomains({});\nexport const domainNames = aadDomains.then(aadDomains =\u003e aadDomains.domains.map(__item =\u003e __item.domainName));\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\naad_domains = azuread.get_domains()\npulumi.export(\"domainNames\", [__item.domain_name for __item in aad_domains.domains])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aadDomains = AzureAD.GetDomains.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"domainNames\"] = aadDomains.Apply(getDomainsResult =\u003e getDomainsResult.Domains).Select(__item =\u003e __item.DomainName).ToList(),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\naadDomains, err := azuread.GetDomains(ctx, \u0026azuread.GetDomainsArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nctx.Export(\"domainNames\", pulumi.StringArray(%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:3,11-43)))\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetDomainsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var aadDomains = AzureadFunctions.getDomains();\n\n ctx.export(\"domainNames\", aadDomains.applyValue(getDomainsResult -\u003e getDomainsResult.domains()).stream().map(element -\u003e element.domainName()).collect(toList()));\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Use this data source to access information about existing Domains within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Domain.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst aadDomains = azuread.getDomains({});\nexport const domainNames = aadDomains.then(aadDomains =\u003e aadDomains.domains.map(__item =\u003e __item.domainName));\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\naad_domains = azuread.get_domains()\npulumi.export(\"domainNames\", [__item.domain_name for __item in aad_domains.domains])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aadDomains = AzureAD.GetDomains.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"domainNames\"] = aadDomains.Apply(getDomainsResult =\u003e getDomainsResult.Domains).Select(__item =\u003e __item.DomainName).ToList(),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\naadDomains, err := azuread.GetDomains(ctx, \u0026azuread.GetDomainsArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nctx.Export(\"domainNames\", pulumi.StringArray(%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:3,11-43)))\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetDomainsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var aadDomains = AzureadFunctions.getDomains();\n\n ctx.export(\"domainNames\", aadDomains.applyValue(getDomainsResult -\u003e getDomainsResult.domains()).stream().map(element -\u003e element.domainName()).collect(toList()));\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getDomains.\n", "properties": { @@ -10458,7 +10322,7 @@ } }, "azuread:index/getGroup:getGroup": { - "description": "Gets information about an Azure Active Directory group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Group.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n### By Group Display Name)\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getGroup({\n displayName: \"MyGroupName\",\n securityEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_group(display_name=\"MyGroupName\",\n security_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetGroup.Invoke(new()\n {\n DisplayName = \"MyGroupName\",\n SecurityEnabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupGroup(ctx, \u0026azuread.LookupGroupArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"MyGroupName\"),\n\t\t\tSecurityEnabled: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getGroup(GetGroupArgs.builder()\n .displayName(\"MyGroupName\")\n .securityEnabled(true)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getGroup\n Arguments:\n displayName: MyGroupName\n securityEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Gets information about an Azure Active Directory group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Group.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n### By Group Display Name)\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getGroup({\n displayName: \"MyGroupName\",\n securityEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_group(display_name=\"MyGroupName\",\n security_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetGroup.Invoke(new()\n {\n DisplayName = \"MyGroupName\",\n SecurityEnabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupGroup(ctx, \u0026azuread.LookupGroupArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"MyGroupName\"),\n\t\t\tSecurityEnabled: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getGroup(GetGroupArgs.builder()\n .displayName(\"MyGroupName\")\n .securityEnabled(true)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getGroup\n Arguments:\n displayName: MyGroupName\n securityEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getGroup.\n", "properties": { @@ -10673,19 +10537,17 @@ } }, "azuread:index/getGroupRoleManagementPolicy:getGroupRoleManagementPolicy": { - "description": "Use this data source to retrieve a role policy for an Azure AD group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the `RoleManagementPolicy.Read.AzureADGroup` Microsoft Graph API permissions.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or the `Privileged Role Administrator` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst ownersPolicy = azuread.getGroupRoleManagementPolicyOutput({\n groupId: example.id,\n roleId: \"owner\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nowners_policy = azuread.get_group_role_management_policy_output(group_id=example.id,\n role_id=\"owner\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var ownersPolicy = AzureAD.GetGroupRoleManagementPolicy.Invoke(new()\n {\n GroupId = example.Id,\n RoleId = \"owner\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = azuread.LookupGroupRoleManagementPolicyOutput(ctx, azuread.GetGroupRoleManagementPolicyOutputArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tRoleId: pulumi.String(\"owner\"),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupRoleManagementPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n final var ownersPolicy = AzureadFunctions.getGroupRoleManagementPolicy(GetGroupRoleManagementPolicyArgs.builder()\n .groupId(example.id())\n .roleId(\"owner\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\nvariables:\n ownersPolicy:\n fn::invoke:\n Function: azuread:getGroupRoleManagementPolicy\n Arguments:\n groupId: ${example.id}\n roleId: owner\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Use this data source to retrieve a role policy for an Azure AD group.\n\n## API Permissions\n\nThe following API permissions are required in order to use this resource.\n\nWhen authenticated with a service principal, this resource requires the `RoleManagementPolicy.Read.AzureADGroup` Microsoft Graph API permissions.\n\nWhen authenticated with a user principal, this resource requires `Global Administrator` directory role, or the `Privileged Role Administrator` role in Identity Governance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = new azuread.Group(\"example\", {\n displayName: \"group-name\",\n securityEnabled: true,\n});\nconst ownersPolicy = azuread.getGroupRoleManagementPolicyOutput({\n groupId: example.id,\n roleId: \"owner\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.Group(\"example\",\n display_name=\"group-name\",\n security_enabled=True)\nowners_policy = azuread.get_group_role_management_policy_output(group_id=example.id,\n role_id=\"owner\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AzureAD.Group(\"example\", new()\n {\n DisplayName = \"group-name\",\n SecurityEnabled = true,\n });\n\n var ownersPolicy = AzureAD.GetGroupRoleManagementPolicy.Invoke(new()\n {\n GroupId = example.Id,\n RoleId = \"owner\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := azuread.NewGroup(ctx, \"example\", \u0026azuread.GroupArgs{\n\t\t\tDisplayName: pulumi.String(\"group-name\"),\n\t\t\tSecurityEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = azuread.LookupGroupRoleManagementPolicyOutput(ctx, azuread.GetGroupRoleManagementPolicyOutputArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tRoleId: pulumi.String(\"owner\"),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.Group;\nimport com.pulumi.azuread.GroupArgs;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupRoleManagementPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .displayName(\"group-name\")\n .securityEnabled(true)\n .build());\n\n final var ownersPolicy = AzureadFunctions.getGroupRoleManagementPolicy(GetGroupRoleManagementPolicyArgs.builder()\n .groupId(example.id())\n .roleId(\"owner\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azuread:Group\n properties:\n displayName: group-name\n securityEnabled: true\nvariables:\n ownersPolicy:\n fn::invoke:\n Function: azuread:getGroupRoleManagementPolicy\n Arguments:\n groupId: ${example.id}\n roleId: owner\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getGroupRoleManagementPolicy.\n", "properties": { "groupId": { "type": "string", - "description": "The ID of the Azure AD group for which the policy applies.\n", - "willReplaceOnChanges": true + "description": "The ID of the Azure AD group for which the policy applies.\n" }, "roleId": { "type": "string", - "description": "The type of assignment this policy coveres. Can be either `member` or `owner`.\n", - "willReplaceOnChanges": true + "description": "The type of assignment this policy coveres. Can be either `member` or `owner`.\n" } }, "type": "object", @@ -10727,7 +10589,7 @@ } }, "azuread:index/getGroups:getGroups": { - "description": "Gets Object IDs or Display Names for multiple Azure Active Directory groups.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Group.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n*Look up by group name*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getGroups({\n displayNames: [\n \"group-a\",\n \"group-b\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_groups(display_names=[\n \"group-a\",\n \"group-b\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetGroups.Invoke(new()\n {\n DisplayNames = new[]\n {\n \"group-a\",\n \"group-b\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tDisplayNames: []string{\n\t\t\t\t\"group-a\",\n\t\t\t\t\"group-b\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .displayNames( \n \"group-a\",\n \"group-b\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n displayNames:\n - group-a\n - group-b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by display name prefix*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst sales = azuread.getGroups({\n displayNamePrefix: \"sales-\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nsales = azuread.get_groups(display_name_prefix=\"sales-\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var sales = AzureAD.GetGroups.Invoke(new()\n {\n DisplayNamePrefix = \"sales-\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tDisplayNamePrefix: pulumi.StringRef(\"sales-\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var sales = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .displayNamePrefix(\"sales-\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n sales:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n displayNamePrefix: sales-\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up all groups*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst all = azuread.getGroups({\n returnAll: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nall = azuread.get_groups(return_all=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var all = AzureAD.GetGroups.Invoke(new()\n {\n ReturnAll = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tReturnAll: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var all = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .returnAll(true)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n all:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n returnAll: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up all mail-enabled groups*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst mailEnabled = azuread.getGroups({\n mailEnabled: true,\n returnAll: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nmail_enabled = azuread.get_groups(mail_enabled=True,\n return_all=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mailEnabled = AzureAD.GetGroups.Invoke(new()\n {\n MailEnabled = true,\n ReturnAll = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tMailEnabled: pulumi.BoolRef(true),\n\t\t\tReturnAll: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var mailEnabled = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .mailEnabled(true)\n .returnAll(true)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n mailEnabled:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n mailEnabled: true\n returnAll: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up all security-enabled groups that are not mail-enabled*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst securityOnly = azuread.getGroups({\n mailEnabled: false,\n returnAll: true,\n securityEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nsecurity_only = azuread.get_groups(mail_enabled=False,\n return_all=True,\n security_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var securityOnly = AzureAD.GetGroups.Invoke(new()\n {\n MailEnabled = false,\n ReturnAll = true,\n SecurityEnabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tMailEnabled: pulumi.BoolRef(false),\n\t\t\tReturnAll: pulumi.BoolRef(true),\n\t\t\tSecurityEnabled: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var securityOnly = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .mailEnabled(false)\n .returnAll(true)\n .securityEnabled(true)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n securityOnly:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n mailEnabled: false\n returnAll: true\n securityEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Gets Object IDs or Display Names for multiple Azure Active Directory groups.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Group.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n*Look up by group name*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getGroups({\n displayNames: [\n \"group-a\",\n \"group-b\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_groups(display_names=[\n \"group-a\",\n \"group-b\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetGroups.Invoke(new()\n {\n DisplayNames = new[]\n {\n \"group-a\",\n \"group-b\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tDisplayNames: []string{\n\t\t\t\t\"group-a\",\n\t\t\t\t\"group-b\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .displayNames( \n \"group-a\",\n \"group-b\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n displayNames:\n - group-a\n - group-b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by display name prefix*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst sales = azuread.getGroups({\n displayNamePrefix: \"sales-\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nsales = azuread.get_groups(display_name_prefix=\"sales-\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var sales = AzureAD.GetGroups.Invoke(new()\n {\n DisplayNamePrefix = \"sales-\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tDisplayNamePrefix: pulumi.StringRef(\"sales-\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var sales = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .displayNamePrefix(\"sales-\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n sales:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n displayNamePrefix: sales-\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up all groups*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst all = azuread.getGroups({\n returnAll: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nall = azuread.get_groups(return_all=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var all = AzureAD.GetGroups.Invoke(new()\n {\n ReturnAll = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tReturnAll: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var all = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .returnAll(true)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n all:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n returnAll: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up all mail-enabled groups*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst mailEnabled = azuread.getGroups({\n mailEnabled: true,\n returnAll: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nmail_enabled = azuread.get_groups(mail_enabled=True,\n return_all=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mailEnabled = AzureAD.GetGroups.Invoke(new()\n {\n MailEnabled = true,\n ReturnAll = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tMailEnabled: pulumi.BoolRef(true),\n\t\t\tReturnAll: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var mailEnabled = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .mailEnabled(true)\n .returnAll(true)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n mailEnabled:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n mailEnabled: true\n returnAll: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up all security-enabled groups that are not mail-enabled*\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst securityOnly = azuread.getGroups({\n mailEnabled: false,\n returnAll: true,\n securityEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nsecurity_only = azuread.get_groups(mail_enabled=False,\n return_all=True,\n security_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var securityOnly = AzureAD.GetGroups.Invoke(new()\n {\n MailEnabled = false,\n ReturnAll = true,\n SecurityEnabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetGroups(ctx, \u0026azuread.GetGroupsArgs{\n\t\t\tMailEnabled: pulumi.BoolRef(false),\n\t\t\tReturnAll: pulumi.BoolRef(true),\n\t\t\tSecurityEnabled: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var securityOnly = AzureadFunctions.getGroups(GetGroupsArgs.builder()\n .mailEnabled(false)\n .returnAll(true)\n .securityEnabled(true)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n securityOnly:\n fn::invoke:\n Function: azuread:getGroups\n Arguments:\n mailEnabled: false\n returnAll: true\n securityEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getGroups.\n", "properties": { @@ -10817,7 +10679,7 @@ } }, "azuread:index/getNamedLocation:getNamedLocation": { - "description": "Gets information about a Named Location within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this resource requires the following application roles: `Policy.Read.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Conditional Access Administrator` or `Global Reader`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getNamedLocation({\n displayName: \"My Named Location\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_named_location(display_name=\"My Named Location\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetNamedLocation.Invoke(new()\n {\n DisplayName = \"My Named Location\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupNamedLocation(ctx, \u0026azuread.LookupNamedLocationArgs{\n\t\t\tDisplayName: \"My Named Location\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetNamedLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getNamedLocation(GetNamedLocationArgs.builder()\n .displayName(\"My Named Location\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getNamedLocation\n Arguments:\n displayName: My Named Location\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Attributes Reference \n\nThe following attributes are exported:\n\n* `country` - A `country` block as documented below, which describes a country-based named location.\n* `id` - The ID of the named location.\n* `ip` - An `ip` block as documented below, which describes an IP-based named location.\n* \n---\n\n`country` block exports the following:\n\n* `countries_and_regions` - List of countries and/or regions in two-letter format specified by ISO 3166-2.\n* `include_unknown_countries_and_regions` - Whether IP addresses that don't map to a country or region are included in the named location.\n\n---\n\n`ip` block exports the following:\n\n* `ip_ranges` - List of IP address ranges in IPv4 CIDR format (e.g. `1.2.3.4/32`) or any allowable IPv6 format from IETF RFC596.\n* `trusted` - Whether the named location is trusted.\n", + "description": "Gets information about a Named Location within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this resource requires the following application roles: `Policy.Read.All`\n\nWhen authenticated with a user principal, this resource requires one of the following directory roles: `Conditional Access Administrator` or `Global Reader`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getNamedLocation({\n displayName: \"My Named Location\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_named_location(display_name=\"My Named Location\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetNamedLocation.Invoke(new()\n {\n DisplayName = \"My Named Location\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupNamedLocation(ctx, \u0026azuread.LookupNamedLocationArgs{\n\t\t\tDisplayName: \"My Named Location\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetNamedLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getNamedLocation(GetNamedLocationArgs.builder()\n .displayName(\"My Named Location\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getNamedLocation\n Arguments:\n displayName: My Named Location\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Attributes Reference \n\nThe following attributes are exported:\n\n* `country` - A `country` block as documented below, which describes a country-based named location.\n* `id` - The ID of the named location.\n* `ip` - An `ip` block as documented below, which describes an IP-based named location.\n* \n---\n\n`country` block exports the following:\n\n* `countries_and_regions` - List of countries and/or regions in two-letter format specified by ISO 3166-2.\n* `include_unknown_countries_and_regions` - Whether IP addresses that don't map to a country or region are included in the named location.\n\n---\n\n`ip` block exports the following:\n\n* `ip_ranges` - List of IP address ranges in IPv4 CIDR format (e.g. `1.2.3.4/32`) or any allowable IPv6 format from IETF RFC596.\n* `trusted` - Whether the named location is trusted.\n", "inputs": { "description": "A collection of arguments for invoking getNamedLocation.\n", "properties": { @@ -10864,14 +10726,10 @@ } }, "azuread:index/getServicePrincipal:getServicePrincipal": { - "description": "Gets information about an existing service principal associated with an application within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Application.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n*Look up by application display name*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipal({\n displayName: \"my-awesome-application\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principal(display_name=\"my-awesome-application\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipal.Invoke(new()\n {\n DisplayName = \"my-awesome-application\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"my-awesome-application\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .displayName(\"my-awesome-application\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n displayName: my-awesome-application\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by client ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipal({\n clientId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principal(client_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ClientId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tClientId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .clientId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n clientId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by service principal object ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipal({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principal(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Gets information about an existing service principal associated with an application within Azure Active Directory.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Application.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n*Look up by application display name*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipal({\n displayName: \"my-awesome-application\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principal(display_name=\"my-awesome-application\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipal.Invoke(new()\n {\n DisplayName = \"my-awesome-application\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"my-awesome-application\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .displayName(\"my-awesome-application\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n displayName: my-awesome-application\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by client ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipal({\n clientId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principal(client_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ClientId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tClientId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .clientId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n clientId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by service principal object ID*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipal({\n objectId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principal(object_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipal.Invoke(new()\n {\n ObjectId = \"00000000-0000-0000-0000-000000000000\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tObjectId: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .objectId(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipal\n Arguments:\n objectId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getServicePrincipal.\n", "properties": { - "applicationId": { - "type": "string", - "deprecationMessage": "The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider" - }, "clientId": { "type": "string", "description": "The client ID of the application associated with this service principal.\n" @@ -10919,10 +10777,6 @@ }, "type": "array" }, - "applicationId": { - "deprecationMessage": "The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider", - "type": "string" - }, "applicationTenantId": { "description": "The tenant ID where the associated application is registered.\n", "type": "string" @@ -11049,7 +10903,6 @@ "appRoleAssignmentRequired", "appRoleIds", "appRoles", - "applicationId", "applicationTenantId", "clientId", "description", @@ -11078,18 +10931,10 @@ } }, "azuread:index/getServicePrincipals:getServicePrincipals": { - "description": "Gets basic information for multiple Azure Active Directory service principals.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Application.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n*Look up by application display names*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipals({\n displayNames: [\n \"example-app\",\n \"another-app\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principals(display_names=[\n \"example-app\",\n \"another-app\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipals.Invoke(new()\n {\n DisplayNames = new[]\n {\n \"example-app\",\n \"another-app\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetServicePrincipals(ctx, \u0026azuread.GetServicePrincipalsArgs{\n\t\t\tDisplayNames: []string{\n\t\t\t\t\"example-app\",\n\t\t\t\t\"another-app\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipals(GetServicePrincipalsArgs.builder()\n .displayNames( \n \"example-app\",\n \"another-app\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipals\n Arguments:\n displayNames:\n - example-app\n - another-app\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by application IDs (client IDs)*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipals({\n clientIds: [\n \"11111111-0000-0000-0000-000000000000\",\n \"22222222-0000-0000-0000-000000000000\",\n \"33333333-0000-0000-0000-000000000000\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principals(client_ids=[\n \"11111111-0000-0000-0000-000000000000\",\n \"22222222-0000-0000-0000-000000000000\",\n \"33333333-0000-0000-0000-000000000000\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipals.Invoke(new()\n {\n ClientIds = new[]\n {\n \"11111111-0000-0000-0000-000000000000\",\n \"22222222-0000-0000-0000-000000000000\",\n \"33333333-0000-0000-0000-000000000000\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetServicePrincipals(ctx, \u0026azuread.GetServicePrincipalsArgs{\n\t\t\tClientIds: []string{\n\t\t\t\t\"11111111-0000-0000-0000-000000000000\",\n\t\t\t\t\"22222222-0000-0000-0000-000000000000\",\n\t\t\t\t\"33333333-0000-0000-0000-000000000000\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipals(GetServicePrincipalsArgs.builder()\n .clientIds( \n \"11111111-0000-0000-0000-000000000000\",\n \"22222222-0000-0000-0000-000000000000\",\n \"33333333-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipals\n Arguments:\n clientIds:\n - 11111111-0000-0000-0000-000000000000\n - 22222222-0000-0000-0000-000000000000\n - 33333333-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by service principal object IDs*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipals({\n objectIds: [\n \"00000000-0000-0000-0000-000000000000\",\n \"00000000-0000-0000-0000-111111111111\",\n \"00000000-0000-0000-0000-222222222222\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principals(object_ids=[\n \"00000000-0000-0000-0000-000000000000\",\n \"00000000-0000-0000-0000-111111111111\",\n \"00000000-0000-0000-0000-222222222222\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipals.Invoke(new()\n {\n ObjectIds = new[]\n {\n \"00000000-0000-0000-0000-000000000000\",\n \"00000000-0000-0000-0000-111111111111\",\n \"00000000-0000-0000-0000-222222222222\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetServicePrincipals(ctx, \u0026azuread.GetServicePrincipalsArgs{\n\t\t\tObjectIds: []string{\n\t\t\t\t\"00000000-0000-0000-0000-000000000000\",\n\t\t\t\t\"00000000-0000-0000-0000-111111111111\",\n\t\t\t\t\"00000000-0000-0000-0000-222222222222\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipals(GetServicePrincipalsArgs.builder()\n .objectIds( \n \"00000000-0000-0000-0000-000000000000\",\n \"00000000-0000-0000-0000-111111111111\",\n \"00000000-0000-0000-0000-222222222222\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipals\n Arguments:\n objectIds:\n - 00000000-0000-0000-0000-000000000000\n - 00000000-0000-0000-0000-111111111111\n - 00000000-0000-0000-0000-222222222222\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Gets basic information for multiple Azure Active Directory service principals.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `Application.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n*Look up by application display names*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipals({\n displayNames: [\n \"example-app\",\n \"another-app\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principals(display_names=[\n \"example-app\",\n \"another-app\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipals.Invoke(new()\n {\n DisplayNames = new[]\n {\n \"example-app\",\n \"another-app\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetServicePrincipals(ctx, \u0026azuread.GetServicePrincipalsArgs{\n\t\t\tDisplayNames: []string{\n\t\t\t\t\"example-app\",\n\t\t\t\t\"another-app\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipals(GetServicePrincipalsArgs.builder()\n .displayNames( \n \"example-app\",\n \"another-app\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipals\n Arguments:\n displayNames:\n - example-app\n - another-app\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by application IDs (client IDs)*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipals({\n clientIds: [\n \"11111111-0000-0000-0000-000000000000\",\n \"22222222-0000-0000-0000-000000000000\",\n \"33333333-0000-0000-0000-000000000000\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principals(client_ids=[\n \"11111111-0000-0000-0000-000000000000\",\n \"22222222-0000-0000-0000-000000000000\",\n \"33333333-0000-0000-0000-000000000000\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipals.Invoke(new()\n {\n ClientIds = new[]\n {\n \"11111111-0000-0000-0000-000000000000\",\n \"22222222-0000-0000-0000-000000000000\",\n \"33333333-0000-0000-0000-000000000000\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetServicePrincipals(ctx, \u0026azuread.GetServicePrincipalsArgs{\n\t\t\tClientIds: []string{\n\t\t\t\t\"11111111-0000-0000-0000-000000000000\",\n\t\t\t\t\"22222222-0000-0000-0000-000000000000\",\n\t\t\t\t\"33333333-0000-0000-0000-000000000000\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipals(GetServicePrincipalsArgs.builder()\n .clientIds( \n \"11111111-0000-0000-0000-000000000000\",\n \"22222222-0000-0000-0000-000000000000\",\n \"33333333-0000-0000-0000-000000000000\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipals\n Arguments:\n clientIds:\n - 11111111-0000-0000-0000-000000000000\n - 22222222-0000-0000-0000-000000000000\n - 33333333-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n*Look up by service principal object IDs*\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getServicePrincipals({\n objectIds: [\n \"00000000-0000-0000-0000-000000000000\",\n \"00000000-0000-0000-0000-111111111111\",\n \"00000000-0000-0000-0000-222222222222\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_service_principals(object_ids=[\n \"00000000-0000-0000-0000-000000000000\",\n \"00000000-0000-0000-0000-111111111111\",\n \"00000000-0000-0000-0000-222222222222\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetServicePrincipals.Invoke(new()\n {\n ObjectIds = new[]\n {\n \"00000000-0000-0000-0000-000000000000\",\n \"00000000-0000-0000-0000-111111111111\",\n \"00000000-0000-0000-0000-222222222222\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetServicePrincipals(ctx, \u0026azuread.GetServicePrincipalsArgs{\n\t\t\tObjectIds: []string{\n\t\t\t\t\"00000000-0000-0000-0000-000000000000\",\n\t\t\t\t\"00000000-0000-0000-0000-111111111111\",\n\t\t\t\t\"00000000-0000-0000-0000-222222222222\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getServicePrincipals(GetServicePrincipalsArgs.builder()\n .objectIds( \n \"00000000-0000-0000-0000-000000000000\",\n \"00000000-0000-0000-0000-111111111111\",\n \"00000000-0000-0000-0000-222222222222\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getServicePrincipals\n Arguments:\n objectIds:\n - 00000000-0000-0000-0000-000000000000\n - 00000000-0000-0000-0000-111111111111\n - 00000000-0000-0000-0000-222222222222\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getServicePrincipals.\n", "properties": { - "applicationIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of client IDs of the applications associated with the service principals.\n", - "deprecationMessage": "The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider" - }, "clientIds": { "type": "array", "items": { @@ -11125,14 +10970,6 @@ "outputs": { "description": "A collection of values returned by getServicePrincipals.\n", "properties": { - "applicationIds": { - "deprecationMessage": "The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider", - "description": "A list of client IDs of the applications associated with the service principals.\n", - "items": { - "type": "string" - }, - "type": "array" - }, "clientIds": { "description": "The client ID of the application associated with this service principal.\n", "items": { @@ -11173,7 +11010,6 @@ } }, "required": [ - "applicationIds", "clientIds", "displayNames", "objectIds", @@ -11184,7 +11020,7 @@ } }, "azuread:index/getUser:getUser": { - "description": "Gets information about an Azure Active Directory user.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `User.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"user@example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"user@example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"user@example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"user@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"user@example.com\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: user@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Gets information about an Azure Active Directory user.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `User.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst example = azuread.getUser({\n userPrincipalName: \"user@example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nexample = azuread.get_user(user_principal_name=\"user@example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AzureAD.GetUser.Invoke(new()\n {\n UserPrincipalName = \"user@example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.LookupUser(ctx, \u0026azuread.LookupUserArgs{\n\t\t\tUserPrincipalName: pulumi.StringRef(\"user@example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AzureadFunctions.getUser(GetUserArgs.builder()\n .userPrincipalName(\"user@example.com\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: azuread:getUser\n Arguments:\n userPrincipalName: user@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getUser.\n", "properties": { @@ -11453,7 +11289,7 @@ } }, "azuread:index/getUsers:getUsers": { - "description": "Gets basic information for multiple Azure Active Directory users.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `User.ReadBasic.All`, `User.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst users = azuread.getUsers({\n userPrincipalNames: [\n \"kat@example.com\",\n \"byte@example.com\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nusers = azuread.get_users(user_principal_names=[\n \"kat@example.com\",\n \"byte@example.com\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var users = AzureAD.GetUsers.Invoke(new()\n {\n UserPrincipalNames = new[]\n {\n \"kat@example.com\",\n \"byte@example.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetUsers(ctx, \u0026azuread.GetUsersArgs{\n\t\t\tUserPrincipalNames: []string{\n\t\t\t\t\"kat@example.com\",\n\t\t\t\t\"byte@example.com\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUsersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var users = AzureadFunctions.getUsers(GetUsersArgs.builder()\n .userPrincipalNames( \n \"kat@example.com\",\n \"byte@example.com\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n users:\n fn::invoke:\n Function: azuread:getUsers\n Arguments:\n userPrincipalNames:\n - kat@example.com\n - byte@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Gets basic information for multiple Azure Active Directory users.\n\n## API Permissions\n\nThe following API permissions are required in order to use this data source.\n\nWhen authenticated with a service principal, this data source requires one of the following application roles: `User.ReadBasic.All`, `User.Read.All` or `Directory.Read.All`\n\nWhen authenticated with a user principal, this data source does not require any additional roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azuread from \"@pulumi/azuread\";\n\nconst users = azuread.getUsers({\n userPrincipalNames: [\n \"kat@example.com\",\n \"byte@example.com\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_azuread as azuread\n\nusers = azuread.get_users(user_principal_names=[\n \"kat@example.com\",\n \"byte@example.com\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AzureAD = Pulumi.AzureAD;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var users = AzureAD.GetUsers.Invoke(new()\n {\n UserPrincipalNames = new[]\n {\n \"kat@example.com\",\n \"byte@example.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azuread.GetUsers(ctx, \u0026azuread.GetUsersArgs{\n\t\t\tUserPrincipalNames: []string{\n\t\t\t\t\"kat@example.com\",\n\t\t\t\t\"byte@example.com\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetUsersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var users = AzureadFunctions.getUsers(GetUsersArgs.builder()\n .userPrincipalNames( \n \"kat@example.com\",\n \"byte@example.com\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n users:\n fn::invoke:\n Function: azuread:getUsers\n Arguments:\n userPrincipalNames:\n - kat@example.com\n - byte@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getUsers.\n", "properties": { diff --git a/provider/cmd/pulumi-tfgen-azuread/main.go b/provider/cmd/pulumi-tfgen-azuread/main.go index fc9ab6c26..387e34d6f 100644 --- a/provider/cmd/pulumi-tfgen-azuread/main.go +++ b/provider/cmd/pulumi-tfgen-azuread/main.go @@ -17,8 +17,8 @@ package main import ( "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfgen" - azuread "github.com/pulumi/pulumi-azuread/provider/v5" - "github.com/pulumi/pulumi-azuread/provider/v5/pkg/version" + azuread "github.com/pulumi/pulumi-azuread/provider/v6" + "github.com/pulumi/pulumi-azuread/provider/v6/pkg/version" ) func main() { diff --git a/provider/go.mod b/provider/go.mod index 32e9ec635..a3fd7a808 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -1,13 +1,13 @@ -module github.com/pulumi/pulumi-azuread/provider/v5 +module github.com/pulumi/pulumi-azuread/provider/v6 go 1.22.0 toolchain go1.22.7 require ( - github.com/hashicorp/go-azure-sdk/sdk v0.20240411.1104331 + github.com/hashicorp/go-azure-sdk/sdk v0.20240927.1005214 github.com/hashicorp/terraform-provider-azuread/shim v0.0.0 - github.com/pulumi/providertest v0.1.2 + github.com/pulumi/providertest v0.1.3 github.com/pulumi/pulumi-terraform-bridge/v3 v3.92.0 github.com/pulumi/pulumi/sdk/v3 v3.136.1 github.com/stretchr/testify v1.9.0 @@ -21,7 +21,7 @@ replace ( require ( cloud.google.com/go v0.112.1 // indirect - cloud.google.com/go/compute/metadata v0.3.0 // indirect + cloud.google.com/go/compute/metadata v0.5.0 // indirect cloud.google.com/go/iam v1.1.6 // indirect cloud.google.com/go/kms v1.15.7 // indirect cloud.google.com/go/logging v1.9.0 // indirect @@ -40,7 +40,7 @@ require ( github.com/Masterminds/semver/v3 v3.2.0 // indirect github.com/Masterminds/sprig/v3 v3.2.3 // indirect github.com/Microsoft/go-winio v0.6.2 // indirect - github.com/ProtonMail/go-crypto v1.1.0-alpha.3-proton // indirect + github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton // indirect github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect github.com/agext/levenshtein v1.2.3 // indirect github.com/apparentlymart/go-cidr v1.1.0 // indirect @@ -75,7 +75,7 @@ require ( github.com/charmbracelet/x/term v0.1.1 // indirect github.com/charmbracelet/x/windows v0.1.2 // indirect github.com/cheggaaa/pb v1.0.29 // indirect - github.com/cloudflare/circl v1.3.9 // indirect + github.com/cloudflare/circl v1.4.0 // indirect github.com/cyphar/filepath-securejoin v0.3.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/deckarep/golang-set/v2 v2.5.0 // indirect @@ -84,7 +84,7 @@ require ( github.com/emirpasic/gods v1.18.1 // indirect github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect github.com/ettle/strcase v0.1.1 // indirect - github.com/fatih/color v1.16.0 // indirect + github.com/fatih/color v1.17.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/fsnotify/fsnotify v1.7.0 // indirect github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect @@ -110,7 +110,8 @@ require ( github.com/gorilla/mux v1.8.0 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect - github.com/hashicorp/go-azure-helpers v0.66.2 // indirect + github.com/hashicorp/go-azure-helpers v0.71.0 // indirect + github.com/hashicorp/go-azure-sdk/microsoft-graph v0.20240927.1005214 // indirect github.com/hashicorp/go-checkpoint v0.5.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 // indirect @@ -125,19 +126,19 @@ require ( github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 // indirect github.com/hashicorp/go-sockaddr v1.0.6 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect - github.com/hashicorp/go-version v1.6.0 // indirect - github.com/hashicorp/hc-install v0.6.3 // indirect + github.com/hashicorp/go-version v1.7.0 // indirect + github.com/hashicorp/hc-install v0.9.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/hashicorp/hcl/v2 v2.21.0 // indirect + github.com/hashicorp/hcl/v2 v2.22.0 // indirect github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 // indirect github.com/hashicorp/logutils v1.0.0 // indirect - github.com/hashicorp/terraform-exec v0.20.0 // indirect - github.com/hashicorp/terraform-json v0.21.0 // indirect + github.com/hashicorp/terraform-exec v0.21.0 // indirect + github.com/hashicorp/terraform-json v0.22.1 // indirect github.com/hashicorp/terraform-plugin-go v0.24.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect - github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0 // indirect - github.com/hashicorp/terraform-plugin-testing v1.5.1 // indirect - github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240628163743-6594e1c6cd59 // indirect + github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 // indirect + github.com/hashicorp/terraform-plugin-testing v1.10.0 // indirect + github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240927131909-8f628d164c64 // indirect github.com/hashicorp/terraform-registry-address v0.2.3 // indirect github.com/hashicorp/terraform-svchost v0.1.1 // indirect github.com/hashicorp/vault/api v1.12.0 // indirect @@ -153,7 +154,6 @@ require ( github.com/klauspost/compress v1.15.11 // indirect github.com/kylelemons/godebug v1.1.0 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect - github.com/manicminer/hamilton v0.71.0 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-localereader v0.0.1 // indirect @@ -223,7 +223,7 @@ require ( github.com/xeipuuv/gojsonschema v1.2.0 // indirect github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect github.com/yuin/goldmark v1.7.4 // indirect - github.com/zclconf/go-cty v1.14.4 // indirect + github.com/zclconf/go-cty v1.15.0 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect @@ -233,28 +233,28 @@ require ( go.uber.org/atomic v1.11.0 // indirect gocloud.dev v0.37.0 // indirect gocloud.dev/secrets/hashivault v0.37.0 // indirect - golang.org/x/crypto v0.25.0 // indirect + golang.org/x/crypto v0.27.0 // indirect golang.org/x/exp v0.0.0-20240707233637-46b078467d37 // indirect - golang.org/x/mod v0.19.0 // indirect - golang.org/x/net v0.27.0 // indirect - golang.org/x/oauth2 v0.21.0 // indirect - golang.org/x/sync v0.7.0 // indirect - golang.org/x/sys v0.22.0 // indirect - golang.org/x/term v0.22.0 // indirect - golang.org/x/text v0.16.0 // indirect + golang.org/x/mod v0.21.0 // indirect + golang.org/x/net v0.29.0 // indirect + golang.org/x/oauth2 v0.23.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.25.0 // indirect + golang.org/x/term v0.24.0 // indirect + golang.org/x/text v0.18.0 // indirect golang.org/x/time v0.5.0 // indirect - golang.org/x/tools v0.23.0 // indirect + golang.org/x/tools v0.25.0 // indirect golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect google.golang.org/api v0.169.0 // indirect google.golang.org/appengine v1.6.8 // indirect google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240711142825-46eb208f015d // indirect - google.golang.org/grpc v1.66.2 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240814211410-ddb44dafa142 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect + google.golang.org/grpc v1.67.0 // indirect google.golang.org/protobuf v1.34.2 // indirect gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/frand v1.4.2 // indirect - software.sslmate.com/src/go-pkcs12 v0.4.0 // indirect + software.sslmate.com/src/go-pkcs12 v0.5.0 // indirect ) diff --git a/provider/go.sum b/provider/go.sum index a24121095..22e968e89 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -308,8 +308,8 @@ cloud.google.com/go/compute/metadata v0.1.0/go.mod h1:Z1VN+bulIf6bt4P/C37K4DyZYZ cloud.google.com/go/compute/metadata v0.2.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= cloud.google.com/go/compute/metadata v0.2.1/go.mod h1:jgHgmJd2RKBGzXqF5LR2EZMGxBkeanZ9wwa75XHJgOM= cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= -cloud.google.com/go/compute/metadata v0.3.0 h1:Tz+eQXMEqDIKRsmY3cHTL6FVaynIjX2QxYC4trgAKZc= -cloud.google.com/go/compute/metadata v0.3.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= +cloud.google.com/go/compute/metadata v0.5.0 h1:Zr0eK8JbFv6+Wi4ilXAR8FJ3wyNdpxHKJNPos6LTZOY= +cloud.google.com/go/compute/metadata v0.5.0/go.mod h1:aHnloV2TPI38yx4s9+wAZhHykWvVCfu7hQbF+9CWoiY= cloud.google.com/go/contactcenterinsights v1.3.0/go.mod h1:Eu2oemoePuEFc/xKFPjbTuPSj0fYJcPls9TFlPNnHHY= cloud.google.com/go/contactcenterinsights v1.4.0/go.mod h1:L2YzkGbPsv+vMQMCADxJoT9YiTTnSEd6fEvCeHTYVck= cloud.google.com/go/contactcenterinsights v1.6.0/go.mod h1:IIDlT6CLcDoyv79kDv8iWxMSTZhLxSCofVV5W6YFM/w= @@ -1187,8 +1187,8 @@ github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= github.com/ProtonMail/go-crypto v1.1.0-alpha.0/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= -github.com/ProtonMail/go-crypto v1.1.0-alpha.3-proton h1:0RXAi0EJFs81j+MMsqvHNuAUGWzeVfCO9LnHAfoQ8NA= -github.com/ProtonMail/go-crypto v1.1.0-alpha.3-proton/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= +github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton h1:KVBEgU3CJpmzLChnLiSuEyCuhGhcMt3eOST+7A+ckto= +github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY= github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA= github.com/agext/levenshtein v1.2.1/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= @@ -1316,8 +1316,8 @@ github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMn github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= -github.com/cloudflare/circl v1.3.9 h1:QFrlgFYf2Qpi8bSpVPK1HBvWpx16v/1TZivyo7pGuBE= -github.com/cloudflare/circl v1.3.9/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU= +github.com/cloudflare/circl v1.4.0 h1:BV7h5MgrktNzytKmWjpOtdYrf0lkkbF8YMlBGPhJQrY= +github.com/cloudflare/circl v1.4.0/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= @@ -1383,8 +1383,9 @@ github.com/ettle/strcase v0.1.1/go.mod h1:hzDLsPC7/lwKyBOywSHEP89nt2pDgdy+No1NBA github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= -github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= +github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= +github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= @@ -1607,10 +1608,12 @@ github.com/hashicorp/cli v1.1.6/go.mod h1:MPon5QYlgjjo0BSoAiN0ESeT5fRzDjVRp+uioJ github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= -github.com/hashicorp/go-azure-helpers v0.66.2 h1:+Pzuo7pdKl0hBXXr5ymmhs4Q40tHAo2nAvHq4WgSjx8= -github.com/hashicorp/go-azure-helpers v0.66.2/go.mod h1:kJxXrFtJKJdOEqvad8pllAe7dhP4DbN8J6sqFZe47+4= -github.com/hashicorp/go-azure-sdk/sdk v0.20240411.1104331 h1:LYQI0A1rWPjrMa0J8N8MA5ZjFfHNaVpoPY1vmzrS/C8= -github.com/hashicorp/go-azure-sdk/sdk v0.20240411.1104331/go.mod h1:POOjeoqNp+mvlLBuibJTziUAkBZ7FxXGeGestwemL/w= +github.com/hashicorp/go-azure-helpers v0.71.0 h1:ra3aIRzg01g6MLKQ+yABcb6WJtrqRUDDgyuPLmyZ9lY= +github.com/hashicorp/go-azure-helpers v0.71.0/go.mod h1:BmbF4JDYXK5sEmFeU5hcn8Br21uElcqLfdQxjatwQKw= +github.com/hashicorp/go-azure-sdk/microsoft-graph v0.20240927.1005214 h1:m6VCE8gYOJI3XtkVpxEtMp1HwtsYUrL8tvROINe1Q9A= +github.com/hashicorp/go-azure-sdk/microsoft-graph v0.20240927.1005214/go.mod h1:O2eTEWXTgwu1AISomfd1JIv0r6uh3/fY5BA0yC0/tFA= +github.com/hashicorp/go-azure-sdk/sdk v0.20240927.1005214 h1:nhYBErlMEkQIoG50GY2OZattC4+WBI/8xgZkwx/CsvY= +github.com/hashicorp/go-azure-sdk/sdk v0.20240927.1005214/go.mod h1:dMKF6bXrgGmy1d3pLzkmBpG2JIHgSAV2/OMSCEgyMwE= github.com/hashicorp/go-checkpoint v0.5.0 h1:MFYpPZCnQqQTE18jFwSII6eUQrD/oxMFp3mlgcqk5mU= github.com/hashicorp/go-checkpoint v0.5.0/go.mod h1:7nfLNL10NsxqO4iWuW6tWW0HjZuDrwkBuEQsVcpCOgg= github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= @@ -1653,31 +1656,35 @@ github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/C github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-version v1.1.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= +github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= +github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/hc-install v0.6.2/go.mod h1:2JBpd+NCFKiHiu/yYCGaPyPHhZLxXTpz8oreHa/a3Ps= -github.com/hashicorp/hc-install v0.6.3 h1:yE/r1yJvWbtrJ0STwScgEnCanb0U9v7zp0Gbkmcoxqs= github.com/hashicorp/hc-install v0.6.3/go.mod h1:KamGdbodYzlufbWh4r9NRo8y6GLHWZP2GBtdnms1Ln0= +github.com/hashicorp/hc-install v0.9.0 h1:2dIk8LcvANwtv3QZLckxcjyF5w8KVtiMxu6G6eLhghE= +github.com/hashicorp/hc-install v0.9.0/go.mod h1:+6vOP+mf3tuGgMApVYtmsnDoKWMDcFXeTxCACYZ8SFg= github.com/hashicorp/hcl v0.0.0-20170504190234-a4b07c25de5f/go.mod h1:oZtUIOe8dh44I2q6ScRibXws4Ajl+d+nod3AaR9vL5w= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hashicorp/hcl/v2 v2.0.0/go.mod h1:oVVDG71tEinNGYCxinCYadcmKU9bglqW9pV3txagJ90= github.com/hashicorp/hcl/v2 v2.19.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= -github.com/hashicorp/hcl/v2 v2.21.0 h1:lve4q/o/2rqwYOgUg3y3V2YPyD1/zkCLGjIV74Jit14= -github.com/hashicorp/hcl/v2 v2.21.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= +github.com/hashicorp/hcl/v2 v2.22.0 h1:hkZ3nCtqeJsDhPRFz5EA9iwcG1hNWGePOTw6oyul12M= +github.com/hashicorp/hcl/v2 v2.22.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 h1:T1Q6ag9tCwun16AW+XK3tAql24P4uTGUMIn1/92WsQQ= github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93/go.mod h1:n2TSygSNwsLJ76m8qFXTSc7beTb+auJxYdqrnoqwZWE= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/terraform-config-inspect v0.0.0-20191115094559-17f92b0546e8/go.mod h1:p+ivJws3dpqbp1iP84+npOyAmTTOLMgCzrXd3GSdn/A= -github.com/hashicorp/terraform-exec v0.20.0 h1:DIZnPsqzPGuUnq6cH8jWcPunBfY+C+M8JyYF3vpnuEo= github.com/hashicorp/terraform-exec v0.20.0/go.mod h1:ckKGkJWbsNqFKV1itgMnE0hY9IYf1HoiekpuN0eWoDw= +github.com/hashicorp/terraform-exec v0.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ= +github.com/hashicorp/terraform-exec v0.21.0/go.mod h1:1PPeMYou+KDUSSeRE9szMZ/oHf4fYUmB923Wzbq1ICg= github.com/hashicorp/terraform-json v0.4.0/go.mod h1:eAbqb4w0pSlRmdvl8fOyHAi/+8jnkVYN28gJkSJrLhU= github.com/hashicorp/terraform-json v0.19.0/go.mod h1:qdeBs11ovMzo5puhrRibdD6d2Dq6TyE/28JiU4tIQxk= -github.com/hashicorp/terraform-json v0.21.0 h1:9NQxbLNqPbEMze+S6+YluEdXgJmhQykRyRNd+zTI05U= github.com/hashicorp/terraform-json v0.21.0/go.mod h1:qdeBs11ovMzo5puhrRibdD6d2Dq6TyE/28JiU4tIQxk= +github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7orfb5Ltvec= +github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A= github.com/hashicorp/terraform-plugin-go v0.22.0/go.mod h1:mPULV91VKss7sik6KFEcEu7HuTogMLLO/EvWCuFkRVE= github.com/hashicorp/terraform-plugin-go v0.24.0 h1:2WpHhginCdVhFIrWHxDEg6RBn3YaWzR2o6qUeIEat2U= github.com/hashicorp/terraform-plugin-go v0.24.0/go.mod h1:tUQ53lAsOyYSckFGEefGC5C8BAaO0ENqzFd3bQeuYQg= @@ -1686,10 +1693,10 @@ github.com/hashicorp/terraform-plugin-log v0.9.0/go.mod h1:rKL8egZQ/eXSyDqzLUuwU github.com/hashicorp/terraform-plugin-sdk v1.7.0 h1:B//oq0ZORG+EkVrIJy0uPGSonvmXqxSzXe8+GhknoW0= github.com/hashicorp/terraform-plugin-sdk v1.7.0/go.mod h1:OjgQmey5VxnPej/buEhe+YqKm0KNvV3QqU4hkqHqPCY= github.com/hashicorp/terraform-plugin-test v1.2.0/go.mod h1:QIJHYz8j+xJtdtLrFTlzQVC0ocr3rf/OjIpgZLK56Hs= -github.com/hashicorp/terraform-plugin-testing v1.5.1 h1:T4aQh9JAhmWo4+t1A7x+rnxAJHCDIYW9kXyo4sVO92c= -github.com/hashicorp/terraform-plugin-testing v1.5.1/go.mod h1:dg8clO6K59rZ8w9EshBmDp1CxTIPu3yA4iaDpX1h5u0= -github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240628163743-6594e1c6cd59 h1:bRMGiSRmgZoTPTTm37FQaMdIOiYbKFq0QucOCrW/6VI= -github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240628163743-6594e1c6cd59/go.mod h1:mTKc9KDAHPQjradh56k1cuv6hsIhvdYvBy0mdMmb1jc= +github.com/hashicorp/terraform-plugin-testing v1.10.0 h1:2+tmRNhvnfE4Bs8rB6v58S/VpqzGC6RCh9Y8ujdn+aw= +github.com/hashicorp/terraform-plugin-testing v1.10.0/go.mod h1:iWRW3+loP33WMch2P/TEyCxxct/ZEcCGMquSLSCVsrc= +github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240927131909-8f628d164c64 h1:2WWQvpbAD5mMVn31tsPpm3zn81PbRwUsZkNiIjMz+fA= +github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240927131909-8f628d164c64/go.mod h1:cHkQQ9TA7ESlqU0nH16oUyeEpe8Ms6OK/dPY8TuBO5g= github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI= github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= github.com/hashicorp/terraform-svchost v0.0.0-20191011084731-65d371908596/go.mod h1:kNDNcF7sN4DocDLBkQYz73HGKwN1ANB1blq4lIYLYvg= @@ -1774,8 +1781,6 @@ github.com/lyft/protoc-gen-star v0.6.0/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuz github.com/lyft/protoc-gen-star v0.6.1/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= github.com/lyft/protoc-gen-star/v2 v2.0.1/go.mod h1:RcCdONR2ScXaYnQC5tUzxzlpA3WVYF7/opLeUgcQs/o= github.com/lyft/protoc-gen-star/v2 v2.0.3/go.mod h1:amey7yeodaJhXSbf/TlLvWiqQfLOSpEk//mLlc+axEk= -github.com/manicminer/hamilton v0.71.0 h1:y81l1HDsdkWotmYYASmJxaL0kVqiRgzA0tWSuXS41EY= -github.com/manicminer/hamilton v0.71.0/go.mod h1:u80g9rPtJpCG7EC0iayttt8UfeAp6jknClixgZGE950= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= @@ -1935,8 +1940,8 @@ github.com/pulumi/esc v0.10.0 h1:jzBKzkLVW0mePeanDRfqSQoCJ5yrkux0jIwAkUxpRKE= github.com/pulumi/esc v0.10.0/go.mod h1:2Bfa+FWj/xl8CKqRTWbWgDX0SOD4opdQgvYSURTGK2c= github.com/pulumi/inflector v0.1.1 h1:dvlxlWtXwOJTUUtcYDvwnl6Mpg33prhK+7mzeF+SobA= github.com/pulumi/inflector v0.1.1/go.mod h1:HUFCjcPTz96YtTuUlwG3i3EZG4WlniBvR9bd+iJxCUY= -github.com/pulumi/providertest v0.1.2 h1:9pJS9MeNkMyGwyNeHmvh8QqLgJy39Nk2/ym5u7r13ng= -github.com/pulumi/providertest v0.1.2/go.mod h1:GcsqEGgSngwaNOD+kICJPIUQlnA911fGBU8HDlJvVL0= +github.com/pulumi/providertest v0.1.3 h1:GpNKRy/haNjRHiUA9bi4diU4Op2zf3axYXbga5AepHg= +github.com/pulumi/providertest v0.1.3/go.mod h1:GcsqEGgSngwaNOD+kICJPIUQlnA911fGBU8HDlJvVL0= github.com/pulumi/pulumi-java/pkg v0.16.1 h1:orHnDWFbpOERwaBLry9f+6nqPX7x0MsrIkaa5QDGAns= github.com/pulumi/pulumi-java/pkg v0.16.1/go.mod h1:QH0DihZkWYle9XFc+LJ76m4hUo+fA3RdyaM90pqOaSM= github.com/pulumi/pulumi-terraform-bridge/v3 v3.92.0 h1:LOUHyMFGYkchv4Bzej7v+1W1ooaspgQG6/oZVJ+3lXY= @@ -2089,8 +2094,8 @@ github.com/zclconf/go-cty v1.13.0/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4 github.com/zclconf/go-cty v1.13.1/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= github.com/zclconf/go-cty v1.14.1/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= github.com/zclconf/go-cty v1.14.2/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= -github.com/zclconf/go-cty v1.14.4 h1:uXXczd9QDGsgu0i/QFR/hzI5NYCHLf6NQw/atrbnhq8= -github.com/zclconf/go-cty v1.14.4/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +github.com/zclconf/go-cty v1.15.0 h1:tTCRWxsexYUmtt/wVxgDClUe+uQusuI443uL6e+5sXQ= +github.com/zclconf/go-cty v1.15.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8= github.com/zclconf/go-cty-debug v0.0.0-20240509010212-0d6042c53940 h1:4r45xpDWB6ZMSMNJFMOjqrGHynW3DIBuR2H9j0ug+Mo= github.com/zclconf/go-cty-debug v0.0.0-20240509010212-0d6042c53940/go.mod h1:CmBdvvj3nqzfzJ6nTCIwDTPZ56aVGvDrmztiO5g3qrM= @@ -2161,8 +2166,8 @@ golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= -golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= -golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M= +golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A= +golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -2229,8 +2234,8 @@ golang.org/x/mod v0.11.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8= -golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.21.0 h1:vvrHzRwRfVKSiLrG+d4FMl/Qi4ukBCE6kZlTUkDYRT0= +golang.org/x/mod v0.21.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -2308,8 +2313,8 @@ golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/net v0.18.0/go.mod h1:/czyP5RqHAH4odGYxBJ1qz0+CE5WZ+2j1YgoEo8F2jQ= golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= -golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= -golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= +golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo= +golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2345,8 +2350,8 @@ golang.org/x/oauth2 v0.10.0/go.mod h1:kTpgurOux7LqtuxjuyZa4Gj2gdezIt/jQtGnNFfypQ golang.org/x/oauth2 v0.11.0/go.mod h1:LdF7O/8bLR/qWK9DrpXmbHLTouvRHK0SgJl0GmDBchk= golang.org/x/oauth2 v0.13.0/go.mod h1:/JMhi4ZRXAf4HG9LiNmxvk+45+96RUlVThiH8FzNBn0= golang.org/x/oauth2 v0.14.0/go.mod h1:lAtNWgaWfL4cm7j2OV8TxGi9Qb7ECORx8DktCY74OwM= -golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= -golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= +golang.org/x/oauth2 v0.23.0 h1:PbgcYx2W7i4LvjJWEbf0ngHV6qJYr86PkAV3bXdLEbs= +golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -2368,8 +2373,8 @@ golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -2481,8 +2486,8 @@ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= -golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= +golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20220722155259-a9ba230a4035/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -2503,8 +2508,8 @@ golang.org/x/term v0.14.0/go.mod h1:TySc+nGkYR6qt8km8wUhuFRTVSMIX3XPR58y2lC8vww= golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY= golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= -golang.org/x/term v0.22.0 h1:BbsgPEJULsl2fV/AT3v15Mjva5yXKQDyKf+TbDz7QJk= -golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4= +golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM= +golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -2526,8 +2531,8 @@ golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= +golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224= +golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -2610,8 +2615,8 @@ golang.org/x/tools v0.9.3/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= golang.org/x/tools v0.10.0/go.mod h1:UJwyiVBsOA2uwvK/e5OY3GTpDUJriEd+/YlqAwLPmyM= golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps= -golang.org/x/tools v0.23.0 h1:SGsXPZ+2l4JsgaCKkx+FQ9YZ5XEtA1GZYuoDjenLjvg= -golang.org/x/tools v0.23.0/go.mod h1:pnu6ufv6vQkll6szChhK3C3L/ruaIv5eBeztNG8wtsI= +golang.org/x/tools v0.25.0 h1:oFU9pkj/iJgs+0DT+VMHrx+oBKs/LJMV+Uvg78sl+fE= +golang.org/x/tools v0.25.0/go.mod h1:/vtpO8WL1N9cQC3FN5zPqb//fRXskFHbLKk4OW1Q7rg= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -2877,8 +2882,8 @@ google.golang.org/genproto/googleapis/api v0.0.0-20231012201019-e917dd12ba7a/go. google.golang.org/genproto/googleapis/api v0.0.0-20231016165738-49dd2c1f3d0b/go.mod h1:IBQ646DjkDkvUIsVq/cc03FUFQ9wbZu7yE396YcL870= google.golang.org/genproto/googleapis/api v0.0.0-20231030173426-d783a09b4405/go.mod h1:oT32Z4o8Zv2xPQTg0pbVaPr0MPOH6f14RgXt7zfIpwg= google.golang.org/genproto/googleapis/api v0.0.0-20231106174013-bbf56f31fb17/go.mod h1:0xJLfVdJqpAPl8tDg1ujOCGzx6LFLttXT5NhllGOXY4= -google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 h1:+rdxYoE3E5htTEWIe15GlN6IfvbURM//Jt0mmkmm6ZU= -google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117/go.mod h1:OimBR/bc1wPO9iV4NC2bpyjy3VnAwZh5EBPQdtaE5oo= +google.golang.org/genproto/googleapis/api v0.0.0-20240814211410-ddb44dafa142 h1:wKguEg1hsxI2/L3hUYrpo1RVi48K+uTyzKqprwLXsb8= +google.golang.org/genproto/googleapis/api v0.0.0-20240814211410-ddb44dafa142/go.mod h1:d6be+8HhtEtucleCbxpPW9PA9XwISACu8nvpPqF0BVo= google.golang.org/genproto/googleapis/bytestream v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:ylj+BE99M198VPbBh6A8d9n3w8fChvyLK3wwBOjXBFA= google.golang.org/genproto/googleapis/bytestream v0.0.0-20230807174057-1744710a1577/go.mod h1:NjCQG/D8JandXxM57PZbAJL1DCNL6EypA0vPPwfsc7c= google.golang.org/genproto/googleapis/bytestream v0.0.0-20231030173426-d783a09b4405/go.mod h1:GRUCuLdzVqZte8+Dl/D4N25yLzcGqqWaYkeVOwulFqw= @@ -2899,8 +2904,8 @@ google.golang.org/genproto/googleapis/rpc v0.0.0-20231012201019-e917dd12ba7a/go. google.golang.org/genproto/googleapis/rpc v0.0.0-20231016165738-49dd2c1f3d0b/go.mod h1:swOH3j0KzcDDgGUWr+SNpyTen5YrXjS3eyPzFYKc6lc= google.golang.org/genproto/googleapis/rpc v0.0.0-20231030173426-d783a09b4405/go.mod h1:67X1fPuzjcrkymZzZV1vvkFeTn2Rvc6lYF9MYFGCcwE= google.golang.org/genproto/googleapis/rpc v0.0.0-20231106174013-bbf56f31fb17/go.mod h1:oQ5rr10WTTMvP4A36n8JpR1OrO1BEiV4f78CneXZxkA= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240711142825-46eb208f015d h1:JU0iKnSg02Gmb5ZdV8nYsKEKsP6o/FGVWTrw4i1DA9A= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240711142825-46eb208f015d/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 h1:pPJltXNxVzT4pK9yD8vR9X75DaWYYmLGMsEvBfFQZzQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= @@ -2951,8 +2956,8 @@ google.golang.org/grpc v1.58.2/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSs google.golang.org/grpc v1.58.3/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0= google.golang.org/grpc v1.59.0/go.mod h1:aUPDwccQo6OTjy7Hct4AfBPD1GptF4fyUjIkQ9YtF98= google.golang.org/grpc v1.61.1/go.mod h1:VUbo7IFqmF1QtCAstipjG0GIoq49KvMe9+h1jFLBNJs= -google.golang.org/grpc v1.66.2 h1:3QdXkuq3Bkh7w+ywLdLvM56cmGvQHUMZpiCzt6Rqaoo= -google.golang.org/grpc v1.66.2/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= +google.golang.org/grpc v1.67.0 h1:IdH9y6PF5MPSdAntIcpjQ+tXO41pcQsfZV2RxtQgVcw= +google.golang.org/grpc v1.67.0/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= @@ -3069,5 +3074,5 @@ rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8 rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -software.sslmate.com/src/go-pkcs12 v0.4.0 h1:H2g08FrTvSFKUj+D309j1DPfk5APnIdAQAB8aEykJ5k= -software.sslmate.com/src/go-pkcs12 v0.4.0/go.mod h1:Qiz0EyvDRJjjxGyUQa2cCNZn/wMyzrRJ/qcDXOQazLI= +software.sslmate.com/src/go-pkcs12 v0.5.0 h1:EC6R394xgENTpZ4RltKydeDUjtlM5drOYIG9c6TVj2M= +software.sslmate.com/src/go-pkcs12 v0.5.0/go.mod h1:Qiz0EyvDRJjjxGyUQa2cCNZn/wMyzrRJ/qcDXOQazLI= diff --git a/provider/provider_yaml_test.go b/provider/provider_yaml_test.go new file mode 100644 index 000000000..65011d0e8 --- /dev/null +++ b/provider/provider_yaml_test.go @@ -0,0 +1,68 @@ +// Copyright 2016-2024, Pulumi Corporation. All rights reserved. + +//go:build !go && !nodejs && !python && !dotnet +// +build !go,!nodejs,!python,!dotnet + +package provider + +import ( + "context" + "path/filepath" + "testing" + + _ "embed" + + "github.com/pulumi/providertest" + "github.com/pulumi/providertest/optproviderupgrade" + "github.com/pulumi/providertest/providers" + "github.com/pulumi/providertest/pulumitest" + "github.com/pulumi/providertest/pulumitest/assertpreview" + "github.com/pulumi/providertest/pulumitest/opttest" + "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge" + pulumirpc "github.com/pulumi/pulumi/sdk/v3/proto/go" + + "github.com/pulumi/pulumi-azuread/provider/v6/pkg/version" +) + +func Test_ad_app(t *testing.T) { + test(t, filepath.Join("test-programs", "ad-app")) +} + +func Test_ad_app_password(t *testing.T) { + test(t, + filepath.Join("test-programs", "ad-app-password"), + optproviderupgrade.NewSourcePath(filepath.Join("test-programs", "ad-app-password", "v6"))) +} + +func TestUpgradeCoverage(t *testing.T) { + providertest.ReportUpgradeCoverage(t) +} + +func test(t *testing.T, dir string, opts ...optproviderupgrade.PreviewProviderUpgradeOpt) { + t.Helper() + if testing.Short() { + t.Skipf("Skipping in testing.Short() mode, assuming this is a CI run without cloud credentials") + return + } + rpFactory := providers.ResourceProviderFactory(providerServer) + cacheDir := providertest.GetUpgradeCacheDir(filepath.Base(dir), "5.53.5") + pt := pulumitest.NewPulumiTest(t, dir, + opttest.AttachProvider("azuread", + rpFactory.ReplayInvokes(filepath.Join(cacheDir, "grpc.json"), false /* allowLiveFallback */))) + previewResult := providertest.PreviewProviderUpgrade(t, pt, "azuread", "5.53.5", opts...) + assertpreview.HasNoReplacements(t, previewResult) + assertpreview.HasNoDeletes(t, previewResult) +} + +// Use the non-embedded schema to avoid having to run generation before running the tests. +// +//go:embed cmd/pulumi-resource-azuread/schema.json +var schemaBytes []byte + +func providerServer(_ providers.PulumiTest) (pulumirpc.ResourceProviderServer, error) { + ctx := context.Background() + version.Version = "0.0.1" + info := Provider() + + return tfbridge.NewProvider(ctx, nil, "azuread", version.Version, info.P, info, schemaBytes), nil +} diff --git a/provider/resources.go b/provider/resources.go index fd98c3edf..11af29e6a 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -34,7 +34,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/common/resource" "github.com/pulumi/pulumi/sdk/v3/go/common/tokens" - "github.com/pulumi/pulumi-azuread/provider/v5/pkg/version" + "github.com/pulumi/pulumi-azuread/provider/v6/pkg/version" ) // all of the token components used below. diff --git a/provider/shim/go.mod b/provider/shim/go.mod index 677b934f1..073d1541f 100644 --- a/provider/shim/go.mod +++ b/provider/shim/go.mod @@ -1,44 +1,46 @@ module github.com/hashicorp/terraform-provider-azuread/shim -go 1.21.3 +go 1.22.0 + +toolchain go1.23.0 require ( - github.com/hashicorp/terraform-plugin-sdk/v2 v2.29.0 - github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240628163743-6594e1c6cd59 + github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 + github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240927131909-8f628d164c64 ) require ( - github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 // indirect + github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton // indirect github.com/agext/levenshtein v1.2.3 // indirect github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect - github.com/cloudflare/circl v1.3.7 // indirect - github.com/fatih/color v1.16.0 // indirect - github.com/golang/protobuf v1.5.3 // indirect - github.com/google/go-cmp v0.5.9 // indirect + github.com/cloudflare/circl v1.4.0 // indirect + github.com/fatih/color v1.17.0 // indirect + github.com/golang/protobuf v1.5.4 // indirect + github.com/google/go-cmp v0.6.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect - github.com/hashicorp/go-azure-helpers v0.66.2 // indirect - github.com/hashicorp/go-azure-sdk v0.20240125.1100331 // indirect + github.com/hashicorp/go-azure-helpers v0.71.0 // indirect + github.com/hashicorp/go-azure-sdk/microsoft-graph v0.20240927.1005214 // indirect + github.com/hashicorp/go-azure-sdk/sdk v0.20240927.1005214 // indirect github.com/hashicorp/go-checkpoint v0.5.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 // indirect github.com/hashicorp/go-hclog v1.6.3 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/go-plugin v1.5.1 // indirect + github.com/hashicorp/go-plugin v1.6.1 // indirect github.com/hashicorp/go-retryablehttp v0.7.7 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect - github.com/hashicorp/go-version v1.6.0 // indirect - github.com/hashicorp/hc-install v0.6.0 // indirect - github.com/hashicorp/hcl/v2 v2.18.0 // indirect + github.com/hashicorp/go-version v1.7.0 // indirect + github.com/hashicorp/hc-install v0.9.0 // indirect + github.com/hashicorp/hcl/v2 v2.22.0 // indirect github.com/hashicorp/logutils v1.0.0 // indirect - github.com/hashicorp/terraform-exec v0.19.0 // indirect - github.com/hashicorp/terraform-json v0.17.1 // indirect - github.com/hashicorp/terraform-plugin-go v0.19.0 // indirect + github.com/hashicorp/terraform-exec v0.21.0 // indirect + github.com/hashicorp/terraform-json v0.22.1 // indirect + github.com/hashicorp/terraform-plugin-go v0.24.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect - github.com/hashicorp/terraform-plugin-testing v1.5.1 // indirect - github.com/hashicorp/terraform-registry-address v0.2.2 // indirect + github.com/hashicorp/terraform-plugin-testing v1.10.0 // indirect + github.com/hashicorp/terraform-registry-address v0.2.3 // indirect github.com/hashicorp/terraform-svchost v0.1.1 // indirect github.com/hashicorp/yamux v0.1.1 // indirect - github.com/manicminer/hamilton v0.71.0 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect @@ -48,21 +50,20 @@ require ( github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/oklog/run v1.1.0 // indirect github.com/vmihailenco/msgpack v4.0.4+incompatible // indirect - github.com/vmihailenco/msgpack/v5 v5.3.5 // indirect + github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect - github.com/zclconf/go-cty v1.14.0 // indirect - golang.org/x/crypto v0.21.0 // indirect - golang.org/x/exp v0.0.0-20230809150735-7b3493d9a819 // indirect - golang.org/x/mod v0.12.0 // indirect - golang.org/x/net v0.23.0 // indirect - golang.org/x/oauth2 v0.16.0 // indirect - golang.org/x/sys v0.20.0 // indirect - golang.org/x/text v0.14.0 // indirect - google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 // indirect - google.golang.org/grpc v1.57.1 // indirect - google.golang.org/protobuf v1.33.0 // indirect - software.sslmate.com/src/go-pkcs12 v0.4.0 // indirect + github.com/zclconf/go-cty v1.15.0 // indirect + golang.org/x/crypto v0.27.0 // indirect + golang.org/x/mod v0.21.0 // indirect + golang.org/x/net v0.29.0 // indirect + golang.org/x/oauth2 v0.23.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.25.0 // indirect + golang.org/x/text v0.18.0 // indirect + golang.org/x/tools v0.25.0 // indirect + google.golang.org/appengine v1.6.8 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect + google.golang.org/grpc v1.67.0 // indirect + google.golang.org/protobuf v1.34.2 // indirect + software.sslmate.com/src/go-pkcs12 v0.5.0 // indirect ) - -replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e diff --git a/provider/shim/go.sum b/provider/shim/go.sum index 89b814579..c6591e1d1 100644 --- a/provider/shim/go.sum +++ b/provider/shim/go.sum @@ -2,10 +2,8 @@ dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= -github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 h1:kkhsdkhsCvIsutKu5zLMgWtgh9YxGCNAw8Ad8hjwfYg= -github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= -github.com/acomagu/bufpipe v1.0.4 h1:e3H4WUzM3npvo5uv95QuJM3cQspFNtFBzvJ2oNjKIDQ= -github.com/acomagu/bufpipe v1.0.4/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ2sYmHc4= +github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton h1:KVBEgU3CJpmzLChnLiSuEyCuhGhcMt3eOST+7A+ckto= +github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec= @@ -13,24 +11,24 @@ github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4= github.com/bufbuild/protocompile v0.4.0 h1:LbFKd2XowZvQ/kajzguUp2DC9UEIQhIq77fZZlaQsNA= github.com/bufbuild/protocompile v0.4.0/go.mod h1:3v93+mbWn/v3xzN+31nwkJfrEpAUwp+BagBSZWx+TP8= -github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= -github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= -github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= -github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= +github.com/cloudflare/circl v1.4.0 h1:BV7h5MgrktNzytKmWjpOtdYrf0lkkbF8YMlBGPhJQrY= +github.com/cloudflare/circl v1.4.0/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU= +github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= +github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= -github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= -github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= +github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= +github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= -github.com/go-git/go-billy/v5 v5.4.1 h1:Uwp5tDRkPr+l/TnbHOQzp+tmJfLceOlbVucgpTz8ix4= -github.com/go-git/go-billy/v5 v5.4.1/go.mod h1:vjbugF6Fz7JIflbVpl1hJsGjSHNltrSw45YK/ukIvQg= -github.com/go-git/go-git/v5 v5.8.1 h1:Zo79E4p7TRk0xoRgMq0RShiTHGKcKI4+DI6BfJc/Q+A= -github.com/go-git/go-git/v5 v5.8.1/go.mod h1:FHFuoD6yGz5OSKEBK+aWN9Oah0q54Jxl0abmj6GnqAo= +github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= +github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= +github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= +github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68= github.com/go-test/deep v1.0.3/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= @@ -38,21 +36,23 @@ github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/protobuf v1.1.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= -github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= +github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= -github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= -github.com/hashicorp/go-azure-helpers v0.66.2 h1:+Pzuo7pdKl0hBXXr5ymmhs4Q40tHAo2nAvHq4WgSjx8= -github.com/hashicorp/go-azure-helpers v0.66.2/go.mod h1:kJxXrFtJKJdOEqvad8pllAe7dhP4DbN8J6sqFZe47+4= -github.com/hashicorp/go-azure-sdk v0.20240125.1100331 h1:mMgROkPDJnzyDyGwogjhjbD62pVowy3eNk1k6ozwcZA= -github.com/hashicorp/go-azure-sdk v0.20240125.1100331/go.mod h1:3KI/ojBQAAMjtXPxCP9A5EyNMWlDQarITxGLmGj9tGI= +github.com/hashicorp/go-azure-helpers v0.71.0 h1:ra3aIRzg01g6MLKQ+yABcb6WJtrqRUDDgyuPLmyZ9lY= +github.com/hashicorp/go-azure-helpers v0.71.0/go.mod h1:BmbF4JDYXK5sEmFeU5hcn8Br21uElcqLfdQxjatwQKw= +github.com/hashicorp/go-azure-sdk/microsoft-graph v0.20240927.1005214 h1:m6VCE8gYOJI3XtkVpxEtMp1HwtsYUrL8tvROINe1Q9A= +github.com/hashicorp/go-azure-sdk/microsoft-graph v0.20240927.1005214/go.mod h1:O2eTEWXTgwu1AISomfd1JIv0r6uh3/fY5BA0yC0/tFA= +github.com/hashicorp/go-azure-sdk/sdk v0.20240927.1005214 h1:nhYBErlMEkQIoG50GY2OZattC4+WBI/8xgZkwx/CsvY= +github.com/hashicorp/go-azure-sdk/sdk v0.20240927.1005214/go.mod h1:dMKF6bXrgGmy1d3pLzkmBpG2JIHgSAV2/OMSCEgyMwE= github.com/hashicorp/go-checkpoint v0.5.0 h1:MFYpPZCnQqQTE18jFwSII6eUQrD/oxMFp3mlgcqk5mU= github.com/hashicorp/go-checkpoint v0.5.0/go.mod h1:7nfLNL10NsxqO4iWuW6tWW0HjZuDrwkBuEQsVcpCOgg= github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= @@ -64,35 +64,37 @@ github.com/hashicorp/go-hclog v1.6.3 h1:Qr2kF+eVWjTiYmU7Y31tYlP1h0q/X3Nl3tPGdaB1 github.com/hashicorp/go-hclog v1.6.3/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= -github.com/hashicorp/go-plugin v1.5.1 h1:oGm7cWBaYIp3lJpx1RUEfLWophprE2EV/KUeqBYo+6k= -github.com/hashicorp/go-plugin v1.5.1/go.mod h1:w1sAEES3g3PuV/RzUrgow20W2uErMly84hhD3um1WL4= +github.com/hashicorp/go-plugin v1.6.1 h1:P7MR2UP6gNKGPp+y7EZw2kOiq4IR9WiqLvp0XOsVdwI= +github.com/hashicorp/go-plugin v1.6.1/go.mod h1:XPHFku2tFo3o3QKFgSYo+cghcUhw1NA1hZyMK0PWAw0= github.com/hashicorp/go-retryablehttp v0.7.7 h1:C8hUCYzor8PIfXHa4UrZkU4VvK8o9ISHxT2Q8+VepXU= github.com/hashicorp/go-retryablehttp v0.7.7/go.mod h1:pkQpWZeYWskR+D1tR2O5OcBFOxfA7DoAO6xtkuQnHTk= github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8= github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= -github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= -github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/hc-install v0.6.0 h1:fDHnU7JNFNSQebVKYhHZ0va1bC6SrPQ8fpebsvNr2w4= -github.com/hashicorp/hc-install v0.6.0/go.mod h1:10I912u3nntx9Umo1VAeYPUUuehk0aRQJYpMwbX5wQA= -github.com/hashicorp/hcl/v2 v2.18.0 h1:wYnG7Lt31t2zYkcquwgKo6MWXzRUDIeIVU5naZwHLl8= -github.com/hashicorp/hcl/v2 v2.18.0/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= +github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= +github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= +github.com/hashicorp/hc-install v0.9.0 h1:2dIk8LcvANwtv3QZLckxcjyF5w8KVtiMxu6G6eLhghE= +github.com/hashicorp/hc-install v0.9.0/go.mod h1:+6vOP+mf3tuGgMApVYtmsnDoKWMDcFXeTxCACYZ8SFg= +github.com/hashicorp/hcl/v2 v2.22.0 h1:hkZ3nCtqeJsDhPRFz5EA9iwcG1hNWGePOTw6oyul12M= +github.com/hashicorp/hcl/v2 v2.22.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= -github.com/hashicorp/terraform-exec v0.19.0 h1:FpqZ6n50Tk95mItTSS9BjeOVUb4eg81SpgVtZNNtFSM= -github.com/hashicorp/terraform-exec v0.19.0/go.mod h1:tbxUpe3JKruE9Cuf65mycSIT8KiNPZ0FkuTE3H4urQg= -github.com/hashicorp/terraform-json v0.17.1 h1:eMfvh/uWggKmY7Pmb3T85u86E2EQg6EQHgyRwf3RkyA= -github.com/hashicorp/terraform-json v0.17.1/go.mod h1:Huy6zt6euxaY9knPAFKjUITn8QxUFIe9VuSzb4zn/0o= -github.com/hashicorp/terraform-plugin-go v0.19.0 h1:BuZx/6Cp+lkmiG0cOBk6Zps0Cb2tmqQpDM3iAtnhDQU= -github.com/hashicorp/terraform-plugin-go v0.19.0/go.mod h1:EhRSkEPNoylLQntYsk5KrDHTZJh9HQoumZXbOGOXmec= +github.com/hashicorp/terraform-exec v0.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ= +github.com/hashicorp/terraform-exec v0.21.0/go.mod h1:1PPeMYou+KDUSSeRE9szMZ/oHf4fYUmB923Wzbq1ICg= +github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7orfb5Ltvec= +github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A= +github.com/hashicorp/terraform-plugin-go v0.24.0 h1:2WpHhginCdVhFIrWHxDEg6RBn3YaWzR2o6qUeIEat2U= +github.com/hashicorp/terraform-plugin-go v0.24.0/go.mod h1:tUQ53lAsOyYSckFGEefGC5C8BAaO0ENqzFd3bQeuYQg= github.com/hashicorp/terraform-plugin-log v0.9.0 h1:i7hOA+vdAItN1/7UrfBqBwvYPQ9TFvymaRGZED3FCV0= github.com/hashicorp/terraform-plugin-log v0.9.0/go.mod h1:rKL8egZQ/eXSyDqzLUuwUYLVdlYeamldAHSxjUFADow= -github.com/hashicorp/terraform-plugin-testing v1.5.1 h1:T4aQh9JAhmWo4+t1A7x+rnxAJHCDIYW9kXyo4sVO92c= -github.com/hashicorp/terraform-plugin-testing v1.5.1/go.mod h1:dg8clO6K59rZ8w9EshBmDp1CxTIPu3yA4iaDpX1h5u0= -github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240628163743-6594e1c6cd59 h1:bRMGiSRmgZoTPTTm37FQaMdIOiYbKFq0QucOCrW/6VI= -github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240628163743-6594e1c6cd59/go.mod h1:mTKc9KDAHPQjradh56k1cuv6hsIhvdYvBy0mdMmb1jc= -github.com/hashicorp/terraform-registry-address v0.2.2 h1:lPQBg403El8PPicg/qONZJDC6YlgCVbWDtNmmZKtBno= -github.com/hashicorp/terraform-registry-address v0.2.2/go.mod h1:LtwNbCihUoUZ3RYriyS2wF/lGPB6gF9ICLRtuDk7hSo= +github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 h1:kJiWGx2kiQVo97Y5IOGR4EMcZ8DtMswHhUuFibsCQQE= +github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0/go.mod h1:sl/UoabMc37HA6ICVMmGO+/0wofkVIRxf+BMb/dnoIg= +github.com/hashicorp/terraform-plugin-testing v1.10.0 h1:2+tmRNhvnfE4Bs8rB6v58S/VpqzGC6RCh9Y8ujdn+aw= +github.com/hashicorp/terraform-plugin-testing v1.10.0/go.mod h1:iWRW3+loP33WMch2P/TEyCxxct/ZEcCGMquSLSCVsrc= +github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240927131909-8f628d164c64 h1:2WWQvpbAD5mMVn31tsPpm3zn81PbRwUsZkNiIjMz+fA= +github.com/hashicorp/terraform-provider-azuread v1.6.1-0.20240927131909-8f628d164c64/go.mod h1:cHkQQ9TA7ESlqU0nH16oUyeEpe8Ms6OK/dPY8TuBO5g= +github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI= +github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S52uzrw4x0jKQ= github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc= github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE= @@ -108,10 +110,6 @@ github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORN github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= -github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= -github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= -github.com/manicminer/hamilton v0.71.0 h1:y81l1HDsdkWotmYYASmJxaL0kVqiRgzA0tWSuXS41EY= -github.com/manicminer/hamilton v0.71.0/go.mod h1:u80g9rPtJpCG7EC0iayttt8UfeAp6jknClixgZGE950= github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= @@ -137,56 +135,47 @@ github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4= github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e h1:blSirnXqvm8JXLxwxelsBroUNRhOHakDO7cgJUYTdpQ= -github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e/go.mod h1:qH/34G25Ugdj5FcM95cSoXzUgIbgfhVLXCcEcYaMwq8= -github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= -github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= -github.com/skeema/knownhosts v1.2.0 h1:h9r9cf0+u7wSE+M183ZtMGgOJKiL96brpaz5ekfJCpM= -github.com/skeema/knownhosts v1.2.0/go.mod h1:g4fPeYpque7P0xefxtGzV81ihjC8sX2IqpAoNkjxbMo= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= +github.com/skeema/knownhosts v1.2.2 h1:Iug2P4fLmDw9f41PB6thxUkNUkJzB5i+1/exaj40L3A= +github.com/skeema/knownhosts v1.2.2/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.2 h1:4jaiDzPyXQvSd7D0EjG45355tLlV3VOECpq10pLC+8s= github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= github.com/vmihailenco/msgpack v4.0.4+incompatible h1:dSLoQfGFAo3F6OoNhwUmLwVgaUXK79GlxNBwueZn0xI= github.com/vmihailenco/msgpack v4.0.4+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= -github.com/vmihailenco/msgpack/v5 v5.3.5 h1:5gO0H1iULLWGhs2H5tbAHIZTV8/cYafcFOr9znI5mJU= -github.com/vmihailenco/msgpack/v5 v5.3.5/go.mod h1:7xyJ9e+0+9SaZT0Wt1RGleJXzli6Q/V5KbhBonMG9jc= +github.com/vmihailenco/msgpack/v5 v5.4.1 h1:cQriyiUvjTwOHg8QZaPihLWeRAAVoCpE00IUPn0Bjt8= +github.com/vmihailenco/msgpack/v5 v5.4.1/go.mod h1:GaZTsDaehaPpQVyxrf5mtQlH+pc21PIudVV/E3rRQok= github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAhO7/IwNM9g= github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds= github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM= github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/zclconf/go-cty v1.14.0 h1:/Xrd39K7DXbHzlisFP9c4pHao4yyf+/Ug9LEz+Y/yhc= -github.com/zclconf/go-cty v1.14.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +github.com/zclconf/go-cty v1.15.0 h1:tTCRWxsexYUmtt/wVxgDClUe+uQusuI443uL6e+5sXQ= +github.com/zclconf/go-cty v1.15.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +github.com/zclconf/go-cty-debug v0.0.0-20240509010212-0d6042c53940 h1:4r45xpDWB6ZMSMNJFMOjqrGHynW3DIBuR2H9j0ug+Mo= +github.com/zclconf/go-cty-debug v0.0.0-20240509010212-0d6042c53940/go.mod h1:CmBdvvj3nqzfzJ6nTCIwDTPZ56aVGvDrmztiO5g3qrM= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= -golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= -golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= -golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= -golang.org/x/exp v0.0.0-20230809150735-7b3493d9a819 h1:EDuYyU/MkFXllv9QF9819VlI9a4tzGuCbhG0ExK9o1U= -golang.org/x/exp v0.0.0-20230809150735-7b3493d9a819/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc= +golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A= +golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc= -golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.21.0 h1:vvrHzRwRfVKSiLrG+d4FMl/Qi4ukBCE6kZlTUkDYRT0= +golang.org/x/mod v0.21.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= -golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= -golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= -golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= -golang.org/x/oauth2 v0.16.0 h1:aDkGMBSYxElaoP81NpoUoz2oo2R2wHdZpGToUxfyQrQ= -golang.org/x/oauth2 v0.16.0/go.mod h1:hqZ+0LWXsiVoZpeld6jVt06P3adbS2Uu911W1SsJv2o= +golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo= +golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0= +golang.org/x/oauth2 v0.23.0 h1:PbgcYx2W7i4LvjJWEbf0ngHV6qJYr86PkAV3bXdLEbs= +golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -198,51 +187,42 @@ golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= -golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= +golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= -golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= -golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= +golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224= +golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM= -golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/tools v0.25.0 h1:oFU9pkj/iJgs+0DT+VMHrx+oBKs/LJMV+Uvg78sl+fE= +golang.org/x/tools v0.25.0/go.mod h1:/vtpO8WL1N9cQC3FN5zPqb//fRXskFHbLKk4OW1Q7rg= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= -google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= -google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 h1:0nDDozoAU19Qb2HwhXadU8OcsiO/09cnTqhUtq2MEOM= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= -google.golang.org/grpc v1.57.1 h1:upNTNqv0ES+2ZOOqACwVtS3Il8M12/+Hz41RCPzAjQg= -google.golang.org/grpc v1.57.1/go.mod h1:Sd+9RMTACXwmub0zcNY2c4arhtrbBYD1AUHI/dt16Mo= +google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM= +google.golang.org/appengine v1.6.8/go.mod h1:1jJ3jBArFh5pcgW8gCtRJnepW8FzD1V44FJffLiz/Ds= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 h1:pPJltXNxVzT4pK9yD8vR9X75DaWYYmLGMsEvBfFQZzQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= +google.golang.org/grpc v1.67.0 h1:IdH9y6PF5MPSdAntIcpjQ+tXO41pcQsfZV2RxtQgVcw= +google.golang.org/grpc v1.67.0/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -software.sslmate.com/src/go-pkcs12 v0.4.0 h1:H2g08FrTvSFKUj+D309j1DPfk5APnIdAQAB8aEykJ5k= -software.sslmate.com/src/go-pkcs12 v0.4.0/go.mod h1:Qiz0EyvDRJjjxGyUQa2cCNZn/wMyzrRJ/qcDXOQazLI= +software.sslmate.com/src/go-pkcs12 v0.5.0 h1:EC6R394xgENTpZ4RltKydeDUjtlM5drOYIG9c6TVj2M= +software.sslmate.com/src/go-pkcs12 v0.5.0/go.mod h1:Qiz0EyvDRJjjxGyUQa2cCNZn/wMyzrRJ/qcDXOQazLI= diff --git a/provider/test-programs/ad-app-password/Pulumi.yaml b/provider/test-programs/ad-app-password/Pulumi.yaml new file mode 100644 index 000000000..1920a1938 --- /dev/null +++ b/provider/test-programs/ad-app-password/Pulumi.yaml @@ -0,0 +1,12 @@ +name: ad-app +runtime: yaml +description: Testing that secrets in explicit provider args are secret +resources: + example: + type: azuread:Application + properties: + displayName: example + password: + type: azuread:ApplicationPassword + properties: + applicationObjectId: ${example.id} diff --git a/provider/test-programs/ad-app-password/v6/Pulumi.yaml b/provider/test-programs/ad-app-password/v6/Pulumi.yaml new file mode 100644 index 000000000..afddd37c7 --- /dev/null +++ b/provider/test-programs/ad-app-password/v6/Pulumi.yaml @@ -0,0 +1,12 @@ +name: ad-app +runtime: yaml +description: Testing that secrets in explicit provider args are secret +resources: + example: + type: azuread:Application + properties: + displayName: example + password: + type: azuread:ApplicationPassword + properties: + applicationId: ${example.id} diff --git a/provider/test-programs/ad-app/Pulumi.yaml b/provider/test-programs/ad-app/Pulumi.yaml new file mode 100644 index 000000000..396728a5b --- /dev/null +++ b/provider/test-programs/ad-app/Pulumi.yaml @@ -0,0 +1,8 @@ +name: ad-app +runtime: yaml +description: Testing that secrets in explicit provider args are secret +resources: + example: + type: azuread:Application + properties: + displayName: example diff --git a/provider/testdata/recorded/TestProviderUpgrade/ad-app-password/5.53.5/grpc.json b/provider/testdata/recorded/TestProviderUpgrade/ad-app-password/5.53.5/grpc.json new file mode 100644 index 000000000..aa5419aff --- /dev/null +++ b/provider/testdata/recorded/TestProviderUpgrade/ad-app-password/5.53.5/grpc.json @@ -0,0 +1,22 @@ +{"method":"/pulumirpc.LanguageRuntime/GetPluginInfo","request":{},"response":{}} +{"method":"/pulumirpc.LanguageRuntime/GetPluginInfo","request":{},"response":{}} +{"method":"/pulumirpc.LanguageRuntime/GetRequiredPlugins","request":{"info":{"entryPoint":".","options":{},"programDirectory":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app_password319652795/007/ad-app-password","rootDirectory":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app_password319652795/007/ad-app-password"},"program":".","project":"deprecated","pwd":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app_password319652795/007/ad-app-password"},"response":{"plugins":[{"kind":"resource","name":"azuread"}]}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"resourceReferences"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"outputValues"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"deletedWith"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"aliasSpecs"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"transforms"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"invokeTransforms"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/RegisterResource","request":{"acceptResources":true,"acceptSecrets":true,"customTimeouts":{},"name":"ad-app-test","object":{},"sourcePosition":{"line":195,"uri":"project://%2Fhome%2Frunner%2Fwork%2Fpulumi-yaml%2Fpulumi-yaml%2Fpkg%2Fserver%2Fserver.go"},"supportsResultReporting":true,"type":"pulumi:pulumi:Stack"},"response":{"object":{},"urn":"urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test"}} +{"method":"/pulumirpc.ResourceProvider/Attach","request":{"address":"127.0.0.1:62075"},"response":{}} +{"method":"/pulumirpc.ResourceProvider/GetPluginInfo","request":{},"response":{"version":"5.53.5"}} +{"method":"/pulumirpc.ResourceProvider/CheckConfig","request":{"name":"default","news":{},"olds":{},"type":"pulumi:providers:azuread","urn":"urn:pulumi:test::ad-app::pulumi:providers:azuread::default"},"response":{"inputs":{}}} +{"method":"/pulumirpc.ResourceMonitor/RegisterResourceOutputs","request":{"outputs":{},"urn":"urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test"},"response":{}} +{"method":"/pulumirpc.ResourceProvider/Configure","request":{"acceptResources":true,"acceptSecrets":true,"args":{},"sendsOldInputs":true,"sendsOldInputsToDelete":true},"response":{"supportsPreview":true}} +{"method":"/pulumirpc.ResourceProvider/Check","request":{"name":"example","news":{"displayName":"example"},"olds":{},"randomSeed":"UNlGFypC3fypWK3AvvzPCmFJVaKtMmofXwuFm01thhA=","type":"azuread:index/application:Application","urn":"urn:pulumi:test::ad-app::azuread:index/application:Application::example"},"response":{"inputs":{"__defaults":["preventDuplicateNames","signInAudience"],"displayName":"example","preventDuplicateNames":false,"signInAudience":"AzureADMyOrg"}}} +{"method":"/pulumirpc.ResourceProvider/Create","request":{"name":"example","properties":{"__defaults":["preventDuplicateNames","signInAudience"],"displayName":"example","preventDuplicateNames":false,"signInAudience":"AzureADMyOrg"},"type":"azuread:index/application:Application","urn":"urn:pulumi:test::ad-app::azuread:index/application:Application::example"},"response":{"id":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d","properties":{"__meta":"{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":600000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":600000000000},\"schema_version\":\"2\"}","api":{"knownClientApplications":[],"mappedClaimsEnabled":false,"oauth2PermissionScopes":[],"requestedAccessTokenVersion":1},"appRoleIds":{},"appRoles":[],"applicationId":"12697b3b-13f5-4ad4-bfb6-78e3cc5c6c49","clientId":"12697b3b-13f5-4ad4-bfb6-78e3cc5c6c49","description":"","deviceOnlyAuthEnabled":false,"disabledByMicrosoft":"\u003cnil\u003e","displayName":"example","fallbackPublicClientEnabled":false,"featureTags":[{"customSingleSignOn":false,"enterprise":false,"gallery":false,"hide":false}],"groupMembershipClaims":null,"id":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d","identifierUris":null,"logoImage":"","logoUrl":"","marketingUrl":"","notes":"","oauth2PermissionScopeIds":{},"oauth2PostResponseRequired":false,"objectId":"67998fa2-cd3b-4187-9385-ad7788f2637d","optionalClaims":{"accessTokens":[],"idTokens":[],"saml2Tokens":[]},"owners":null,"password":null,"preventDuplicateNames":false,"privacyStatementUrl":"","publicClient":{"redirectUris":[]},"publisherDomain":"pulumi.onmicrosoft.com","requiredResourceAccesses":[],"serviceManagementReference":"","signInAudience":"AzureADMyOrg","singlePageApplication":{"redirectUris":[]},"supportUrl":"","tags":[],"templateId":"","termsOfServiceUrl":"","web":{"homepageUrl":"","implicitGrant":{"accessTokenIssuanceEnabled":false,"idTokenIssuanceEnabled":false},"logoutUrl":"","redirectUris":[]}}}} +{"method":"/pulumirpc.ResourceMonitor/RegisterResource","request":{"acceptResources":true,"acceptSecrets":true,"custom":true,"customTimeouts":{},"name":"example","object":{"displayName":"example"},"parent":"urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test","propertyDependencies":{"displayName":{}},"sourcePosition":{"line":740,"uri":"project://%2Fhome%2Frunner%2Fwork%2Fpulumi-yaml%2Fpulumi-yaml%2Fpkg%2Fpulumiyaml%2Frun.go"},"supportsResultReporting":true,"type":"azuread:index/application:Application"},"response":{"id":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d","object":{"__meta":"{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":600000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":600000000000},\"schema_version\":\"2\"}","api":{"knownClientApplications":[],"mappedClaimsEnabled":false,"oauth2PermissionScopes":[],"requestedAccessTokenVersion":1},"appRoleIds":{},"appRoles":[],"applicationId":"12697b3b-13f5-4ad4-bfb6-78e3cc5c6c49","clientId":"12697b3b-13f5-4ad4-bfb6-78e3cc5c6c49","description":"","deviceOnlyAuthEnabled":false,"disabledByMicrosoft":"\u003cnil\u003e","displayName":"example","fallbackPublicClientEnabled":false,"featureTags":[{"customSingleSignOn":false,"enterprise":false,"gallery":false,"hide":false}],"groupMembershipClaims":null,"id":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d","identifierUris":null,"logoImage":"","logoUrl":"","marketingUrl":"","notes":"","oauth2PermissionScopeIds":{},"oauth2PostResponseRequired":false,"objectId":"67998fa2-cd3b-4187-9385-ad7788f2637d","optionalClaims":{"accessTokens":[],"idTokens":[],"saml2Tokens":[]},"owners":null,"password":null,"preventDuplicateNames":false,"privacyStatementUrl":"","publicClient":{"redirectUris":[]},"publisherDomain":"pulumi.onmicrosoft.com","requiredResourceAccesses":[],"serviceManagementReference":"","signInAudience":"AzureADMyOrg","singlePageApplication":{"redirectUris":[]},"supportUrl":"","tags":[],"templateId":"","termsOfServiceUrl":"","web":{"homepageUrl":"","implicitGrant":{"accessTokenIssuanceEnabled":false,"idTokenIssuanceEnabled":false},"logoutUrl":"","redirectUris":[]}},"urn":"urn:pulumi:test::ad-app::azuread:index/application:Application::example"}} +{"method":"/pulumirpc.ResourceProvider/Check","request":{"name":"password","news":{"applicationObjectId":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d"},"olds":{},"randomSeed":"MbkqT3iV411lOvS7eLeo0+Zu02ml6M9pdTpE/OhCUXI=","type":"azuread:index/applicationPassword:ApplicationPassword","urn":"urn:pulumi:test::ad-app::azuread:index/applicationPassword:ApplicationPassword::password"},"response":{"inputs":{"__defaults":[],"applicationObjectId":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d"}}} +{"method":"/pulumirpc.ResourceProvider/Create","request":{"name":"password","properties":{"__defaults":[],"applicationObjectId":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d"},"type":"azuread:index/applicationPassword:ApplicationPassword","urn":"urn:pulumi:test::ad-app::azuread:index/applicationPassword:ApplicationPassword::password"},"response":{"id":"67998fa2-cd3b-4187-9385-ad7788f2637d/password/ef482963-8947-4bb9-883d-9742d685d378","properties":{"__meta":"{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":900000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":300000000000},\"schema_version\":\"1\"}","applicationId":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d","applicationObjectId":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d","displayName":null,"endDate":"2026-10-10T09:17:27Z","endDateRelative":null,"id":"67998fa2-cd3b-4187-9385-ad7788f2637d/password/ef482963-8947-4bb9-883d-9742d685d378","keyId":"ef482963-8947-4bb9-883d-9742d685d378","rotateWhenChanged":null,"startDate":"2024-10-10T09:17:27Z","value":{"4dabf18193072939515e22adb298388d":"1b47061264138c4ac30d75fd1eb44270","value":"REDACTED BY PROVIDERTEST"}}}} +{"method":"/pulumirpc.ResourceMonitor/RegisterResource","request":{"acceptResources":true,"acceptSecrets":true,"additionalSecretOutputs":["value"],"custom":true,"customTimeouts":{},"dependencies":["urn:pulumi:test::ad-app::azuread:index/application:Application::example"],"name":"password","object":{"applicationObjectId":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d"},"parent":"urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test","propertyDependencies":{"applicationObjectId":{"urns":["urn:pulumi:test::ad-app::azuread:index/application:Application::example"]}},"sourcePosition":{"line":740,"uri":"project://%2Fhome%2Frunner%2Fwork%2Fpulumi-yaml%2Fpulumi-yaml%2Fpkg%2Fpulumiyaml%2Frun.go"},"supportsResultReporting":true,"type":"azuread:index/applicationPassword:ApplicationPassword"},"response":{"id":"67998fa2-cd3b-4187-9385-ad7788f2637d/password/ef482963-8947-4bb9-883d-9742d685d378","object":{"__meta":"{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":900000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":300000000000},\"schema_version\":\"1\"}","applicationId":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d","applicationObjectId":"/applications/67998fa2-cd3b-4187-9385-ad7788f2637d","displayName":null,"endDate":"2026-10-10T09:17:27Z","endDateRelative":null,"id":"67998fa2-cd3b-4187-9385-ad7788f2637d/password/ef482963-8947-4bb9-883d-9742d685d378","keyId":"ef482963-8947-4bb9-883d-9742d685d378","rotateWhenChanged":null,"startDate":"2024-10-10T09:17:27Z","value":{"4dabf18193072939515e22adb298388d":"1b47061264138c4ac30d75fd1eb44270","value":"REDACTED BY PROVIDERTEST"}},"urn":"urn:pulumi:test::ad-app::azuread:index/applicationPassword:ApplicationPassword::password"}} +{"method":"/pulumirpc.LanguageRuntime/Run","request":{"configPropertyMap":{},"info":{"entryPoint":".","options":{},"programDirectory":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app_password319652795/007/ad-app-password","rootDirectory":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app_password319652795/007/ad-app-password"},"loaderTarget":"127.0.0.1:62080","monitorAddress":"127.0.0.1:62079","organization":"organization","parallel":40,"program":".","project":"ad-app","pwd":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app_password319652795/007/ad-app-password","stack":"test"},"response":{}} \ No newline at end of file diff --git a/provider/testdata/recorded/TestProviderUpgrade/ad-app-password/5.53.5/stack.json b/provider/testdata/recorded/TestProviderUpgrade/ad-app-password/5.53.5/stack.json new file mode 100644 index 000000000..c4963f9b1 --- /dev/null +++ b/provider/testdata/recorded/TestProviderUpgrade/ad-app-password/5.53.5/stack.json @@ -0,0 +1,164 @@ +{ + "version": 3, + "deployment": { + "manifest": { + "time": "2024-10-10T10:17:33.308559+01:00", + "magic": "3ee1df7d88e73eabd00b78d7e9adea0e78f7a7ee1e2702f04b35b87d31dbc1bb", + "version": "v3.135.1" + }, + "secrets_providers": { + "type": "passphrase", + "state": { + "salt": "v1:Us8X3BsW8/w=:v1:n5GGST9lDiiM/Q6y:4n7LLG2geJENJK/VXoFOzIK1XkG78w==" + } + }, + "resources": [ + { + "urn": "urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test", + "custom": false, + "type": "pulumi:pulumi:Stack", + "created": "2024-10-10T09:17:22.41795Z", + "modified": "2024-10-10T09:17:22.41795Z" + }, + { + "urn": "urn:pulumi:test::ad-app::pulumi:providers:azuread::default", + "custom": true, + "id": "0114540b-c098-4ecb-8277-c223b402b317", + "type": "pulumi:providers:azuread", + "created": "2024-10-10T09:17:23.346837Z", + "modified": "2024-10-10T09:17:23.346837Z" + }, + { + "urn": "urn:pulumi:test::ad-app::azuread:index/application:Application::example", + "custom": true, + "id": "/applications/67998fa2-cd3b-4187-9385-ad7788f2637d", + "type": "azuread:index/application:Application", + "inputs": { + "__defaults": [ + "preventDuplicateNames", + "signInAudience" + ], + "displayName": "example", + "preventDuplicateNames": false, + "signInAudience": "AzureADMyOrg" + }, + "outputs": { + "__meta": "{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":600000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":600000000000},\"schema_version\":\"2\"}", + "api": { + "knownClientApplications": [], + "mappedClaimsEnabled": false, + "oauth2PermissionScopes": [], + "requestedAccessTokenVersion": 1 + }, + "appRoleIds": {}, + "appRoles": [], + "applicationId": "12697b3b-13f5-4ad4-bfb6-78e3cc5c6c49", + "clientId": "12697b3b-13f5-4ad4-bfb6-78e3cc5c6c49", + "description": "", + "deviceOnlyAuthEnabled": false, + "disabledByMicrosoft": "\u003cnil\u003e", + "displayName": "example", + "fallbackPublicClientEnabled": false, + "featureTags": [ + { + "customSingleSignOn": false, + "enterprise": false, + "gallery": false, + "hide": false + } + ], + "groupMembershipClaims": null, + "id": "/applications/67998fa2-cd3b-4187-9385-ad7788f2637d", + "identifierUris": null, + "logoImage": "", + "logoUrl": "", + "marketingUrl": "", + "notes": "", + "oauth2PermissionScopeIds": {}, + "oauth2PostResponseRequired": false, + "objectId": "67998fa2-cd3b-4187-9385-ad7788f2637d", + "optionalClaims": { + "accessTokens": [], + "idTokens": [], + "saml2Tokens": [] + }, + "owners": null, + "password": null, + "preventDuplicateNames": false, + "privacyStatementUrl": "", + "publicClient": { + "redirectUris": [] + }, + "publisherDomain": "pulumi.onmicrosoft.com", + "requiredResourceAccesses": [], + "serviceManagementReference": "", + "signInAudience": "AzureADMyOrg", + "singlePageApplication": { + "redirectUris": [] + }, + "supportUrl": "", + "tags": [], + "templateId": "", + "termsOfServiceUrl": "", + "web": { + "homepageUrl": "", + "implicitGrant": { + "accessTokenIssuanceEnabled": false, + "idTokenIssuanceEnabled": false + }, + "logoutUrl": "", + "redirectUris": [] + } + }, + "parent": "urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test", + "provider": "urn:pulumi:test::ad-app::pulumi:providers:azuread::default::0114540b-c098-4ecb-8277-c223b402b317", + "propertyDependencies": { + "displayName": [] + }, + "created": "2024-10-10T09:17:27.490323Z", + "modified": "2024-10-10T09:17:27.490323Z" + }, + { + "urn": "urn:pulumi:test::ad-app::azuread:index/applicationPassword:ApplicationPassword::password", + "custom": true, + "id": "67998fa2-cd3b-4187-9385-ad7788f2637d/password/ef482963-8947-4bb9-883d-9742d685d378", + "type": "azuread:index/applicationPassword:ApplicationPassword", + "inputs": { + "__defaults": [], + "applicationObjectId": "/applications/67998fa2-cd3b-4187-9385-ad7788f2637d" + }, + "outputs": { + "__meta": "{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":900000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":300000000000},\"schema_version\":\"1\"}", + "applicationId": "/applications/67998fa2-cd3b-4187-9385-ad7788f2637d", + "applicationObjectId": "/applications/67998fa2-cd3b-4187-9385-ad7788f2637d", + "displayName": null, + "endDate": "2026-10-10T09:17:27Z", + "endDateRelative": null, + "id": "67998fa2-cd3b-4187-9385-ad7788f2637d/password/ef482963-8947-4bb9-883d-9742d685d378", + "keyId": "ef482963-8947-4bb9-883d-9742d685d378", + "rotateWhenChanged": null, + "startDate": "2024-10-10T09:17:27Z", + "value": { + "4dabf18193072939515e22adb298388d": "1b47061264138c4ac30d75fd1eb44270", + "plaintext": "\"REDACTED BY PROVIDERTEST\"" + } + }, + "parent": "urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test", + "dependencies": [ + "urn:pulumi:test::ad-app::azuread:index/application:Application::example" + ], + "provider": "urn:pulumi:test::ad-app::pulumi:providers:azuread::default::0114540b-c098-4ecb-8277-c223b402b317", + "propertyDependencies": { + "applicationObjectId": [ + "urn:pulumi:test::ad-app::azuread:index/application:Application::example" + ] + }, + "additionalSecretOutputs": [ + "value" + ], + "created": "2024-10-10T09:17:33.304471Z", + "modified": "2024-10-10T09:17:33.304471Z" + } + ] + } +} \ No newline at end of file diff --git a/provider/testdata/recorded/TestProviderUpgrade/ad-app/5.53.5/grpc.json b/provider/testdata/recorded/TestProviderUpgrade/ad-app/5.53.5/grpc.json new file mode 100644 index 000000000..175fc4117 --- /dev/null +++ b/provider/testdata/recorded/TestProviderUpgrade/ad-app/5.53.5/grpc.json @@ -0,0 +1,19 @@ +{"method":"/pulumirpc.LanguageRuntime/GetPluginInfo","request":{},"response":{}} +{"method":"/pulumirpc.LanguageRuntime/GetPluginInfo","request":{},"response":{}} +{"method":"/pulumirpc.LanguageRuntime/GetRequiredPlugins","request":{"info":{"entryPoint":".","options":{},"programDirectory":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app1988508293/007/ad-app","rootDirectory":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app1988508293/007/ad-app"},"program":".","project":"deprecated","pwd":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app1988508293/007/ad-app"},"response":{"plugins":[{"kind":"resource","name":"azuread"}]}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"resourceReferences"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"outputValues"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"deletedWith"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"aliasSpecs"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"transforms"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/SupportsFeature","request":{"id":"invokeTransforms"},"response":{"hasSupport":true}} +{"method":"/pulumirpc.ResourceMonitor/RegisterResource","request":{"acceptResources":true,"acceptSecrets":true,"customTimeouts":{},"name":"ad-app-test","object":{},"sourcePosition":{"line":195,"uri":"project://%2Fhome%2Frunner%2Fwork%2Fpulumi-yaml%2Fpulumi-yaml%2Fpkg%2Fserver%2Fserver.go"},"supportsResultReporting":true,"type":"pulumi:pulumi:Stack"},"response":{"object":{},"urn":"urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test"}} +{"method":"/pulumirpc.ResourceProvider/Attach","request":{"address":"127.0.0.1:53907"},"response":{}} +{"method":"/pulumirpc.ResourceProvider/GetPluginInfo","request":{},"response":{"version":"5.53.5"}} +{"method":"/pulumirpc.ResourceProvider/CheckConfig","request":{"name":"default","news":{},"olds":{},"type":"pulumi:providers:azuread","urn":"urn:pulumi:test::ad-app::pulumi:providers:azuread::default"},"response":{"inputs":{}}} +{"method":"/pulumirpc.ResourceMonitor/RegisterResourceOutputs","request":{"outputs":{},"urn":"urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test"},"response":{}} +{"method":"/pulumirpc.ResourceProvider/Configure","request":{"acceptResources":true,"acceptSecrets":true,"args":{},"sendsOldInputs":true,"sendsOldInputsToDelete":true},"response":{"supportsPreview":true}} +{"method":"/pulumirpc.ResourceProvider/Check","request":{"name":"example","news":{"displayName":"example"},"olds":{},"randomSeed":"dY+5TXFpl/Uzwz3CwGxm0bAzXEk4G7LhkfRz5yfWvqA=","type":"azuread:index/application:Application","urn":"urn:pulumi:test::ad-app::azuread:index/application:Application::example"},"response":{"inputs":{"__defaults":["preventDuplicateNames","signInAudience"],"displayName":"example","preventDuplicateNames":false,"signInAudience":"AzureADMyOrg"}}} +{"method":"/pulumirpc.ResourceProvider/Create","request":{"name":"example","properties":{"__defaults":["preventDuplicateNames","signInAudience"],"displayName":"example","preventDuplicateNames":false,"signInAudience":"AzureADMyOrg"},"type":"azuread:index/application:Application","urn":"urn:pulumi:test::ad-app::azuread:index/application:Application::example"},"response":{"id":"/applications/bdfa66be-3eab-42aa-b5c1-26d147f7f355","properties":{"__meta":"{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":600000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":600000000000},\"schema_version\":\"2\"}","api":{"knownClientApplications":[],"mappedClaimsEnabled":false,"oauth2PermissionScopes":[],"requestedAccessTokenVersion":1},"appRoleIds":{},"appRoles":[],"applicationId":"aefbbbd4-5302-43fd-aa6b-04b5438e1503","clientId":"aefbbbd4-5302-43fd-aa6b-04b5438e1503","description":"","deviceOnlyAuthEnabled":false,"disabledByMicrosoft":"\u003cnil\u003e","displayName":"example","fallbackPublicClientEnabled":false,"featureTags":[{"customSingleSignOn":false,"enterprise":false,"gallery":false,"hide":false}],"groupMembershipClaims":null,"id":"/applications/bdfa66be-3eab-42aa-b5c1-26d147f7f355","identifierUris":null,"logoImage":"","logoUrl":"","marketingUrl":"","notes":"","oauth2PermissionScopeIds":{},"oauth2PostResponseRequired":false,"objectId":"bdfa66be-3eab-42aa-b5c1-26d147f7f355","optionalClaims":{"accessTokens":[],"idTokens":[],"saml2Tokens":[]},"owners":null,"password":null,"preventDuplicateNames":false,"privacyStatementUrl":"","publicClient":{"redirectUris":[]},"publisherDomain":"pulumi.onmicrosoft.com","requiredResourceAccesses":[],"serviceManagementReference":"","signInAudience":"AzureADMyOrg","singlePageApplication":{"redirectUris":[]},"supportUrl":"","tags":[],"templateId":"","termsOfServiceUrl":"","web":{"homepageUrl":"","implicitGrant":{"accessTokenIssuanceEnabled":false,"idTokenIssuanceEnabled":false},"logoutUrl":"","redirectUris":[]}}}} +{"method":"/pulumirpc.ResourceMonitor/RegisterResource","request":{"acceptResources":true,"acceptSecrets":true,"custom":true,"customTimeouts":{},"name":"example","object":{"displayName":"example"},"parent":"urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test","propertyDependencies":{"displayName":{}},"sourcePosition":{"line":740,"uri":"project://%2Fhome%2Frunner%2Fwork%2Fpulumi-yaml%2Fpulumi-yaml%2Fpkg%2Fpulumiyaml%2Frun.go"},"supportsResultReporting":true,"type":"azuread:index/application:Application"},"response":{"id":"/applications/bdfa66be-3eab-42aa-b5c1-26d147f7f355","object":{"__meta":"{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":600000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":600000000000},\"schema_version\":\"2\"}","api":{"knownClientApplications":[],"mappedClaimsEnabled":false,"oauth2PermissionScopes":[],"requestedAccessTokenVersion":1},"appRoleIds":{},"appRoles":[],"applicationId":"aefbbbd4-5302-43fd-aa6b-04b5438e1503","clientId":"aefbbbd4-5302-43fd-aa6b-04b5438e1503","description":"","deviceOnlyAuthEnabled":false,"disabledByMicrosoft":"\u003cnil\u003e","displayName":"example","fallbackPublicClientEnabled":false,"featureTags":[{"customSingleSignOn":false,"enterprise":false,"gallery":false,"hide":false}],"groupMembershipClaims":null,"id":"/applications/bdfa66be-3eab-42aa-b5c1-26d147f7f355","identifierUris":null,"logoImage":"","logoUrl":"","marketingUrl":"","notes":"","oauth2PermissionScopeIds":{},"oauth2PostResponseRequired":false,"objectId":"bdfa66be-3eab-42aa-b5c1-26d147f7f355","optionalClaims":{"accessTokens":[],"idTokens":[],"saml2Tokens":[]},"owners":null,"password":null,"preventDuplicateNames":false,"privacyStatementUrl":"","publicClient":{"redirectUris":[]},"publisherDomain":"pulumi.onmicrosoft.com","requiredResourceAccesses":[],"serviceManagementReference":"","signInAudience":"AzureADMyOrg","singlePageApplication":{"redirectUris":[]},"supportUrl":"","tags":[],"templateId":"","termsOfServiceUrl":"","web":{"homepageUrl":"","implicitGrant":{"accessTokenIssuanceEnabled":false,"idTokenIssuanceEnabled":false},"logoutUrl":"","redirectUris":[]}},"urn":"urn:pulumi:test::ad-app::azuread:index/application:Application::example"}} +{"method":"/pulumirpc.LanguageRuntime/Run","request":{"configPropertyMap":{},"info":{"entryPoint":".","options":{},"programDirectory":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app1988508293/007/ad-app","rootDirectory":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app1988508293/007/ad-app"},"loaderTarget":"127.0.0.1:53912","monitorAddress":"127.0.0.1:53911","organization":"organization","parallel":40,"program":".","project":"ad-app","pwd":"/private/var/folders/40/n23_nmpj47n3fxxpqls5h9tw0000gn/T/Test_ad_app1988508293/007/ad-app","stack":"test"},"response":{}} \ No newline at end of file diff --git a/provider/testdata/recorded/TestProviderUpgrade/ad-app/5.53.5/stack.json b/provider/testdata/recorded/TestProviderUpgrade/ad-app/5.53.5/stack.json new file mode 100644 index 000000000..16e0f36ff --- /dev/null +++ b/provider/testdata/recorded/TestProviderUpgrade/ad-app/5.53.5/stack.json @@ -0,0 +1,123 @@ +{ + "version": 3, + "deployment": { + "manifest": { + "time": "2024-10-07T11:47:34.226072+01:00", + "magic": "3ee1df7d88e73eabd00b78d7e9adea0e78f7a7ee1e2702f04b35b87d31dbc1bb", + "version": "v3.135.1" + }, + "secrets_providers": { + "type": "passphrase", + "state": { + "salt": "v1:ZRzwBG6BRrQ=:v1:0LVIZyUXUfZZGNqv:2/XK7FyQ+c4raZRdZlP+4SSnSGCjyg==" + } + }, + "resources": [ + { + "urn": "urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test", + "custom": false, + "type": "pulumi:pulumi:Stack", + "created": "2024-10-07T10:47:27.26007Z", + "modified": "2024-10-07T10:47:27.26007Z" + }, + { + "urn": "urn:pulumi:test::ad-app::pulumi:providers:azuread::default", + "custom": true, + "id": "bb847290-2fd9-4442-ad8b-3f5d8357df6f", + "type": "pulumi:providers:azuread", + "created": "2024-10-07T10:47:27.990714Z", + "modified": "2024-10-07T10:47:27.990714Z" + }, + { + "urn": "urn:pulumi:test::ad-app::azuread:index/application:Application::example", + "custom": true, + "id": "/applications/bdfa66be-3eab-42aa-b5c1-26d147f7f355", + "type": "azuread:index/application:Application", + "inputs": { + "__defaults": [ + "preventDuplicateNames", + "signInAudience" + ], + "displayName": "example", + "preventDuplicateNames": false, + "signInAudience": "AzureADMyOrg" + }, + "outputs": { + "__meta": "{\"e2bfb730-ecaa-11e6-8f88-34363bc7c4c0\":{\"create\":600000000000,\"delete\":300000000000,\"read\":300000000000,\"update\":600000000000},\"schema_version\":\"2\"}", + "api": { + "knownClientApplications": [], + "mappedClaimsEnabled": false, + "oauth2PermissionScopes": [], + "requestedAccessTokenVersion": 1 + }, + "appRoleIds": {}, + "appRoles": [], + "applicationId": "aefbbbd4-5302-43fd-aa6b-04b5438e1503", + "clientId": "aefbbbd4-5302-43fd-aa6b-04b5438e1503", + "description": "", + "deviceOnlyAuthEnabled": false, + "disabledByMicrosoft": "\u003cnil\u003e", + "displayName": "example", + "fallbackPublicClientEnabled": false, + "featureTags": [ + { + "customSingleSignOn": false, + "enterprise": false, + "gallery": false, + "hide": false + } + ], + "groupMembershipClaims": null, + "id": "/applications/bdfa66be-3eab-42aa-b5c1-26d147f7f355", + "identifierUris": null, + "logoImage": "", + "logoUrl": "", + "marketingUrl": "", + "notes": "", + "oauth2PermissionScopeIds": {}, + "oauth2PostResponseRequired": false, + "objectId": "bdfa66be-3eab-42aa-b5c1-26d147f7f355", + "optionalClaims": { + "accessTokens": [], + "idTokens": [], + "saml2Tokens": [] + }, + "owners": null, + "password": null, + "preventDuplicateNames": false, + "privacyStatementUrl": "", + "publicClient": { + "redirectUris": [] + }, + "publisherDomain": "pulumi.onmicrosoft.com", + "requiredResourceAccesses": [], + "serviceManagementReference": "", + "signInAudience": "AzureADMyOrg", + "singlePageApplication": { + "redirectUris": [] + }, + "supportUrl": "", + "tags": [], + "templateId": "", + "termsOfServiceUrl": "", + "web": { + "homepageUrl": "", + "implicitGrant": { + "accessTokenIssuanceEnabled": false, + "idTokenIssuanceEnabled": false + }, + "logoutUrl": "", + "redirectUris": [] + } + }, + "parent": "urn:pulumi:test::ad-app::pulumi:pulumi:Stack::ad-app-test", + "provider": "urn:pulumi:test::ad-app::pulumi:providers:azuread::default::bb847290-2fd9-4442-ad8b-3f5d8357df6f", + "propertyDependencies": { + "displayName": [] + }, + "created": "2024-10-07T10:47:34.221511Z", + "modified": "2024-10-07T10:47:34.221511Z" + } + ] + } +} \ No newline at end of file diff --git a/sdk/dotnet/AppRoleAssignment.cs b/sdk/dotnet/AppRoleAssignment.cs index 3d409006f..5b7f9c48f 100644 --- a/sdk/dotnet/AppRoleAssignment.cs +++ b/sdk/dotnet/AppRoleAssignment.cs @@ -67,7 +67,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() /// { - /// ClientId = example.ApplicationId, + /// ClientId = example.ClientId, /// }); /// /// var exampleAppRoleAssignment = new AzureAD.AppRoleAssignment("example", new() @@ -112,7 +112,7 @@ namespace Pulumi.AzureAD /// /// var internalServicePrincipal = new AzureAD.ServicePrincipal("internal", new() /// { - /// ClientId = @internal.ApplicationId, + /// ClientId = @internal.ClientId, /// }); /// /// var example = new AzureAD.Application("example", new() @@ -122,7 +122,7 @@ namespace Pulumi.AzureAD /// { /// new AzureAD.Inputs.ApplicationRequiredResourceAccessArgs /// { - /// ResourceAppId = @internal.ApplicationId, + /// ResourceAppId = @internal.ClientId, /// ResourceAccesses = new[] /// { /// new AzureAD.Inputs.ApplicationRequiredResourceAccessResourceAccessArgs @@ -137,7 +137,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() /// { - /// ClientId = example.ApplicationId, + /// ClientId = example.ClientId, /// }); /// /// var exampleAppRoleAssignment = new AzureAD.AppRoleAssignment("example", new() diff --git a/sdk/dotnet/Application.cs b/sdk/dotnet/Application.cs index a11ad1c91..dd556dd57 100644 --- a/sdk/dotnet/Application.cs +++ b/sdk/dotnet/Application.cs @@ -47,8 +47,8 @@ namespace Pulumi.AzureAD /// RequestedAccessTokenVersion = 2, /// KnownClientApplications = new[] /// { - /// known1.ApplicationId, - /// known2.ApplicationId, + /// known1.ClientId, + /// known2.ClientId, /// }, /// Oauth2PermissionScopes = new[] /// { @@ -226,12 +226,6 @@ public partial class Application : global::Pulumi.CustomResource [Output("appRoles")] public Output> AppRoles { get; private set; } = null!; - /// - /// The Application ID (also called Client ID) - /// - [Output("applicationId")] - public Output ApplicationId { get; private set; } = null!; - /// /// The Client ID for the application. /// @@ -742,12 +736,6 @@ public InputList AppRoles set => _appRoles = value; } - /// - /// The Application ID (also called Client ID) - /// - [Input("applicationId")] - public Input? ApplicationId { get; set; } - /// /// The Client ID for the application. /// diff --git a/sdk/dotnet/ApplicationCertificate.cs b/sdk/dotnet/ApplicationCertificate.cs index 1b4887073..686143dc8 100644 --- a/sdk/dotnet/ApplicationCertificate.cs +++ b/sdk/dotnet/ApplicationCertificate.cs @@ -186,12 +186,6 @@ public partial class ApplicationCertificate : global::Pulumi.CustomResource [Output("applicationId")] public Output ApplicationId { get; private set; } = null!; - /// - /// The object ID of the application for which this certificate should be created - /// - [Output("applicationObjectId")] - public Output ApplicationObjectId { get; private set; } = null!; - /// /// Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. /// @@ -291,14 +285,8 @@ public sealed class ApplicationCertificateArgs : global::Pulumi.ResourceArgs /// /// The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. /// - [Input("applicationId")] - public Input? ApplicationId { get; set; } - - /// - /// The object ID of the application for which this certificate should be created - /// - [Input("applicationObjectId")] - public Input? ApplicationObjectId { get; set; } + [Input("applicationId", required: true)] + public Input ApplicationId { get; set; } = null!; /// /// Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. @@ -370,12 +358,6 @@ public sealed class ApplicationCertificateState : global::Pulumi.ResourceArgs [Input("applicationId")] public Input? ApplicationId { get; set; } - /// - /// The object ID of the application for which this certificate should be created - /// - [Input("applicationObjectId")] - public Input? ApplicationObjectId { get; set; } - /// /// Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. /// diff --git a/sdk/dotnet/ApplicationFederatedIdentityCredential.cs b/sdk/dotnet/ApplicationFederatedIdentityCredential.cs index 6742c73a1..e62039338 100644 --- a/sdk/dotnet/ApplicationFederatedIdentityCredential.cs +++ b/sdk/dotnet/ApplicationFederatedIdentityCredential.cs @@ -60,12 +60,6 @@ public partial class ApplicationFederatedIdentityCredential : global::Pulumi.Cus [Output("applicationId")] public Output ApplicationId { get; private set; } = null!; - /// - /// The object ID of the application for which this federated identity credential should be created - /// - [Output("applicationObjectId")] - public Output ApplicationObjectId { get; private set; } = null!; - /// /// List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. /// @@ -151,14 +145,8 @@ public sealed class ApplicationFederatedIdentityCredentialArgs : global::Pulumi. /// /// The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. /// - [Input("applicationId")] - public Input? ApplicationId { get; set; } - - /// - /// The object ID of the application for which this federated identity credential should be created - /// - [Input("applicationObjectId")] - public Input? ApplicationObjectId { get; set; } + [Input("applicationId", required: true)] + public Input ApplicationId { get; set; } = null!; [Input("audiences", required: true)] private InputList? _audiences; @@ -210,12 +198,6 @@ public sealed class ApplicationFederatedIdentityCredentialState : global::Pulumi [Input("applicationId")] public Input? ApplicationId { get; set; } - /// - /// The object ID of the application for which this federated identity credential should be created - /// - [Input("applicationObjectId")] - public Input? ApplicationObjectId { get; set; } - [Input("audiences")] private InputList? _audiences; diff --git a/sdk/dotnet/ApplicationPassword.cs b/sdk/dotnet/ApplicationPassword.cs index 493dfec02..0d50d808c 100644 --- a/sdk/dotnet/ApplicationPassword.cs +++ b/sdk/dotnet/ApplicationPassword.cs @@ -81,12 +81,6 @@ public partial class ApplicationPassword : global::Pulumi.CustomResource [Output("applicationId")] public Output ApplicationId { get; private set; } = null!; - /// - /// The object ID of the application for which this password should be created - /// - [Output("applicationObjectId")] - public Output ApplicationObjectId { get; private set; } = null!; - /// /// A display name for the password. Changing this field forces a new resource to be created. /// @@ -137,7 +131,7 @@ public partial class ApplicationPassword : global::Pulumi.CustomResource /// The unique name of the resource /// The arguments used to populate this resource's properties /// A bag of options that control this resource's behavior - public ApplicationPassword(string name, ApplicationPasswordArgs? args = null, CustomResourceOptions? options = null) + public ApplicationPassword(string name, ApplicationPasswordArgs args, CustomResourceOptions? options = null) : base("azuread:index/applicationPassword:ApplicationPassword", name, args ?? new ApplicationPasswordArgs(), MakeResourceOptions(options, "")) { } @@ -182,14 +176,8 @@ public sealed class ApplicationPasswordArgs : global::Pulumi.ResourceArgs /// /// The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. /// - [Input("applicationId")] - public Input? ApplicationId { get; set; } - - /// - /// The object ID of the application for which this password should be created - /// - [Input("applicationObjectId")] - public Input? ApplicationObjectId { get; set; } + [Input("applicationId", required: true)] + public Input ApplicationId { get; set; } = null!; /// /// A display name for the password. Changing this field forces a new resource to be created. @@ -241,12 +229,6 @@ public sealed class ApplicationPasswordState : global::Pulumi.ResourceArgs [Input("applicationId")] public Input? ApplicationId { get; set; } - /// - /// The object ID of the application for which this password should be created - /// - [Input("applicationObjectId")] - public Input? ApplicationObjectId { get; set; } - /// /// A display name for the password. Changing this field forces a new resource to be created. /// diff --git a/sdk/dotnet/ApplicationPreAuthorized.cs b/sdk/dotnet/ApplicationPreAuthorized.cs index 0cdf2100e..f2fa4e66b 100644 --- a/sdk/dotnet/ApplicationPreAuthorized.cs +++ b/sdk/dotnet/ApplicationPreAuthorized.cs @@ -89,18 +89,6 @@ public partial class ApplicationPreAuthorized : global::Pulumi.CustomResource [Output("applicationId")] public Output ApplicationId { get; private set; } = null!; - /// - /// The object ID of the application to which this pre-authorized application should be added - /// - [Output("applicationObjectId")] - public Output ApplicationObjectId { get; private set; } = null!; - - /// - /// The application ID of the pre-authorized application - /// - [Output("authorizedAppId")] - public Output AuthorizedAppId { get; private set; } = null!; - /// /// The client ID of the application being authorized. Changing this field forces a new resource to be created. /// @@ -162,26 +150,14 @@ public sealed class ApplicationPreAuthorizedArgs : global::Pulumi.ResourceArgs /// /// The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. /// - [Input("applicationId")] - public Input? ApplicationId { get; set; } - - /// - /// The object ID of the application to which this pre-authorized application should be added - /// - [Input("applicationObjectId")] - public Input? ApplicationObjectId { get; set; } - - /// - /// The application ID of the pre-authorized application - /// - [Input("authorizedAppId")] - public Input? AuthorizedAppId { get; set; } + [Input("applicationId", required: true)] + public Input ApplicationId { get; set; } = null!; /// /// The client ID of the application being authorized. Changing this field forces a new resource to be created. /// - [Input("authorizedClientId")] - public Input? AuthorizedClientId { get; set; } + [Input("authorizedClientId", required: true)] + public Input AuthorizedClientId { get; set; } = null!; [Input("permissionIds", required: true)] private InputList? _permissionIds; @@ -209,18 +185,6 @@ public sealed class ApplicationPreAuthorizedState : global::Pulumi.ResourceArgs [Input("applicationId")] public Input? ApplicationId { get; set; } - /// - /// The object ID of the application to which this pre-authorized application should be added - /// - [Input("applicationObjectId")] - public Input? ApplicationObjectId { get; set; } - - /// - /// The application ID of the pre-authorized application - /// - [Input("authorizedAppId")] - public Input? AuthorizedAppId { get; set; } - /// /// The client ID of the application being authorized. Changing this field forces a new resource to be created. /// diff --git a/sdk/dotnet/ConditionalAccessPolicy.cs b/sdk/dotnet/ConditionalAccessPolicy.cs index d4d186556..6f904b100 100644 --- a/sdk/dotnet/ConditionalAccessPolicy.cs +++ b/sdk/dotnet/ConditionalAccessPolicy.cs @@ -259,6 +259,12 @@ public partial class ConditionalAccessPolicy : global::Pulumi.CustomResource [Output("grantControls")] public Output GrantControls { get; private set; } = null!; + /// + /// The object ID of the policy + /// + [Output("objectId")] + public Output ObjectId { get; private set; } = null!; + /// /// A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in. /// @@ -377,6 +383,12 @@ public sealed class ConditionalAccessPolicyState : global::Pulumi.ResourceArgs [Input("grantControls")] public Input? GrantControls { get; set; } + /// + /// The object ID of the policy + /// + [Input("objectId")] + public Input? ObjectId { get; set; } + /// /// A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in. /// diff --git a/sdk/dotnet/DirectoryRoleAssignment.cs b/sdk/dotnet/DirectoryRoleAssignment.cs index 902a288c4..fc417ef70 100644 --- a/sdk/dotnet/DirectoryRoleAssignment.cs +++ b/sdk/dotnet/DirectoryRoleAssignment.cs @@ -114,24 +114,12 @@ public partial class DirectoryRoleAssignment : global::Pulumi.CustomResource [Output("appScopeId")] public Output AppScopeId { get; private set; } = null!; - /// - /// Identifier of the app-specific scope when the assignment scope is app-specific - /// - [Output("appScopeObjectId")] - public Output AppScopeObjectId { get; private set; } = null!; - /// /// Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. /// [Output("directoryScopeId")] public Output DirectoryScopeId { get; private set; } = null!; - /// - /// Identifier of the directory object representing the scope of the assignment - /// - [Output("directoryScopeObjectId")] - public Output DirectoryScopeObjectId { get; private set; } = null!; - /// /// The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. /// @@ -196,24 +184,12 @@ public sealed class DirectoryRoleAssignmentArgs : global::Pulumi.ResourceArgs [Input("appScopeId")] public Input? AppScopeId { get; set; } - /// - /// Identifier of the app-specific scope when the assignment scope is app-specific - /// - [Input("appScopeObjectId")] - public Input? AppScopeObjectId { get; set; } - /// /// Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. /// [Input("directoryScopeId")] public Input? DirectoryScopeId { get; set; } - /// - /// Identifier of the directory object representing the scope of the assignment - /// - [Input("directoryScopeObjectId")] - public Input? DirectoryScopeObjectId { get; set; } - /// /// The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. /// @@ -240,24 +216,12 @@ public sealed class DirectoryRoleAssignmentState : global::Pulumi.ResourceArgs [Input("appScopeId")] public Input? AppScopeId { get; set; } - /// - /// Identifier of the app-specific scope when the assignment scope is app-specific - /// - [Input("appScopeObjectId")] - public Input? AppScopeObjectId { get; set; } - /// /// Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. /// [Input("directoryScopeId")] public Input? DirectoryScopeId { get; set; } - /// - /// Identifier of the directory object representing the scope of the assignment - /// - [Input("directoryScopeObjectId")] - public Input? DirectoryScopeObjectId { get; set; } - /// /// The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. /// diff --git a/sdk/dotnet/GetApplication.cs b/sdk/dotnet/GetApplication.cs index 096dfd25b..d9d9044f8 100644 --- a/sdk/dotnet/GetApplication.cs +++ b/sdk/dotnet/GetApplication.cs @@ -87,9 +87,6 @@ public static Output Invoke(GetApplicationInvokeArgs? args public sealed class GetApplicationArgs : global::Pulumi.InvokeArgs { - [Input("applicationId")] - public string? ApplicationId { get; set; } - /// /// Specifies the Client ID of the application. /// @@ -124,9 +121,6 @@ public GetApplicationArgs() public sealed class GetApplicationInvokeArgs : global::Pulumi.InvokeArgs { - [Input("applicationId")] - public Input? ApplicationId { get; set; } - /// /// Specifies the Client ID of the application. /// @@ -175,7 +169,6 @@ public sealed class GetApplicationResult /// A collection of `app_role` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). /// public readonly ImmutableArray AppRoles; - public readonly string ApplicationId; /// /// The Client ID for the application. /// @@ -302,8 +295,6 @@ private GetApplicationResult( ImmutableArray appRoles, - string applicationId, - string clientId, string description, @@ -367,7 +358,6 @@ private GetApplicationResult( Apis = apis; AppRoleIds = appRoleIds; AppRoles = appRoles; - ApplicationId = applicationId; ClientId = clientId; Description = description; DeviceOnlyAuthEnabled = deviceOnlyAuthEnabled; diff --git a/sdk/dotnet/GetServicePrincipal.cs b/sdk/dotnet/GetServicePrincipal.cs index b45e4afc5..6f4595cc3 100644 --- a/sdk/dotnet/GetServicePrincipal.cs +++ b/sdk/dotnet/GetServicePrincipal.cs @@ -155,9 +155,6 @@ public static Output Invoke(GetServicePrincipalInvoke public sealed class GetServicePrincipalArgs : global::Pulumi.InvokeArgs { - [Input("applicationId")] - public string? ApplicationId { get; set; } - /// /// The client ID of the application associated with this service principal. /// @@ -186,9 +183,6 @@ public GetServicePrincipalArgs() public sealed class GetServicePrincipalInvokeArgs : global::Pulumi.InvokeArgs { - [Input("applicationId")] - public Input? ApplicationId { get; set; } - /// /// The client ID of the application associated with this service principal. /// @@ -239,7 +233,6 @@ public sealed class GetServicePrincipalResult /// A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). /// public readonly ImmutableArray AppRoles; - public readonly string ApplicationId; /// /// The tenant ID where the associated application is registered. /// @@ -342,8 +335,6 @@ private GetServicePrincipalResult( ImmutableArray appRoles, - string applicationId, - string applicationTenantId, string clientId, @@ -395,7 +386,6 @@ private GetServicePrincipalResult( AppRoleAssignmentRequired = appRoleAssignmentRequired; AppRoleIds = appRoleIds; AppRoles = appRoles; - ApplicationId = applicationId; ApplicationTenantId = applicationTenantId; ClientId = clientId; Description = description; diff --git a/sdk/dotnet/GetServicePrincipals.cs b/sdk/dotnet/GetServicePrincipals.cs index 8a9ad6c8b..e8ab1e339 100644 --- a/sdk/dotnet/GetServicePrincipals.cs +++ b/sdk/dotnet/GetServicePrincipals.cs @@ -183,19 +183,6 @@ public static Output Invoke(GetServicePrincipalsInvo public sealed class GetServicePrincipalsArgs : global::Pulumi.InvokeArgs { - [Input("applicationIds")] - private List? _applicationIds; - - /// - /// A list of client IDs of the applications associated with the service principals. - /// - [Obsolete(@"The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider")] - public List ApplicationIds - { - get => _applicationIds ?? (_applicationIds = new List()); - set => _applicationIds = value; - } - [Input("clientIds")] private List? _clientIds; @@ -254,19 +241,6 @@ public GetServicePrincipalsArgs() public sealed class GetServicePrincipalsInvokeArgs : global::Pulumi.InvokeArgs { - [Input("applicationIds")] - private InputList? _applicationIds; - - /// - /// A list of client IDs of the applications associated with the service principals. - /// - [Obsolete(@"The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider")] - public InputList ApplicationIds - { - get => _applicationIds ?? (_applicationIds = new InputList()); - set => _applicationIds = value; - } - [Input("clientIds")] private InputList? _clientIds; @@ -327,10 +301,6 @@ public GetServicePrincipalsInvokeArgs() [OutputType] public sealed class GetServicePrincipalsResult { - /// - /// A list of client IDs of the applications associated with the service principals. - /// - public readonly ImmutableArray ApplicationIds; /// /// The client ID of the application associated with this service principal. /// @@ -356,8 +326,6 @@ public sealed class GetServicePrincipalsResult [OutputConstructor] private GetServicePrincipalsResult( - ImmutableArray applicationIds, - ImmutableArray clientIds, ImmutableArray displayNames, @@ -372,7 +340,6 @@ private GetServicePrincipalsResult( ImmutableArray servicePrincipals) { - ApplicationIds = applicationIds; ClientIds = clientIds; DisplayNames = displayNames; Id = id; diff --git a/sdk/dotnet/Inputs/ApplicationApiArgs.cs b/sdk/dotnet/Inputs/ApplicationApiArgs.cs index 6bc00974d..dec584b77 100644 --- a/sdk/dotnet/Inputs/ApplicationApiArgs.cs +++ b/sdk/dotnet/Inputs/ApplicationApiArgs.cs @@ -16,7 +16,7 @@ public sealed class ApplicationApiArgs : global::Pulumi.ResourceArgs private InputList? _knownClientApplications; /// - /// A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + /// A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. /// public InputList KnownClientApplications { diff --git a/sdk/dotnet/Inputs/ApplicationApiGetArgs.cs b/sdk/dotnet/Inputs/ApplicationApiGetArgs.cs index a6a79379b..4448d5f59 100644 --- a/sdk/dotnet/Inputs/ApplicationApiGetArgs.cs +++ b/sdk/dotnet/Inputs/ApplicationApiGetArgs.cs @@ -16,7 +16,7 @@ public sealed class ApplicationApiGetArgs : global::Pulumi.ResourceArgs private InputList? _knownClientApplications; /// - /// A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + /// A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. /// public InputList KnownClientApplications { diff --git a/sdk/dotnet/Outputs/ApplicationApi.cs b/sdk/dotnet/Outputs/ApplicationApi.cs index 775b72a7e..f5cae3c52 100644 --- a/sdk/dotnet/Outputs/ApplicationApi.cs +++ b/sdk/dotnet/Outputs/ApplicationApi.cs @@ -14,7 +14,7 @@ namespace Pulumi.AzureAD.Outputs public sealed class ApplicationApi { /// - /// A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + /// A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. /// public readonly ImmutableArray KnownClientApplications; /// diff --git a/sdk/dotnet/Outputs/GetServicePrincipalsServicePrincipalResult.cs b/sdk/dotnet/Outputs/GetServicePrincipalsServicePrincipalResult.cs index f19588b64..f5a9b51b5 100644 --- a/sdk/dotnet/Outputs/GetServicePrincipalsServicePrincipalResult.cs +++ b/sdk/dotnet/Outputs/GetServicePrincipalsServicePrincipalResult.cs @@ -22,10 +22,6 @@ public sealed class GetServicePrincipalsServicePrincipalResult /// public readonly bool AppRoleAssignmentRequired; /// - /// The application ID (client ID) for the associated application - /// - public readonly string ApplicationId; - /// /// The tenant ID where the associated application is registered. /// public readonly string ApplicationTenantId; @@ -72,8 +68,6 @@ private GetServicePrincipalsServicePrincipalResult( bool appRoleAssignmentRequired, - string applicationId, - string applicationTenantId, string clientId, @@ -96,7 +90,6 @@ private GetServicePrincipalsServicePrincipalResult( { AccountEnabled = accountEnabled; AppRoleAssignmentRequired = appRoleAssignmentRequired; - ApplicationId = applicationId; ApplicationTenantId = applicationTenantId; ClientId = clientId; DisplayName = displayName; diff --git a/sdk/dotnet/Pulumi.AzureAD.csproj b/sdk/dotnet/Pulumi.AzureAD.csproj index 74d14ccc3..89f6150e4 100644 --- a/sdk/dotnet/Pulumi.AzureAD.csproj +++ b/sdk/dotnet/Pulumi.AzureAD.csproj @@ -9,7 +9,7 @@ https://pulumi.io https://github.com/pulumi/pulumi-azuread logo.png - 5.0.0-alpha.0+dev + 6.0.0-alpha.0+dev net6.0 enable diff --git a/sdk/dotnet/ServicePrincipal.cs b/sdk/dotnet/ServicePrincipal.cs index ee0daf32d..b159c0ee6 100644 --- a/sdk/dotnet/ServicePrincipal.cs +++ b/sdk/dotnet/ServicePrincipal.cs @@ -180,12 +180,6 @@ public partial class ServicePrincipal : global::Pulumi.CustomResource [Output("appRoles")] public Output> AppRoles { get; private set; } = null!; - /// - /// The application ID (client ID) of the application for which to create a service principal - /// - [Output("applicationId")] - public Output ApplicationId { get; private set; } = null!; - /// /// The tenant ID where the associated application is registered. /// @@ -342,7 +336,7 @@ public partial class ServicePrincipal : global::Pulumi.CustomResource /// The unique name of the resource /// The arguments used to populate this resource's properties /// A bag of options that control this resource's behavior - public ServicePrincipal(string name, ServicePrincipalArgs? args = null, CustomResourceOptions? options = null) + public ServicePrincipal(string name, ServicePrincipalArgs args, CustomResourceOptions? options = null) : base("azuread:index/servicePrincipal:ServicePrincipal", name, args ?? new ServicePrincipalArgs(), MakeResourceOptions(options, "")) { } @@ -404,17 +398,11 @@ public InputList AlternativeNames [Input("appRoleAssignmentRequired")] public Input? AppRoleAssignmentRequired { get; set; } - /// - /// The application ID (client ID) of the application for which to create a service principal - /// - [Input("applicationId")] - public Input? ApplicationId { get; set; } - /// /// The client ID of the application for which to create a service principal. /// - [Input("clientId")] - public Input? ClientId { get; set; } + [Input("clientId", required: true)] + public Input ClientId { get; set; } = null!; /// /// A description of the service principal provided for internal end-users. @@ -573,12 +561,6 @@ public InputList AppRoles set => _appRoles = value; } - /// - /// The application ID (client ID) of the application for which to create a service principal - /// - [Input("applicationId")] - public Input? ApplicationId { get; set; } - /// /// The tenant ID where the associated application is registered. /// diff --git a/sdk/dotnet/ServicePrincipalCertificate.cs b/sdk/dotnet/ServicePrincipalCertificate.cs index c1e62c0e1..46d4376dd 100644 --- a/sdk/dotnet/ServicePrincipalCertificate.cs +++ b/sdk/dotnet/ServicePrincipalCertificate.cs @@ -30,7 +30,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() /// { - /// ApplicationId = example.ApplicationId, + /// ClientId = example.ClientId, /// }); /// /// var exampleServicePrincipalCertificate = new AzureAD.ServicePrincipalCertificate("example", new() @@ -65,7 +65,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() /// { - /// ApplicationId = example.ApplicationId, + /// ClientId = example.ClientId, /// }); /// /// var exampleServicePrincipalCertificate = new AzureAD.ServicePrincipalCertificate("example", new() @@ -128,7 +128,7 @@ public partial class ServicePrincipalCertificate : global::Pulumi.CustomResource public Output KeyId { get; private set; } = null!; /// - /// The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. /// [Output("servicePrincipalId")] public Output ServicePrincipalId { get; private set; } = null!; @@ -230,7 +230,7 @@ public sealed class ServicePrincipalCertificateArgs : global::Pulumi.ResourceArg public Input? KeyId { get; set; } /// - /// The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId", required: true)] public Input ServicePrincipalId { get; set; } = null!; @@ -300,7 +300,7 @@ public sealed class ServicePrincipalCertificateState : global::Pulumi.ResourceAr public Input? KeyId { get; set; } /// - /// The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId")] public Input? ServicePrincipalId { get; set; } diff --git a/sdk/dotnet/ServicePrincipalClaimsMappingPolicyAssignment.cs b/sdk/dotnet/ServicePrincipalClaimsMappingPolicyAssignment.cs index 5d90a2543..46b47dcb1 100644 --- a/sdk/dotnet/ServicePrincipalClaimsMappingPolicyAssignment.cs +++ b/sdk/dotnet/ServicePrincipalClaimsMappingPolicyAssignment.cs @@ -57,7 +57,7 @@ public partial class ServicePrincipalClaimsMappingPolicyAssignment : global::Pul public Output ClaimsMappingPolicyId { get; private set; } = null!; /// - /// The object ID of the service principal for the policy assignment. + /// The ID of the service principal for the policy assignment. /// [Output("servicePrincipalId")] public Output ServicePrincipalId { get; private set; } = null!; @@ -115,7 +115,7 @@ public sealed class ServicePrincipalClaimsMappingPolicyAssignmentArgs : global:: public Input ClaimsMappingPolicyId { get; set; } = null!; /// - /// The object ID of the service principal for the policy assignment. + /// The ID of the service principal for the policy assignment. /// [Input("servicePrincipalId", required: true)] public Input ServicePrincipalId { get; set; } = null!; @@ -135,7 +135,7 @@ public sealed class ServicePrincipalClaimsMappingPolicyAssignmentState : global: public Input? ClaimsMappingPolicyId { get; set; } /// - /// The object ID of the service principal for the policy assignment. + /// The ID of the service principal for the policy assignment. /// [Input("servicePrincipalId")] public Input? ServicePrincipalId { get; set; } diff --git a/sdk/dotnet/ServicePrincipalDelegatedPermissionGrant.cs b/sdk/dotnet/ServicePrincipalDelegatedPermissionGrant.cs index 55e2c63ca..064f30d99 100644 --- a/sdk/dotnet/ServicePrincipalDelegatedPermissionGrant.cs +++ b/sdk/dotnet/ServicePrincipalDelegatedPermissionGrant.cs @@ -67,7 +67,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() /// { - /// ClientId = example.ApplicationId, + /// ClientId = example.ClientId, /// }); /// /// var exampleServicePrincipalDelegatedPermissionGrant = new AzureAD.ServicePrincipalDelegatedPermissionGrant("example", new() @@ -129,7 +129,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() /// { - /// ClientId = example.ApplicationId, + /// ClientId = example.ClientId, /// }); /// /// var exampleUser = new AzureAD.User("example", new() diff --git a/sdk/dotnet/ServicePrincipalPassword.cs b/sdk/dotnet/ServicePrincipalPassword.cs index 9bedbfb26..bf2e67139 100644 --- a/sdk/dotnet/ServicePrincipalPassword.cs +++ b/sdk/dotnet/ServicePrincipalPassword.cs @@ -34,7 +34,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipalPassword = new AzureAD.ServicePrincipalPassword("example", new() /// { - /// ServicePrincipalId = exampleServicePrincipal.ObjectId, + /// ServicePrincipalId = exampleServicePrincipal.Id, /// }); /// /// }); @@ -68,7 +68,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipalPassword = new AzureAD.ServicePrincipalPassword("example", new() /// { - /// ServicePrincipalId = exampleServicePrincipal.ObjectId, + /// ServicePrincipalId = exampleServicePrincipal.Id, /// RotateWhenChanged = /// { /// { "rotation", exampleRotating.Id }, @@ -116,7 +116,7 @@ public partial class ServicePrincipalPassword : global::Pulumi.CustomResource public Output?> RotateWhenChanged { get; private set; } = null!; /// - /// The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. /// [Output("servicePrincipalId")] public Output ServicePrincipalId { get; private set; } = null!; @@ -214,7 +214,7 @@ public InputMap RotateWhenChanged } /// - /// The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId", required: true)] public Input ServicePrincipalId { get; set; } = null!; @@ -270,7 +270,7 @@ public InputMap RotateWhenChanged } /// - /// The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId")] public Input? ServicePrincipalId { get; set; } diff --git a/sdk/dotnet/ServicePrincipalTokenSigningCertificate.cs b/sdk/dotnet/ServicePrincipalTokenSigningCertificate.cs index 1829503b9..e9290d438 100644 --- a/sdk/dotnet/ServicePrincipalTokenSigningCertificate.cs +++ b/sdk/dotnet/ServicePrincipalTokenSigningCertificate.cs @@ -29,7 +29,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() /// { - /// ClientId = example.ApplicationId, + /// ClientId = example.ClientId, /// }); /// /// var exampleServicePrincipalTokenSigningCertificate = new AzureAD.ServicePrincipalTokenSigningCertificate("example", new() @@ -57,7 +57,7 @@ namespace Pulumi.AzureAD /// /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() /// { - /// ClientId = example.ApplicationId, + /// ClientId = example.ClientId, /// }); /// /// var exampleServicePrincipalTokenSigningCertificate = new AzureAD.ServicePrincipalTokenSigningCertificate("example", new() @@ -104,7 +104,7 @@ public partial class ServicePrincipalTokenSigningCertificate : global::Pulumi.Cu public Output KeyId { get; private set; } = null!; /// - /// The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. /// [Output("servicePrincipalId")] public Output ServicePrincipalId { get; private set; } = null!; @@ -192,7 +192,7 @@ public sealed class ServicePrincipalTokenSigningCertificateArgs : global::Pulumi public Input? EndDate { get; set; } /// - /// The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId", required: true)] public Input ServicePrincipalId { get; set; } = null!; @@ -226,7 +226,7 @@ public sealed class ServicePrincipalTokenSigningCertificateState : global::Pulum public Input? KeyId { get; set; } /// - /// The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId")] public Input? ServicePrincipalId { get; set; } diff --git a/sdk/dotnet/SynchronizationJob.cs b/sdk/dotnet/SynchronizationJob.cs index a71101846..7470b342d 100644 --- a/sdk/dotnet/SynchronizationJob.cs +++ b/sdk/dotnet/SynchronizationJob.cs @@ -35,29 +35,20 @@ namespace Pulumi.AzureAD /// DisplayName = "Azure Databricks SCIM Provisioning Connector", /// }); /// - /// var exampleApplication = new AzureAD.Application("example", new() + /// var exampleApplicationFromTemplate = new AzureAD.ApplicationFromTemplate("example", new() /// { /// DisplayName = "example", /// TemplateId = example.Apply(getApplicationTemplateResult => getApplicationTemplateResult.TemplateId), - /// FeatureTags = new[] - /// { - /// new AzureAD.Inputs.ApplicationFeatureTagArgs - /// { - /// Enterprise = true, - /// Gallery = true, - /// }, - /// }, /// }); /// - /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() + /// var exampleGetServicePrincipal = AzureAD.GetServicePrincipal.Invoke(new() /// { - /// ClientId = exampleApplication.ApplicationId, - /// UseExisting = true, + /// ObjectId = exampleApplicationFromTemplate.ServicePrincipalObjectId, /// }); /// /// var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret("example", new() /// { - /// ServicePrincipalId = exampleServicePrincipal.Id, + /// ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult => getServicePrincipalResult.Id), /// Credentials = new[] /// { /// new AzureAD.Inputs.SynchronizationSecretCredentialArgs @@ -75,7 +66,7 @@ namespace Pulumi.AzureAD /// /// var exampleSynchronizationJob = new AzureAD.SynchronizationJob("example", new() /// { - /// ServicePrincipalId = exampleServicePrincipal.Id, + /// ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult => getServicePrincipalResult.Id), /// TemplateId = "dataBricks", /// Enabled = true, /// }); @@ -97,7 +88,7 @@ namespace Pulumi.AzureAD public partial class SynchronizationJob : global::Pulumi.CustomResource { /// - /// Whether or not the provisioning job is enabled. Default state is `true`. + /// Whether the provisioning job is enabled. Default state is `true`. /// [Output("enabled")] public Output Enabled { get; private set; } = null!; @@ -109,7 +100,7 @@ public partial class SynchronizationJob : global::Pulumi.CustomResource public Output> Schedules { get; private set; } = null!; /// - /// The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. /// [Output("servicePrincipalId")] public Output ServicePrincipalId { get; private set; } = null!; @@ -167,13 +158,13 @@ public static SynchronizationJob Get(string name, Input id, Synchronizat public sealed class SynchronizationJobArgs : global::Pulumi.ResourceArgs { /// - /// Whether or not the provisioning job is enabled. Default state is `true`. + /// Whether the provisioning job is enabled. Default state is `true`. /// [Input("enabled")] public Input? Enabled { get; set; } /// - /// The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId", required: true)] public Input ServicePrincipalId { get; set; } = null!; @@ -193,7 +184,7 @@ public SynchronizationJobArgs() public sealed class SynchronizationJobState : global::Pulumi.ResourceArgs { /// - /// Whether or not the provisioning job is enabled. Default state is `true`. + /// Whether the provisioning job is enabled. Default state is `true`. /// [Input("enabled")] public Input? Enabled { get; set; } @@ -211,7 +202,7 @@ public InputList Schedules } /// - /// The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId")] public Input? ServicePrincipalId { get; set; } diff --git a/sdk/dotnet/SynchronizationJobProvisionOnDemand.cs b/sdk/dotnet/SynchronizationJobProvisionOnDemand.cs index 42a00e60b..658862f99 100644 --- a/sdk/dotnet/SynchronizationJobProvisionOnDemand.cs +++ b/sdk/dotnet/SynchronizationJobProvisionOnDemand.cs @@ -47,29 +47,20 @@ namespace Pulumi.AzureAD /// DisplayName = "Azure Databricks SCIM Provisioning Connector", /// }); /// - /// var exampleApplication = new AzureAD.Application("example", new() + /// var exampleApplicationFromTemplate = new AzureAD.ApplicationFromTemplate("example", new() /// { /// DisplayName = "example", /// TemplateId = example.Apply(getApplicationTemplateResult => getApplicationTemplateResult.TemplateId), - /// FeatureTags = new[] - /// { - /// new AzureAD.Inputs.ApplicationFeatureTagArgs - /// { - /// Enterprise = true, - /// Gallery = true, - /// }, - /// }, /// }); /// - /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() + /// var exampleGetServicePrincipal = AzureAD.GetServicePrincipal.Invoke(new() /// { - /// ClientId = exampleApplication.ClientId, - /// UseExisting = true, + /// ObjectId = exampleApplicationFromTemplate.ServicePrincipalObjectId, /// }); /// /// var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret("example", new() /// { - /// ServicePrincipalId = exampleServicePrincipal.Id, + /// ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult => getServicePrincipalResult.Id), /// Credentials = new[] /// { /// new AzureAD.Inputs.SynchronizationSecretCredentialArgs @@ -87,14 +78,14 @@ namespace Pulumi.AzureAD /// /// var exampleSynchronizationJob = new AzureAD.SynchronizationJob("example", new() /// { - /// ServicePrincipalId = exampleServicePrincipal.Id, + /// ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult => getServicePrincipalResult.Id), /// TemplateId = "dataBricks", /// Enabled = true, /// }); /// /// var exampleSynchronizationJobProvisionOnDemand = new AzureAD.SynchronizationJobProvisionOnDemand("example", new() /// { - /// ServicePrincipalId = exampleServicePrincipal.Id, + /// ServicePrincipalId = exampleSynchronizationJob.ServicePrincipalId, /// SynchronizationJobId = exampleSynchronizationJob.Id, /// Parameters = new[] /// { @@ -130,13 +121,13 @@ public partial class SynchronizationJobProvisionOnDemand : global::Pulumi.Custom public Output> Parameters { get; private set; } = null!; /// - /// The object ID of the service principal for the synchronization job. + /// The ID of the service principal for the synchronization job. /// [Output("servicePrincipalId")] public Output ServicePrincipalId { get; private set; } = null!; /// - /// Identifier of the synchronization template this job is based on. + /// The ID of the synchronization job. /// [Output("synchronizationJobId")] public Output SynchronizationJobId { get; private set; } = null!; @@ -203,13 +194,13 @@ public InputList Parame } /// - /// The object ID of the service principal for the synchronization job. + /// The ID of the service principal for the synchronization job. /// [Input("servicePrincipalId", required: true)] public Input ServicePrincipalId { get; set; } = null!; /// - /// Identifier of the synchronization template this job is based on. + /// The ID of the synchronization job. /// [Input("synchronizationJobId", required: true)] public Input SynchronizationJobId { get; set; } = null!; @@ -243,13 +234,13 @@ public InputList Par } /// - /// The object ID of the service principal for the synchronization job. + /// The ID of the service principal for the synchronization job. /// [Input("servicePrincipalId")] public Input? ServicePrincipalId { get; set; } /// - /// Identifier of the synchronization template this job is based on. + /// The ID of the synchronization job. /// [Input("synchronizationJobId")] public Input? SynchronizationJobId { get; set; } diff --git a/sdk/dotnet/SynchronizationSecret.cs b/sdk/dotnet/SynchronizationSecret.cs index ed5a4597e..03c0e979a 100644 --- a/sdk/dotnet/SynchronizationSecret.cs +++ b/sdk/dotnet/SynchronizationSecret.cs @@ -35,29 +35,20 @@ namespace Pulumi.AzureAD /// DisplayName = "Azure Databricks SCIM Provisioning Connector", /// }); /// - /// var exampleApplication = new AzureAD.Application("example", new() + /// var exampleApplicationFromTemplate = new AzureAD.ApplicationFromTemplate("example", new() /// { /// DisplayName = "example", /// TemplateId = example.Apply(getApplicationTemplateResult => getApplicationTemplateResult.TemplateId), - /// FeatureTags = new[] - /// { - /// new AzureAD.Inputs.ApplicationFeatureTagArgs - /// { - /// Enterprise = true, - /// Gallery = true, - /// }, - /// }, /// }); /// - /// var exampleServicePrincipal = new AzureAD.ServicePrincipal("example", new() + /// var exampleGetServicePrincipal = AzureAD.GetServicePrincipal.Invoke(new() /// { - /// ClientId = exampleApplication.ApplicationId, - /// UseExisting = true, + /// ObjectId = exampleApplicationFromTemplate.ServicePrincipalObjectId, /// }); /// /// var exampleSynchronizationSecret = new AzureAD.SynchronizationSecret("example", new() /// { - /// ServicePrincipalId = exampleServicePrincipal.Id, + /// ServicePrincipalId = exampleGetServicePrincipal.Apply(getServicePrincipalResult => getServicePrincipalResult.Id), /// Credentials = new[] /// { /// new AzureAD.Inputs.SynchronizationSecretCredentialArgs @@ -90,7 +81,7 @@ public partial class SynchronizationSecret : global::Pulumi.CustomResource public Output> Credentials { get; private set; } = null!; /// - /// The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. /// [Output("servicePrincipalId")] public Output ServicePrincipalId { get; private set; } = null!; @@ -154,7 +145,7 @@ public InputList Credentials } /// - /// The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId", required: true)] public Input ServicePrincipalId { get; set; } = null!; @@ -180,7 +171,7 @@ public InputList Credentials } /// - /// The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + /// The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. /// [Input("servicePrincipalId")] public Input? ServicePrincipalId { get; set; } diff --git a/sdk/dotnet/pulumi-plugin.json b/sdk/dotnet/pulumi-plugin.json index 45a7ee76e..274f9055d 100644 --- a/sdk/dotnet/pulumi-plugin.json +++ b/sdk/dotnet/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "azuread", - "version": "5.0.0-alpha.0+dev" + "version": "6.0.0-alpha.0+dev" } diff --git a/sdk/go.mod b/sdk/go.mod index 5d58e4298..2824a9460 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -1,4 +1,4 @@ -module github.com/pulumi/pulumi-azuread/sdk/v5 +module github.com/pulumi/pulumi-azuread/sdk/v6 go 1.21 diff --git a/sdk/go/azuread/accessPackage.go b/sdk/go/azuread/accessPackage.go index 3961019df..5c6998886 100644 --- a/sdk/go/azuread/accessPackage.go +++ b/sdk/go/azuread/accessPackage.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/accessPackageAssignmentPolicy.go b/sdk/go/azuread/accessPackageAssignmentPolicy.go index feec3d26d..e9f74f7fb 100644 --- a/sdk/go/azuread/accessPackageAssignmentPolicy.go +++ b/sdk/go/azuread/accessPackageAssignmentPolicy.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/accessPackageCatalog.go b/sdk/go/azuread/accessPackageCatalog.go index 554dc407d..13019463c 100644 --- a/sdk/go/azuread/accessPackageCatalog.go +++ b/sdk/go/azuread/accessPackageCatalog.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/accessPackageCatalogRoleAssignment.go b/sdk/go/azuread/accessPackageCatalogRoleAssignment.go index fdde577ee..35e7fe346 100644 --- a/sdk/go/azuread/accessPackageCatalogRoleAssignment.go +++ b/sdk/go/azuread/accessPackageCatalogRoleAssignment.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/accessPackageResourceCatalogAssociation.go b/sdk/go/azuread/accessPackageResourceCatalogAssociation.go index c3c5b2c6f..655fbce30 100644 --- a/sdk/go/azuread/accessPackageResourceCatalogAssociation.go +++ b/sdk/go/azuread/accessPackageResourceCatalogAssociation.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/accessPackageResourcePackageAssociation.go b/sdk/go/azuread/accessPackageResourcePackageAssociation.go index 02f4c3547..4ffc51695 100644 --- a/sdk/go/azuread/accessPackageResourcePackageAssociation.go +++ b/sdk/go/azuread/accessPackageResourcePackageAssociation.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/administrativeUnit.go b/sdk/go/azuread/administrativeUnit.go index 92b7aaee9..70d5a6a1a 100644 --- a/sdk/go/azuread/administrativeUnit.go +++ b/sdk/go/azuread/administrativeUnit.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/administrativeUnitMember.go b/sdk/go/azuread/administrativeUnitMember.go index a860774eb..95c4429f0 100644 --- a/sdk/go/azuread/administrativeUnitMember.go +++ b/sdk/go/azuread/administrativeUnitMember.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -30,7 +30,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/administrativeUnitRoleMember.go b/sdk/go/azuread/administrativeUnitRoleMember.go index 2e5f984df..e5c5355d8 100644 --- a/sdk/go/azuread/administrativeUnitRoleMember.go +++ b/sdk/go/azuread/administrativeUnitRoleMember.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/appRoleAssignment.go b/sdk/go/azuread/appRoleAssignment.go index 098b7c811..12ca5ac11 100644 --- a/sdk/go/azuread/appRoleAssignment.go +++ b/sdk/go/azuread/appRoleAssignment.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -75,7 +75,7 @@ import ( // return err // } // exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: example.ApplicationId, +// ClientId: example.ClientId, // }) // if err != nil { // return err @@ -103,7 +103,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -129,7 +129,7 @@ import ( // return err // } // internalServicePrincipal, err := azuread.NewServicePrincipal(ctx, "internal", &azuread.ServicePrincipalArgs{ -// ClientId: internal.ApplicationId, +// ClientId: internal.ClientId, // }) // if err != nil { // return err @@ -138,7 +138,7 @@ import ( // DisplayName: pulumi.String("example"), // RequiredResourceAccesses: azuread.ApplicationRequiredResourceAccessArray{ // &azuread.ApplicationRequiredResourceAccessArgs{ -// ResourceAppId: internal.ApplicationId, +// ResourceAppId: internal.ClientId, // ResourceAccesses: azuread.ApplicationRequiredResourceAccessResourceAccessArray{ // &azuread.ApplicationRequiredResourceAccessResourceAccessArgs{ // Id: internalServicePrincipal.AppRoleIds.ApplyT(func(appRoleIds map[string]string) (string, error) { @@ -154,7 +154,7 @@ import ( // return err // } // exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: example.ApplicationId, +// ClientId: example.ClientId, // }) // if err != nil { // return err diff --git a/sdk/go/azuread/application.go b/sdk/go/azuread/application.go index 8699766e7..f4972b885 100644 --- a/sdk/go/azuread/application.go +++ b/sdk/go/azuread/application.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -21,7 +21,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-std/sdk/go/std" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -53,8 +53,8 @@ import ( // MappedClaimsEnabled: pulumi.Bool(true), // RequestedAccessTokenVersion: pulumi.Int(2), // KnownClientApplications: pulumi.StringArray{ -// known1.ApplicationId, -// known2.ApplicationId, +// known1.ClientId, +// known2.ClientId, // }, // Oauth2PermissionScopes: azuread.ApplicationApiOauth2PermissionScopeArray{ // &azuread.ApplicationApiOauth2PermissionScopeArgs{ @@ -194,10 +194,6 @@ type Application struct { AppRoleIds pulumi.StringMapOutput `pulumi:"appRoleIds"` // A collection of `appRole` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). AppRoles ApplicationAppRoleTypeArrayOutput `pulumi:"appRoles"` - // The Application ID (also called Client ID) - // - // Deprecated: The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider - ApplicationId pulumi.StringOutput `pulumi:"applicationId"` // The Client ID for the application. ClientId pulumi.StringOutput `pulumi:"clientId"` // A description of the application, as shown to end users. @@ -315,10 +311,6 @@ type applicationState struct { AppRoleIds map[string]string `pulumi:"appRoleIds"` // A collection of `appRole` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). AppRoles []ApplicationAppRoleType `pulumi:"appRoles"` - // The Application ID (also called Client ID) - // - // Deprecated: The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider - ApplicationId *string `pulumi:"applicationId"` // The Client ID for the application. ClientId *string `pulumi:"clientId"` // A description of the application, as shown to end users. @@ -404,10 +396,6 @@ type ApplicationState struct { AppRoleIds pulumi.StringMapInput // A collection of `appRole` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). AppRoles ApplicationAppRoleTypeArrayInput - // The Application ID (also called Client ID) - // - // Deprecated: The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider - ApplicationId pulumi.StringPtrInput // The Client ID for the application. ClientId pulumi.StringPtrInput // A description of the application, as shown to end users. @@ -735,13 +723,6 @@ func (o ApplicationOutput) AppRoles() ApplicationAppRoleTypeArrayOutput { return o.ApplyT(func(v *Application) ApplicationAppRoleTypeArrayOutput { return v.AppRoles }).(ApplicationAppRoleTypeArrayOutput) } -// The Application ID (also called Client ID) -// -// Deprecated: The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider -func (o ApplicationOutput) ApplicationId() pulumi.StringOutput { - return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) -} - // The Client ID for the application. func (o ApplicationOutput) ClientId() pulumi.StringOutput { return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.ClientId }).(pulumi.StringOutput) diff --git a/sdk/go/azuread/applicationApiAccess.go b/sdk/go/azuread/applicationApiAccess.go index cadb2efbd..1a483e40e 100644 --- a/sdk/go/azuread/applicationApiAccess.go +++ b/sdk/go/azuread/applicationApiAccess.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -71,7 +71,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationAppRole.go b/sdk/go/azuread/applicationAppRole.go index 9eb317bf9..2b97b05f3 100644 --- a/sdk/go/azuread/applicationAppRole.go +++ b/sdk/go/azuread/applicationAppRole.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-random/sdk/v4/go/random" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -65,7 +65,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationCertificate.go b/sdk/go/azuread/applicationCertificate.go index 938bbc70d..83d951a25 100644 --- a/sdk/go/azuread/applicationCertificate.go +++ b/sdk/go/azuread/applicationCertificate.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -21,7 +21,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-std/sdk/go/std" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -63,7 +63,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-std/sdk/go/std" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -110,8 +110,8 @@ import ( // // "fmt" // -// "github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault" -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azure/sdk/v6/go/azure/keyvault" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -209,10 +209,6 @@ type ApplicationCertificate struct { // The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. ApplicationId pulumi.StringOutput `pulumi:"applicationId"` - // The object ID of the application for which this certificate should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringOutput `pulumi:"applicationObjectId"` // Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. // // > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurermKeyVaultCertificate resource. @@ -222,6 +218,8 @@ type ApplicationCertificate struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrOutput `pulumi:"endDateRelative"` // A UUID used to uniquely identify this certificate. If omitted, a random UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId pulumi.StringOutput `pulumi:"keyId"` @@ -240,6 +238,9 @@ func NewApplicationCertificate(ctx *pulumi.Context, return nil, errors.New("missing one or more required arguments") } + if args.ApplicationId == nil { + return nil, errors.New("invalid value for required argument 'ApplicationId'") + } if args.Value == nil { return nil, errors.New("invalid value for required argument 'Value'") } @@ -275,10 +276,6 @@ func GetApplicationCertificate(ctx *pulumi.Context, type applicationCertificateState struct { // The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. ApplicationId *string `pulumi:"applicationId"` - // The object ID of the application for which this certificate should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId *string `pulumi:"applicationObjectId"` // Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. // // > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurermKeyVaultCertificate resource. @@ -288,6 +285,8 @@ type applicationCertificateState struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative *string `pulumi:"endDateRelative"` // A UUID used to uniquely identify this certificate. If omitted, a random UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId *string `pulumi:"keyId"` @@ -302,10 +301,6 @@ type applicationCertificateState struct { type ApplicationCertificateState struct { // The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. ApplicationId pulumi.StringPtrInput - // The object ID of the application for which this certificate should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringPtrInput // Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. // // > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurermKeyVaultCertificate resource. @@ -315,6 +310,8 @@ type ApplicationCertificateState struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrInput // A UUID used to uniquely identify this certificate. If omitted, a random UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId pulumi.StringPtrInput @@ -332,11 +329,7 @@ func (ApplicationCertificateState) ElementType() reflect.Type { type applicationCertificateArgs struct { // The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. - ApplicationId *string `pulumi:"applicationId"` - // The object ID of the application for which this certificate should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId *string `pulumi:"applicationObjectId"` + ApplicationId string `pulumi:"applicationId"` // Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. // // > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurermKeyVaultCertificate resource. @@ -346,6 +339,8 @@ type applicationCertificateArgs struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative *string `pulumi:"endDateRelative"` // A UUID used to uniquely identify this certificate. If omitted, a random UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId *string `pulumi:"keyId"` @@ -360,11 +355,7 @@ type applicationCertificateArgs struct { // The set of arguments for constructing a ApplicationCertificate resource. type ApplicationCertificateArgs struct { // The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. - ApplicationId pulumi.StringPtrInput - // The object ID of the application for which this certificate should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringPtrInput + ApplicationId pulumi.StringInput // Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. // // > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurermKeyVaultCertificate resource. @@ -374,6 +365,8 @@ type ApplicationCertificateArgs struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrInput // A UUID used to uniquely identify this certificate. If omitted, a random UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId pulumi.StringPtrInput @@ -477,13 +470,6 @@ func (o ApplicationCertificateOutput) ApplicationId() pulumi.StringOutput { return o.ApplyT(func(v *ApplicationCertificate) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) } -// The object ID of the application for which this certificate should be created -// -// Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider -func (o ApplicationCertificateOutput) ApplicationObjectId() pulumi.StringOutput { - return o.ApplyT(func(v *ApplicationCertificate) pulumi.StringOutput { return v.ApplicationObjectId }).(pulumi.StringOutput) -} - // Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. // // > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurermKeyVaultCertificate resource. @@ -499,6 +485,8 @@ func (o ApplicationCertificateOutput) EndDate() pulumi.StringOutput { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. +// +// Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. func (o ApplicationCertificateOutput) EndDateRelative() pulumi.StringPtrOutput { return o.ApplyT(func(v *ApplicationCertificate) pulumi.StringPtrOutput { return v.EndDateRelative }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/azuread/applicationFallbackPublicClient.go b/sdk/go/azuread/applicationFallbackPublicClient.go index 5b4751a2f..fffa79b61 100644 --- a/sdk/go/azuread/applicationFallbackPublicClient.go +++ b/sdk/go/azuread/applicationFallbackPublicClient.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationFederatedIdentityCredential.go b/sdk/go/azuread/applicationFederatedIdentityCredential.go index 4eeeaf870..1e0cb4785 100644 --- a/sdk/go/azuread/applicationFederatedIdentityCredential.go +++ b/sdk/go/azuread/applicationFederatedIdentityCredential.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -65,10 +65,6 @@ type ApplicationFederatedIdentityCredential struct { // The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. ApplicationId pulumi.StringOutput `pulumi:"applicationId"` - // The object ID of the application for which this federated identity credential should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringOutput `pulumi:"applicationObjectId"` // List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. Audiences pulumi.StringArrayOutput `pulumi:"audiences"` // A UUID used to uniquely identify this federated identity credential. @@ -90,6 +86,9 @@ func NewApplicationFederatedIdentityCredential(ctx *pulumi.Context, return nil, errors.New("missing one or more required arguments") } + if args.ApplicationId == nil { + return nil, errors.New("invalid value for required argument 'ApplicationId'") + } if args.Audiences == nil { return nil, errors.New("invalid value for required argument 'Audiences'") } @@ -127,10 +126,6 @@ func GetApplicationFederatedIdentityCredential(ctx *pulumi.Context, type applicationFederatedIdentityCredentialState struct { // The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. ApplicationId *string `pulumi:"applicationId"` - // The object ID of the application for which this federated identity credential should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId *string `pulumi:"applicationObjectId"` // List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. Audiences []string `pulumi:"audiences"` // A UUID used to uniquely identify this federated identity credential. @@ -148,10 +143,6 @@ type applicationFederatedIdentityCredentialState struct { type ApplicationFederatedIdentityCredentialState struct { // The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. ApplicationId pulumi.StringPtrInput - // The object ID of the application for which this federated identity credential should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringPtrInput // List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. Audiences pulumi.StringArrayInput // A UUID used to uniquely identify this federated identity credential. @@ -172,11 +163,7 @@ func (ApplicationFederatedIdentityCredentialState) ElementType() reflect.Type { type applicationFederatedIdentityCredentialArgs struct { // The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. - ApplicationId *string `pulumi:"applicationId"` - // The object ID of the application for which this federated identity credential should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId *string `pulumi:"applicationObjectId"` + ApplicationId string `pulumi:"applicationId"` // List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. Audiences []string `pulumi:"audiences"` // A description for the federated identity credential. @@ -192,11 +179,7 @@ type applicationFederatedIdentityCredentialArgs struct { // The set of arguments for constructing a ApplicationFederatedIdentityCredential resource. type ApplicationFederatedIdentityCredentialArgs struct { // The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. - ApplicationId pulumi.StringPtrInput - // The object ID of the application for which this federated identity credential should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringPtrInput + ApplicationId pulumi.StringInput // List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. Audiences pulumi.StringArrayInput // A description for the federated identity credential. @@ -301,13 +284,6 @@ func (o ApplicationFederatedIdentityCredentialOutput) ApplicationId() pulumi.Str return o.ApplyT(func(v *ApplicationFederatedIdentityCredential) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) } -// The object ID of the application for which this federated identity credential should be created -// -// Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider -func (o ApplicationFederatedIdentityCredentialOutput) ApplicationObjectId() pulumi.StringOutput { - return o.ApplyT(func(v *ApplicationFederatedIdentityCredential) pulumi.StringOutput { return v.ApplicationObjectId }).(pulumi.StringOutput) -} - // List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. func (o ApplicationFederatedIdentityCredentialOutput) Audiences() pulumi.StringArrayOutput { return o.ApplyT(func(v *ApplicationFederatedIdentityCredential) pulumi.StringArrayOutput { return v.Audiences }).(pulumi.StringArrayOutput) diff --git a/sdk/go/azuread/applicationFromTemplate.go b/sdk/go/azuread/applicationFromTemplate.go index 4b23a42c5..0fda8ce2e 100644 --- a/sdk/go/azuread/applicationFromTemplate.go +++ b/sdk/go/azuread/applicationFromTemplate.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationIdentifierUri.go b/sdk/go/azuread/applicationIdentifierUri.go index 5eddb0a88..0ab0da23e 100644 --- a/sdk/go/azuread/applicationIdentifierUri.go +++ b/sdk/go/azuread/applicationIdentifierUri.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -54,7 +54,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationKnownClients.go b/sdk/go/azuread/applicationKnownClients.go index 24f8d31f9..4e6ffc92f 100644 --- a/sdk/go/azuread/applicationKnownClients.go +++ b/sdk/go/azuread/applicationKnownClients.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationOptionalClaims.go b/sdk/go/azuread/applicationOptionalClaims.go index 0627efee9..a6baf4542 100644 --- a/sdk/go/azuread/applicationOptionalClaims.go +++ b/sdk/go/azuread/applicationOptionalClaims.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationOwner.go b/sdk/go/azuread/applicationOwner.go index d55e3a9c6..812083479 100644 --- a/sdk/go/azuread/applicationOwner.go +++ b/sdk/go/azuread/applicationOwner.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationPassword.go b/sdk/go/azuread/applicationPassword.go index 0c2076245..8aad9154e 100644 --- a/sdk/go/azuread/applicationPassword.go +++ b/sdk/go/azuread/applicationPassword.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "errors" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -20,7 +21,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -52,7 +53,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-time/sdk/go/time" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -95,15 +96,13 @@ type ApplicationPassword struct { // The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. ApplicationId pulumi.StringOutput `pulumi:"applicationId"` - // The object ID of the application for which this password should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringOutput `pulumi:"applicationObjectId"` // A display name for the password. Changing this field forces a new resource to be created. DisplayName pulumi.StringOutput `pulumi:"displayName"` // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate pulumi.StringOutput `pulumi:"endDate"` // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrOutput `pulumi:"endDateRelative"` // A UUID used to uniquely identify this password credential. KeyId pulumi.StringOutput `pulumi:"keyId"` @@ -119,9 +118,12 @@ type ApplicationPassword struct { func NewApplicationPassword(ctx *pulumi.Context, name string, args *ApplicationPasswordArgs, opts ...pulumi.ResourceOption) (*ApplicationPassword, error) { if args == nil { - args = &ApplicationPasswordArgs{} + return nil, errors.New("missing one or more required arguments") } + if args.ApplicationId == nil { + return nil, errors.New("invalid value for required argument 'ApplicationId'") + } secrets := pulumi.AdditionalSecretOutputs([]string{ "value", }) @@ -151,15 +153,13 @@ func GetApplicationPassword(ctx *pulumi.Context, type applicationPasswordState struct { // The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. ApplicationId *string `pulumi:"applicationId"` - // The object ID of the application for which this password should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId *string `pulumi:"applicationObjectId"` // A display name for the password. Changing this field forces a new resource to be created. DisplayName *string `pulumi:"displayName"` // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate *string `pulumi:"endDate"` // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative *string `pulumi:"endDateRelative"` // A UUID used to uniquely identify this password credential. KeyId *string `pulumi:"keyId"` @@ -174,15 +174,13 @@ type applicationPasswordState struct { type ApplicationPasswordState struct { // The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. ApplicationId pulumi.StringPtrInput - // The object ID of the application for which this password should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringPtrInput // A display name for the password. Changing this field forces a new resource to be created. DisplayName pulumi.StringPtrInput // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate pulumi.StringPtrInput // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrInput // A UUID used to uniquely identify this password credential. KeyId pulumi.StringPtrInput @@ -200,16 +198,14 @@ func (ApplicationPasswordState) ElementType() reflect.Type { type applicationPasswordArgs struct { // The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. - ApplicationId *string `pulumi:"applicationId"` - // The object ID of the application for which this password should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId *string `pulumi:"applicationObjectId"` + ApplicationId string `pulumi:"applicationId"` // A display name for the password. Changing this field forces a new resource to be created. DisplayName *string `pulumi:"displayName"` // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate *string `pulumi:"endDate"` // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative *string `pulumi:"endDateRelative"` // A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. RotateWhenChanged map[string]string `pulumi:"rotateWhenChanged"` @@ -220,16 +216,14 @@ type applicationPasswordArgs struct { // The set of arguments for constructing a ApplicationPassword resource. type ApplicationPasswordArgs struct { // The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. - ApplicationId pulumi.StringPtrInput - // The object ID of the application for which this password should be created - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringPtrInput + ApplicationId pulumi.StringInput // A display name for the password. Changing this field forces a new resource to be created. DisplayName pulumi.StringPtrInput // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate pulumi.StringPtrInput // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrInput // A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. RotateWhenChanged pulumi.StringMapInput @@ -329,13 +323,6 @@ func (o ApplicationPasswordOutput) ApplicationId() pulumi.StringOutput { return o.ApplyT(func(v *ApplicationPassword) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) } -// The object ID of the application for which this password should be created -// -// Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider -func (o ApplicationPasswordOutput) ApplicationObjectId() pulumi.StringOutput { - return o.ApplyT(func(v *ApplicationPassword) pulumi.StringOutput { return v.ApplicationObjectId }).(pulumi.StringOutput) -} - // A display name for the password. Changing this field forces a new resource to be created. func (o ApplicationPasswordOutput) DisplayName() pulumi.StringOutput { return o.ApplyT(func(v *ApplicationPassword) pulumi.StringOutput { return v.DisplayName }).(pulumi.StringOutput) @@ -347,6 +334,8 @@ func (o ApplicationPasswordOutput) EndDate() pulumi.StringOutput { } // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. +// +// Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. func (o ApplicationPasswordOutput) EndDateRelative() pulumi.StringPtrOutput { return o.ApplyT(func(v *ApplicationPassword) pulumi.StringPtrOutput { return v.EndDateRelative }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/azuread/applicationPermissionScope.go b/sdk/go/azuread/applicationPermissionScope.go index 1168aa0bb..1c0d4ef72 100644 --- a/sdk/go/azuread/applicationPermissionScope.go +++ b/sdk/go/azuread/applicationPermissionScope.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-random/sdk/v4/go/random" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -62,7 +62,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationPreAuthorized.go b/sdk/go/azuread/applicationPreAuthorized.go index 588216e28..728ca1d45 100644 --- a/sdk/go/azuread/applicationPreAuthorized.go +++ b/sdk/go/azuread/applicationPreAuthorized.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -91,14 +91,6 @@ type ApplicationPreAuthorized struct { // The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. ApplicationId pulumi.StringOutput `pulumi:"applicationId"` - // The object ID of the application to which this pre-authorized application should be added - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringOutput `pulumi:"applicationObjectId"` - // The application ID of the pre-authorized application - // - // Deprecated: The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider - AuthorizedAppId pulumi.StringOutput `pulumi:"authorizedAppId"` // The client ID of the application being authorized. Changing this field forces a new resource to be created. AuthorizedClientId pulumi.StringOutput `pulumi:"authorizedClientId"` // A set of permission scope IDs required by the authorized application. @@ -112,6 +104,12 @@ func NewApplicationPreAuthorized(ctx *pulumi.Context, return nil, errors.New("missing one or more required arguments") } + if args.ApplicationId == nil { + return nil, errors.New("invalid value for required argument 'ApplicationId'") + } + if args.AuthorizedClientId == nil { + return nil, errors.New("invalid value for required argument 'AuthorizedClientId'") + } if args.PermissionIds == nil { return nil, errors.New("invalid value for required argument 'PermissionIds'") } @@ -140,14 +138,6 @@ func GetApplicationPreAuthorized(ctx *pulumi.Context, type applicationPreAuthorizedState struct { // The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. ApplicationId *string `pulumi:"applicationId"` - // The object ID of the application to which this pre-authorized application should be added - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId *string `pulumi:"applicationObjectId"` - // The application ID of the pre-authorized application - // - // Deprecated: The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider - AuthorizedAppId *string `pulumi:"authorizedAppId"` // The client ID of the application being authorized. Changing this field forces a new resource to be created. AuthorizedClientId *string `pulumi:"authorizedClientId"` // A set of permission scope IDs required by the authorized application. @@ -157,14 +147,6 @@ type applicationPreAuthorizedState struct { type ApplicationPreAuthorizedState struct { // The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. ApplicationId pulumi.StringPtrInput - // The object ID of the application to which this pre-authorized application should be added - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringPtrInput - // The application ID of the pre-authorized application - // - // Deprecated: The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider - AuthorizedAppId pulumi.StringPtrInput // The client ID of the application being authorized. Changing this field forces a new resource to be created. AuthorizedClientId pulumi.StringPtrInput // A set of permission scope IDs required by the authorized application. @@ -177,17 +159,9 @@ func (ApplicationPreAuthorizedState) ElementType() reflect.Type { type applicationPreAuthorizedArgs struct { // The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. - ApplicationId *string `pulumi:"applicationId"` - // The object ID of the application to which this pre-authorized application should be added - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId *string `pulumi:"applicationObjectId"` - // The application ID of the pre-authorized application - // - // Deprecated: The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider - AuthorizedAppId *string `pulumi:"authorizedAppId"` + ApplicationId string `pulumi:"applicationId"` // The client ID of the application being authorized. Changing this field forces a new resource to be created. - AuthorizedClientId *string `pulumi:"authorizedClientId"` + AuthorizedClientId string `pulumi:"authorizedClientId"` // A set of permission scope IDs required by the authorized application. PermissionIds []string `pulumi:"permissionIds"` } @@ -195,17 +169,9 @@ type applicationPreAuthorizedArgs struct { // The set of arguments for constructing a ApplicationPreAuthorized resource. type ApplicationPreAuthorizedArgs struct { // The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. - ApplicationId pulumi.StringPtrInput - // The object ID of the application to which this pre-authorized application should be added - // - // Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationObjectId pulumi.StringPtrInput - // The application ID of the pre-authorized application - // - // Deprecated: The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider - AuthorizedAppId pulumi.StringPtrInput + ApplicationId pulumi.StringInput // The client ID of the application being authorized. Changing this field forces a new resource to be created. - AuthorizedClientId pulumi.StringPtrInput + AuthorizedClientId pulumi.StringInput // A set of permission scope IDs required by the authorized application. PermissionIds pulumi.StringArrayInput } @@ -302,20 +268,6 @@ func (o ApplicationPreAuthorizedOutput) ApplicationId() pulumi.StringOutput { return o.ApplyT(func(v *ApplicationPreAuthorized) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) } -// The object ID of the application to which this pre-authorized application should be added -// -// Deprecated: The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider -func (o ApplicationPreAuthorizedOutput) ApplicationObjectId() pulumi.StringOutput { - return o.ApplyT(func(v *ApplicationPreAuthorized) pulumi.StringOutput { return v.ApplicationObjectId }).(pulumi.StringOutput) -} - -// The application ID of the pre-authorized application -// -// Deprecated: The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider -func (o ApplicationPreAuthorizedOutput) AuthorizedAppId() pulumi.StringOutput { - return o.ApplyT(func(v *ApplicationPreAuthorized) pulumi.StringOutput { return v.AuthorizedAppId }).(pulumi.StringOutput) -} - // The client ID of the application being authorized. Changing this field forces a new resource to be created. func (o ApplicationPreAuthorizedOutput) AuthorizedClientId() pulumi.StringOutput { return o.ApplyT(func(v *ApplicationPreAuthorized) pulumi.StringOutput { return v.AuthorizedClientId }).(pulumi.StringOutput) diff --git a/sdk/go/azuread/applicationRedirectUris.go b/sdk/go/azuread/applicationRedirectUris.go index 1eab0f33e..9786443fe 100644 --- a/sdk/go/azuread/applicationRedirectUris.go +++ b/sdk/go/azuread/applicationRedirectUris.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/applicationRegistration.go b/sdk/go/azuread/applicationRegistration.go index 37e398a82..ec1735bb8 100644 --- a/sdk/go/azuread/applicationRegistration.go +++ b/sdk/go/azuread/applicationRegistration.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/authenticationStrengthPolicy.go b/sdk/go/azuread/authenticationStrengthPolicy.go index 30cf21df4..e2166fdd7 100644 --- a/sdk/go/azuread/authenticationStrengthPolicy.go +++ b/sdk/go/azuread/authenticationStrengthPolicy.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/claimsMappingPolicy.go b/sdk/go/azuread/claimsMappingPolicy.go index d27ed3eba..ed4041800 100644 --- a/sdk/go/azuread/claimsMappingPolicy.go +++ b/sdk/go/azuread/claimsMappingPolicy.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // "encoding/json" // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/conditionalAccessPolicy.go b/sdk/go/azuread/conditionalAccessPolicy.go index 3f649b299..c2a663a46 100644 --- a/sdk/go/azuread/conditionalAccessPolicy.go +++ b/sdk/go/azuread/conditionalAccessPolicy.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -21,7 +21,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -108,7 +108,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -166,7 +166,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -235,6 +235,8 @@ type ConditionalAccessPolicy struct { DisplayName pulumi.StringOutput `pulumi:"displayName"` // A `grantControls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy. GrantControls ConditionalAccessPolicyGrantControlsPtrOutput `pulumi:"grantControls"` + // The object ID of the policy + ObjectId pulumi.StringOutput `pulumi:"objectId"` // A `sessionControls` block as documented below, which specifies the session controls that are enforced after sign-in. // // > Note: At least one of `grantControls` and/or `sessionControls` blocks must be specified. @@ -288,6 +290,8 @@ type conditionalAccessPolicyState struct { DisplayName *string `pulumi:"displayName"` // A `grantControls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy. GrantControls *ConditionalAccessPolicyGrantControls `pulumi:"grantControls"` + // The object ID of the policy + ObjectId *string `pulumi:"objectId"` // A `sessionControls` block as documented below, which specifies the session controls that are enforced after sign-in. // // > Note: At least one of `grantControls` and/or `sessionControls` blocks must be specified. @@ -303,6 +307,8 @@ type ConditionalAccessPolicyState struct { DisplayName pulumi.StringPtrInput // A `grantControls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy. GrantControls ConditionalAccessPolicyGrantControlsPtrInput + // The object ID of the policy + ObjectId pulumi.StringPtrInput // A `sessionControls` block as documented below, which specifies the session controls that are enforced after sign-in. // // > Note: At least one of `grantControls` and/or `sessionControls` blocks must be specified. @@ -448,6 +454,11 @@ func (o ConditionalAccessPolicyOutput) GrantControls() ConditionalAccessPolicyGr return o.ApplyT(func(v *ConditionalAccessPolicy) ConditionalAccessPolicyGrantControlsPtrOutput { return v.GrantControls }).(ConditionalAccessPolicyGrantControlsPtrOutput) } +// The object ID of the policy +func (o ConditionalAccessPolicyOutput) ObjectId() pulumi.StringOutput { + return o.ApplyT(func(v *ConditionalAccessPolicy) pulumi.StringOutput { return v.ObjectId }).(pulumi.StringOutput) +} + // A `sessionControls` block as documented below, which specifies the session controls that are enforced after sign-in. // // > Note: At least one of `grantControls` and/or `sessionControls` blocks must be specified. diff --git a/sdk/go/azuread/config/config.go b/sdk/go/azuread/config/config.go index 56c159f5e..11a76e5d3 100644 --- a/sdk/go/azuread/config/config.go +++ b/sdk/go/azuread/config/config.go @@ -4,7 +4,7 @@ package config import ( - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/pulumi/pulumi/sdk/v3/go/pulumi/config" ) diff --git a/sdk/go/azuread/customDirectoryRole.go b/sdk/go/azuread/customDirectoryRole.go index ac0d4143b..bb992d2aa 100644 --- a/sdk/go/azuread/customDirectoryRole.go +++ b/sdk/go/azuread/customDirectoryRole.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/directoryRole.go b/sdk/go/azuread/directoryRole.go index 5fbe0afb4..a49d810c7 100644 --- a/sdk/go/azuread/directoryRole.go +++ b/sdk/go/azuread/directoryRole.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -34,7 +34,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -60,7 +60,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/directoryRoleAssignment.go b/sdk/go/azuread/directoryRoleAssignment.go index e2b0fdae2..9e49028c7 100644 --- a/sdk/go/azuread/directoryRoleAssignment.go +++ b/sdk/go/azuread/directoryRoleAssignment.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -72,7 +72,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -128,14 +128,8 @@ type DirectoryRoleAssignment struct { // Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directoryScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. AppScopeId pulumi.StringOutput `pulumi:"appScopeId"` - // Identifier of the app-specific scope when the assignment scope is app-specific - // - // Deprecated: `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider - AppScopeObjectId pulumi.StringOutput `pulumi:"appScopeObjectId"` // Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. DirectoryScopeId pulumi.StringOutput `pulumi:"directoryScopeId"` - // Identifier of the directory object representing the scope of the assignment - DirectoryScopeObjectId pulumi.StringOutput `pulumi:"directoryScopeObjectId"` // The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. PrincipalObjectId pulumi.StringOutput `pulumi:"principalObjectId"` // The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. @@ -180,14 +174,8 @@ func GetDirectoryRoleAssignment(ctx *pulumi.Context, type directoryRoleAssignmentState struct { // Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directoryScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. AppScopeId *string `pulumi:"appScopeId"` - // Identifier of the app-specific scope when the assignment scope is app-specific - // - // Deprecated: `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider - AppScopeObjectId *string `pulumi:"appScopeObjectId"` // Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. DirectoryScopeId *string `pulumi:"directoryScopeId"` - // Identifier of the directory object representing the scope of the assignment - DirectoryScopeObjectId *string `pulumi:"directoryScopeObjectId"` // The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. PrincipalObjectId *string `pulumi:"principalObjectId"` // The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. @@ -197,14 +185,8 @@ type directoryRoleAssignmentState struct { type DirectoryRoleAssignmentState struct { // Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directoryScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. AppScopeId pulumi.StringPtrInput - // Identifier of the app-specific scope when the assignment scope is app-specific - // - // Deprecated: `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider - AppScopeObjectId pulumi.StringPtrInput // Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. DirectoryScopeId pulumi.StringPtrInput - // Identifier of the directory object representing the scope of the assignment - DirectoryScopeObjectId pulumi.StringPtrInput // The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. PrincipalObjectId pulumi.StringPtrInput // The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. @@ -218,14 +200,8 @@ func (DirectoryRoleAssignmentState) ElementType() reflect.Type { type directoryRoleAssignmentArgs struct { // Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directoryScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. AppScopeId *string `pulumi:"appScopeId"` - // Identifier of the app-specific scope when the assignment scope is app-specific - // - // Deprecated: `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider - AppScopeObjectId *string `pulumi:"appScopeObjectId"` // Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. DirectoryScopeId *string `pulumi:"directoryScopeId"` - // Identifier of the directory object representing the scope of the assignment - DirectoryScopeObjectId *string `pulumi:"directoryScopeObjectId"` // The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. PrincipalObjectId string `pulumi:"principalObjectId"` // The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. @@ -236,14 +212,8 @@ type directoryRoleAssignmentArgs struct { type DirectoryRoleAssignmentArgs struct { // Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directoryScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. AppScopeId pulumi.StringPtrInput - // Identifier of the app-specific scope when the assignment scope is app-specific - // - // Deprecated: `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider - AppScopeObjectId pulumi.StringPtrInput // Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. DirectoryScopeId pulumi.StringPtrInput - // Identifier of the directory object representing the scope of the assignment - DirectoryScopeObjectId pulumi.StringPtrInput // The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. PrincipalObjectId pulumi.StringInput // The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. @@ -342,23 +312,11 @@ func (o DirectoryRoleAssignmentOutput) AppScopeId() pulumi.StringOutput { return o.ApplyT(func(v *DirectoryRoleAssignment) pulumi.StringOutput { return v.AppScopeId }).(pulumi.StringOutput) } -// Identifier of the app-specific scope when the assignment scope is app-specific -// -// Deprecated: `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider -func (o DirectoryRoleAssignmentOutput) AppScopeObjectId() pulumi.StringOutput { - return o.ApplyT(func(v *DirectoryRoleAssignment) pulumi.StringOutput { return v.AppScopeObjectId }).(pulumi.StringOutput) -} - // Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. func (o DirectoryRoleAssignmentOutput) DirectoryScopeId() pulumi.StringOutput { return o.ApplyT(func(v *DirectoryRoleAssignment) pulumi.StringOutput { return v.DirectoryScopeId }).(pulumi.StringOutput) } -// Identifier of the directory object representing the scope of the assignment -func (o DirectoryRoleAssignmentOutput) DirectoryScopeObjectId() pulumi.StringOutput { - return o.ApplyT(func(v *DirectoryRoleAssignment) pulumi.StringOutput { return v.DirectoryScopeObjectId }).(pulumi.StringOutput) -} - // The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. func (o DirectoryRoleAssignmentOutput) PrincipalObjectId() pulumi.StringOutput { return o.ApplyT(func(v *DirectoryRoleAssignment) pulumi.StringOutput { return v.PrincipalObjectId }).(pulumi.StringOutput) diff --git a/sdk/go/azuread/directoryRoleEligibilityScheduleRequest.go b/sdk/go/azuread/directoryRoleEligibilityScheduleRequest.go index c344233af..2b3037fdb 100644 --- a/sdk/go/azuread/directoryRoleEligibilityScheduleRequest.go +++ b/sdk/go/azuread/directoryRoleEligibilityScheduleRequest.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/directoryRoleMember.go b/sdk/go/azuread/directoryRoleMember.go index 93fae707d..e69b809ef 100644 --- a/sdk/go/azuread/directoryRoleMember.go +++ b/sdk/go/azuread/directoryRoleMember.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -30,7 +30,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getAccessPackage.go b/sdk/go/azuread/getAccessPackage.go index bfae5e51e..acf4c83d0 100644 --- a/sdk/go/azuread/getAccessPackage.go +++ b/sdk/go/azuread/getAccessPackage.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -30,7 +30,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -56,7 +56,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getAccessPackageCatalog.go b/sdk/go/azuread/getAccessPackageCatalog.go index fbdedb805..903a9612f 100644 --- a/sdk/go/azuread/getAccessPackageCatalog.go +++ b/sdk/go/azuread/getAccessPackageCatalog.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -57,7 +57,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getAccessPackageCatalogRole.go b/sdk/go/azuread/getAccessPackageCatalogRole.go index 83a7878b7..bae71eb7c 100644 --- a/sdk/go/azuread/getAccessPackageCatalogRole.go +++ b/sdk/go/azuread/getAccessPackageCatalogRole.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -56,7 +56,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getAdministrativeUnit.go b/sdk/go/azuread/getAdministrativeUnit.go index 92c27e07e..c9640f494 100644 --- a/sdk/go/azuread/getAdministrativeUnit.go +++ b/sdk/go/azuread/getAdministrativeUnit.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -56,7 +56,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getApplication.go b/sdk/go/azuread/getApplication.go index ad1bc7e42..7cf53a506 100644 --- a/sdk/go/azuread/getApplication.go +++ b/sdk/go/azuread/getApplication.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -28,7 +28,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -59,8 +59,6 @@ func LookupApplication(ctx *pulumi.Context, args *LookupApplicationArgs, opts .. // A collection of arguments for invoking getApplication. type LookupApplicationArgs struct { - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId *string `pulumi:"applicationId"` // Specifies the Client ID of the application. ClientId *string `pulumi:"clientId"` // Specifies the display name of the application. @@ -81,8 +79,6 @@ type LookupApplicationResult struct { AppRoleIds map[string]string `pulumi:"appRoleIds"` // A collection of `appRole` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). AppRoles []GetApplicationAppRoleType `pulumi:"appRoles"` - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId string `pulumi:"applicationId"` // The Client ID for the application. ClientId string `pulumi:"clientId"` // Description of the app role that appears when the role is being assigned and, if the role functions as an application permissions, during the consent experiences. @@ -165,8 +161,6 @@ func LookupApplicationOutput(ctx *pulumi.Context, args LookupApplicationOutputAr // A collection of arguments for invoking getApplication. type LookupApplicationOutputArgs struct { - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId pulumi.StringPtrInput `pulumi:"applicationId"` // Specifies the Client ID of the application. ClientId pulumi.StringPtrInput `pulumi:"clientId"` // Specifies the display name of the application. @@ -213,11 +207,6 @@ func (o LookupApplicationResultOutput) AppRoles() GetApplicationAppRoleTypeArray return o.ApplyT(func(v LookupApplicationResult) []GetApplicationAppRoleType { return v.AppRoles }).(GetApplicationAppRoleTypeArrayOutput) } -// Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider -func (o LookupApplicationResultOutput) ApplicationId() pulumi.StringOutput { - return o.ApplyT(func(v LookupApplicationResult) string { return v.ApplicationId }).(pulumi.StringOutput) -} - // The Client ID for the application. func (o LookupApplicationResultOutput) ClientId() pulumi.StringOutput { return o.ApplyT(func(v LookupApplicationResult) string { return v.ClientId }).(pulumi.StringOutput) diff --git a/sdk/go/azuread/getApplicationPublishedAppIds.go b/sdk/go/azuread/getApplicationPublishedAppIds.go index 80a460a3e..23188a71b 100644 --- a/sdk/go/azuread/getApplicationPublishedAppIds.go +++ b/sdk/go/azuread/getApplicationPublishedAppIds.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -20,7 +20,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -45,7 +45,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getApplicationTemplate.go b/sdk/go/azuread/getApplicationTemplate.go index 56304c2f5..2529d89a3 100644 --- a/sdk/go/azuread/getApplicationTemplate.go +++ b/sdk/go/azuread/getApplicationTemplate.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -24,7 +24,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getClientConfig.go b/sdk/go/azuread/getClientConfig.go index c174ec025..4b006ae4d 100644 --- a/sdk/go/azuread/getClientConfig.go +++ b/sdk/go/azuread/getClientConfig.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -24,7 +24,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getDirectoryObject.go b/sdk/go/azuread/getDirectoryObject.go index ce2e4df73..77c1032d7 100644 --- a/sdk/go/azuread/getDirectoryObject.go +++ b/sdk/go/azuread/getDirectoryObject.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getDirectoryRoleTemplates.go b/sdk/go/azuread/getDirectoryRoleTemplates.go index 05e1de8bf..63faf3898 100644 --- a/sdk/go/azuread/getDirectoryRoleTemplates.go +++ b/sdk/go/azuread/getDirectoryRoleTemplates.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -28,7 +28,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getDirectoryRoles.go b/sdk/go/azuread/getDirectoryRoles.go index f255f4d12..bd69e6f91 100644 --- a/sdk/go/azuread/getDirectoryRoles.go +++ b/sdk/go/azuread/getDirectoryRoles.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -28,7 +28,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getDomains.go b/sdk/go/azuread/getDomains.go index 191f85437..414fdce0a 100644 --- a/sdk/go/azuread/getDomains.go +++ b/sdk/go/azuread/getDomains.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -28,7 +28,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getGroup.go b/sdk/go/azuread/getGroup.go index 8504dd296..ae7752ad1 100644 --- a/sdk/go/azuread/getGroup.go +++ b/sdk/go/azuread/getGroup.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -30,7 +30,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getGroupRoleManagementPolicy.go b/sdk/go/azuread/getGroupRoleManagementPolicy.go index 4fbdc1c45..10c8dba28 100644 --- a/sdk/go/azuread/getGroupRoleManagementPolicy.go +++ b/sdk/go/azuread/getGroupRoleManagementPolicy.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -28,7 +28,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getGroups.go b/sdk/go/azuread/getGroups.go index 8e277a9d9..b7cbf4cf3 100644 --- a/sdk/go/azuread/getGroups.go +++ b/sdk/go/azuread/getGroups.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -57,7 +57,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -82,7 +82,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -107,7 +107,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -133,7 +133,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getNamedLocation.go b/sdk/go/azuread/getNamedLocation.go index 52e6442bb..32f0697cb 100644 --- a/sdk/go/azuread/getNamedLocation.go +++ b/sdk/go/azuread/getNamedLocation.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -28,7 +28,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getServicePrincipal.go b/sdk/go/azuread/getServicePrincipal.go index e5ae7baec..eb0ade1d3 100644 --- a/sdk/go/azuread/getServicePrincipal.go +++ b/sdk/go/azuread/getServicePrincipal.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -30,7 +30,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -56,7 +56,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -82,7 +82,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -112,8 +112,6 @@ func LookupServicePrincipal(ctx *pulumi.Context, args *LookupServicePrincipalArg // A collection of arguments for invoking getServicePrincipal. type LookupServicePrincipalArgs struct { - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId *string `pulumi:"applicationId"` // The client ID of the application associated with this service principal. ClientId *string `pulumi:"clientId"` // The display name of the application associated with this service principal. @@ -136,8 +134,6 @@ type LookupServicePrincipalResult struct { AppRoleIds map[string]string `pulumi:"appRoleIds"` // A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). AppRoles []GetServicePrincipalAppRole `pulumi:"appRoles"` - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId string `pulumi:"applicationId"` // The tenant ID where the associated application is registered. ApplicationTenantId string `pulumi:"applicationTenantId"` // The client ID of the application associated with this service principal. @@ -208,8 +204,6 @@ func LookupServicePrincipalOutput(ctx *pulumi.Context, args LookupServicePrincip // A collection of arguments for invoking getServicePrincipal. type LookupServicePrincipalOutputArgs struct { - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId pulumi.StringPtrInput `pulumi:"applicationId"` // The client ID of the application associated with this service principal. ClientId pulumi.StringPtrInput `pulumi:"clientId"` // The display name of the application associated with this service principal. @@ -264,11 +258,6 @@ func (o LookupServicePrincipalResultOutput) AppRoles() GetServicePrincipalAppRol return o.ApplyT(func(v LookupServicePrincipalResult) []GetServicePrincipalAppRole { return v.AppRoles }).(GetServicePrincipalAppRoleArrayOutput) } -// Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider -func (o LookupServicePrincipalResultOutput) ApplicationId() pulumi.StringOutput { - return o.ApplyT(func(v LookupServicePrincipalResult) string { return v.ApplicationId }).(pulumi.StringOutput) -} - // The tenant ID where the associated application is registered. func (o LookupServicePrincipalResultOutput) ApplicationTenantId() pulumi.StringOutput { return o.ApplyT(func(v LookupServicePrincipalResult) string { return v.ApplicationTenantId }).(pulumi.StringOutput) diff --git a/sdk/go/azuread/getServicePrincipals.go b/sdk/go/azuread/getServicePrincipals.go index f8cd85238..e2c36254f 100644 --- a/sdk/go/azuread/getServicePrincipals.go +++ b/sdk/go/azuread/getServicePrincipals.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -30,7 +30,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -59,7 +59,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -89,7 +89,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -123,10 +123,6 @@ func GetServicePrincipals(ctx *pulumi.Context, args *GetServicePrincipalsArgs, o // A collection of arguments for invoking getServicePrincipals. type GetServicePrincipalsArgs struct { - // A list of client IDs of the applications associated with the service principals. - // - // Deprecated: The `applicationIds` property has been replaced with the `clientIds` property and will be removed in version 3.0 of the AzureAD provider - ApplicationIds []string `pulumi:"applicationIds"` // A list of client IDs of the applications associated with the service principals. ClientIds []string `pulumi:"clientIds"` // A list of display names of the applications associated with the service principals. @@ -143,10 +139,6 @@ type GetServicePrincipalsArgs struct { // A collection of values returned by getServicePrincipals. type GetServicePrincipalsResult struct { - // A list of client IDs of the applications associated with the service principals. - // - // Deprecated: The `applicationIds` property has been replaced with the `clientIds` property and will be removed in version 3.0 of the AzureAD provider - ApplicationIds []string `pulumi:"applicationIds"` // The client ID of the application associated with this service principal. ClientIds []string `pulumi:"clientIds"` // A list of display names of the applications associated with the service principals. @@ -182,10 +174,6 @@ func GetServicePrincipalsOutput(ctx *pulumi.Context, args GetServicePrincipalsOu // A collection of arguments for invoking getServicePrincipals. type GetServicePrincipalsOutputArgs struct { - // A list of client IDs of the applications associated with the service principals. - // - // Deprecated: The `applicationIds` property has been replaced with the `clientIds` property and will be removed in version 3.0 of the AzureAD provider - ApplicationIds pulumi.StringArrayInput `pulumi:"applicationIds"` // A list of client IDs of the applications associated with the service principals. ClientIds pulumi.StringArrayInput `pulumi:"clientIds"` // A list of display names of the applications associated with the service principals. @@ -219,13 +207,6 @@ func (o GetServicePrincipalsResultOutput) ToGetServicePrincipalsResultOutputWith return o } -// A list of client IDs of the applications associated with the service principals. -// -// Deprecated: The `applicationIds` property has been replaced with the `clientIds` property and will be removed in version 3.0 of the AzureAD provider -func (o GetServicePrincipalsResultOutput) ApplicationIds() pulumi.StringArrayOutput { - return o.ApplyT(func(v GetServicePrincipalsResult) []string { return v.ApplicationIds }).(pulumi.StringArrayOutput) -} - // The client ID of the application associated with this service principal. func (o GetServicePrincipalsResultOutput) ClientIds() pulumi.StringArrayOutput { return o.ApplyT(func(v GetServicePrincipalsResult) []string { return v.ClientIds }).(pulumi.StringArrayOutput) diff --git a/sdk/go/azuread/getUser.go b/sdk/go/azuread/getUser.go index d8b86931d..f10eed0f2 100644 --- a/sdk/go/azuread/getUser.go +++ b/sdk/go/azuread/getUser.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -28,7 +28,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/getUsers.go b/sdk/go/azuread/getUsers.go index 2b63740b0..8621a537b 100644 --- a/sdk/go/azuread/getUsers.go +++ b/sdk/go/azuread/getUsers.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -28,7 +28,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/group.go b/sdk/go/azuread/group.go index f1da581a3..c26a17c93 100644 --- a/sdk/go/azuread/group.go +++ b/sdk/go/azuread/group.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -41,7 +41,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -75,7 +75,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/groupMember.go b/sdk/go/azuread/groupMember.go index 95e0a9c2a..64cee469f 100644 --- a/sdk/go/azuread/groupMember.go +++ b/sdk/go/azuread/groupMember.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -33,7 +33,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/groupRoleManagementPolicy.go b/sdk/go/azuread/groupRoleManagementPolicy.go index 941511186..05c97a4dd 100644 --- a/sdk/go/azuread/groupRoleManagementPolicy.go +++ b/sdk/go/azuread/groupRoleManagementPolicy.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/init.go b/sdk/go/azuread/init.go index 233ed0843..b01be922b 100644 --- a/sdk/go/azuread/init.go +++ b/sdk/go/azuread/init.go @@ -7,7 +7,7 @@ import ( "fmt" "github.com/blang/semver" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) diff --git a/sdk/go/azuread/internal/pulumiUtilities.go b/sdk/go/azuread/internal/pulumiUtilities.go index 8024883e2..30ea1a64f 100644 --- a/sdk/go/azuread/internal/pulumiUtilities.go +++ b/sdk/go/azuread/internal/pulumiUtilities.go @@ -165,7 +165,7 @@ func callPlainInner( func PkgResourceDefaultOpts(opts []pulumi.ResourceOption) []pulumi.ResourceOption { defaults := []pulumi.ResourceOption{} - version := semver.MustParse("5.0.0-alpha.0+dev") + version := semver.MustParse("6.0.0-alpha.0+dev") if !version.Equals(semver.Version{}) { defaults = append(defaults, pulumi.Version(version.String())) } @@ -176,7 +176,7 @@ func PkgResourceDefaultOpts(opts []pulumi.ResourceOption) []pulumi.ResourceOptio func PkgInvokeDefaultOpts(opts []pulumi.InvokeOption) []pulumi.InvokeOption { defaults := []pulumi.InvokeOption{} - version := semver.MustParse("5.0.0-alpha.0+dev") + version := semver.MustParse("6.0.0-alpha.0+dev") if !version.Equals(semver.Version{}) { defaults = append(defaults, pulumi.Version(version.String())) } diff --git a/sdk/go/azuread/invitation.go b/sdk/go/azuread/invitation.go index fdca1fca8..1ca9cfa74 100644 --- a/sdk/go/azuread/invitation.go +++ b/sdk/go/azuread/invitation.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -58,7 +58,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -88,7 +88,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/namedLocation.go b/sdk/go/azuread/namedLocation.go index 394dabd55..4a0112622 100644 --- a/sdk/go/azuread/namedLocation.go +++ b/sdk/go/azuread/namedLocation.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,7 +19,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/privilegedAccessGroupAssignmentSchedule.go b/sdk/go/azuread/privilegedAccessGroupAssignmentSchedule.go index 748934676..1de12fa33 100644 --- a/sdk/go/azuread/privilegedAccessGroupAssignmentSchedule.go +++ b/sdk/go/azuread/privilegedAccessGroupAssignmentSchedule.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/privilegedAccessGroupEligibilitySchedule.go b/sdk/go/azuread/privilegedAccessGroupEligibilitySchedule.go index eb1ae71a8..8a69de148 100644 --- a/sdk/go/azuread/privilegedAccessGroupEligibilitySchedule.go +++ b/sdk/go/azuread/privilegedAccessGroupEligibilitySchedule.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/provider.go b/sdk/go/azuread/provider.go index 48202129c..1f254c276 100644 --- a/sdk/go/azuread/provider.go +++ b/sdk/go/azuread/provider.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) diff --git a/sdk/go/azuread/pulumi-plugin.json b/sdk/go/azuread/pulumi-plugin.json index 45a7ee76e..274f9055d 100644 --- a/sdk/go/azuread/pulumi-plugin.json +++ b/sdk/go/azuread/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "azuread", - "version": "5.0.0-alpha.0+dev" + "version": "6.0.0-alpha.0+dev" } diff --git a/sdk/go/azuread/pulumiTypes.go b/sdk/go/azuread/pulumiTypes.go index 87caeec2d..745602d70 100644 --- a/sdk/go/azuread/pulumiTypes.go +++ b/sdk/go/azuread/pulumiTypes.go @@ -7,7 +7,7 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -1882,7 +1882,7 @@ func (o AccessPackageAssignmentPolicyRequestorSettingsRequestorArrayOutput) Inde } type ApplicationApi struct { - // A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + // A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. KnownClientApplications []string `pulumi:"knownClientApplications"` // Allows an application to use claims mapping without specifying a custom signing key. Defaults to `false`. MappedClaimsEnabled *bool `pulumi:"mappedClaimsEnabled"` @@ -1904,7 +1904,7 @@ type ApplicationApiInput interface { } type ApplicationApiArgs struct { - // A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + // A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. KnownClientApplications pulumi.StringArrayInput `pulumi:"knownClientApplications"` // Allows an application to use claims mapping without specifying a custom signing key. Defaults to `false`. MappedClaimsEnabled pulumi.BoolPtrInput `pulumi:"mappedClaimsEnabled"` @@ -1991,7 +1991,7 @@ func (o ApplicationApiOutput) ToApplicationApiPtrOutputWithContext(ctx context.C }).(ApplicationApiPtrOutput) } -// A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. +// A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. func (o ApplicationApiOutput) KnownClientApplications() pulumi.StringArrayOutput { return o.ApplyT(func(v ApplicationApi) []string { return v.KnownClientApplications }).(pulumi.StringArrayOutput) } @@ -2035,7 +2035,7 @@ func (o ApplicationApiPtrOutput) Elem() ApplicationApiOutput { }).(ApplicationApiOutput) } -// A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. +// A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. func (o ApplicationApiPtrOutput) KnownClientApplications() pulumi.StringArrayOutput { return o.ApplyT(func(v *ApplicationApi) []string { if v == nil { @@ -14746,10 +14746,6 @@ type GetServicePrincipalsServicePrincipal struct { AccountEnabled bool `pulumi:"accountEnabled"` // Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. AppRoleAssignmentRequired bool `pulumi:"appRoleAssignmentRequired"` - // The application ID (client ID) for the associated application - // - // Deprecated: The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider - ApplicationId string `pulumi:"applicationId"` // The tenant ID where the associated application is registered. ApplicationTenantId string `pulumi:"applicationTenantId"` // The application ID (client ID) for the associated application @@ -14788,10 +14784,6 @@ type GetServicePrincipalsServicePrincipalArgs struct { AccountEnabled pulumi.BoolInput `pulumi:"accountEnabled"` // Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. AppRoleAssignmentRequired pulumi.BoolInput `pulumi:"appRoleAssignmentRequired"` - // The application ID (client ID) for the associated application - // - // Deprecated: The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider - ApplicationId pulumi.StringInput `pulumi:"applicationId"` // The tenant ID where the associated application is registered. ApplicationTenantId pulumi.StringInput `pulumi:"applicationTenantId"` // The application ID (client ID) for the associated application @@ -14875,13 +14867,6 @@ func (o GetServicePrincipalsServicePrincipalOutput) AppRoleAssignmentRequired() return o.ApplyT(func(v GetServicePrincipalsServicePrincipal) bool { return v.AppRoleAssignmentRequired }).(pulumi.BoolOutput) } -// The application ID (client ID) for the associated application -// -// Deprecated: The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider -func (o GetServicePrincipalsServicePrincipalOutput) ApplicationId() pulumi.StringOutput { - return o.ApplyT(func(v GetServicePrincipalsServicePrincipal) string { return v.ApplicationId }).(pulumi.StringOutput) -} - // The tenant ID where the associated application is registered. func (o GetServicePrincipalsServicePrincipalOutput) ApplicationTenantId() pulumi.StringOutput { return o.ApplyT(func(v GetServicePrincipalsServicePrincipal) string { return v.ApplicationTenantId }).(pulumi.StringOutput) diff --git a/sdk/go/azuread/servicePrincipal.go b/sdk/go/azuread/servicePrincipal.go index caa7f2c4f..8a6692385 100644 --- a/sdk/go/azuread/servicePrincipal.go +++ b/sdk/go/azuread/servicePrincipal.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "errors" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -20,7 +21,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -63,7 +64,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -112,7 +113,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -143,7 +144,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -196,10 +197,6 @@ type ServicePrincipal struct { AppRoleIds pulumi.StringMapOutput `pulumi:"appRoleIds"` // A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). AppRoles ServicePrincipalAppRoleArrayOutput `pulumi:"appRoles"` - // The application ID (client ID) of the application for which to create a service principal - // - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId pulumi.StringOutput `pulumi:"applicationId"` // The tenant ID where the associated application is registered. ApplicationTenantId pulumi.StringOutput `pulumi:"applicationTenantId"` // The client ID of the application for which to create a service principal. @@ -260,9 +257,12 @@ type ServicePrincipal struct { func NewServicePrincipal(ctx *pulumi.Context, name string, args *ServicePrincipalArgs, opts ...pulumi.ResourceOption) (*ServicePrincipal, error) { if args == nil { - args = &ServicePrincipalArgs{} + return nil, errors.New("missing one or more required arguments") } + if args.ClientId == nil { + return nil, errors.New("invalid value for required argument 'ClientId'") + } opts = internal.PkgResourceDefaultOpts(opts) var resource ServicePrincipal err := ctx.RegisterResource("azuread:index/servicePrincipal:ServicePrincipal", name, args, &resource, opts...) @@ -296,10 +296,6 @@ type servicePrincipalState struct { AppRoleIds map[string]string `pulumi:"appRoleIds"` // A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). AppRoles []ServicePrincipalAppRole `pulumi:"appRoles"` - // The application ID (client ID) of the application for which to create a service principal - // - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId *string `pulumi:"applicationId"` // The tenant ID where the associated application is registered. ApplicationTenantId *string `pulumi:"applicationTenantId"` // The client ID of the application for which to create a service principal. @@ -367,10 +363,6 @@ type ServicePrincipalState struct { AppRoleIds pulumi.StringMapInput // A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). AppRoles ServicePrincipalAppRoleArrayInput - // The application ID (client ID) of the application for which to create a service principal - // - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId pulumi.StringPtrInput // The tenant ID where the associated application is registered. ApplicationTenantId pulumi.StringPtrInput // The client ID of the application for which to create a service principal. @@ -438,12 +430,8 @@ type servicePrincipalArgs struct { AlternativeNames []string `pulumi:"alternativeNames"` // Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`. AppRoleAssignmentRequired *bool `pulumi:"appRoleAssignmentRequired"` - // The application ID (client ID) of the application for which to create a service principal - // - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId *string `pulumi:"applicationId"` // The client ID of the application for which to create a service principal. - ClientId *string `pulumi:"clientId"` + ClientId string `pulumi:"clientId"` // A description of the service principal provided for internal end-users. Description *string `pulumi:"description"` // A `featureTags` block as described below. Cannot be used together with the `tags` property. @@ -482,12 +470,8 @@ type ServicePrincipalArgs struct { AlternativeNames pulumi.StringArrayInput // Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`. AppRoleAssignmentRequired pulumi.BoolPtrInput - // The application ID (client ID) of the application for which to create a service principal - // - // Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - ApplicationId pulumi.StringPtrInput // The client ID of the application for which to create a service principal. - ClientId pulumi.StringPtrInput + ClientId pulumi.StringInput // A description of the service principal provided for internal end-users. Description pulumi.StringPtrInput // A `featureTags` block as described below. Cannot be used together with the `tags` property. @@ -630,13 +614,6 @@ func (o ServicePrincipalOutput) AppRoles() ServicePrincipalAppRoleArrayOutput { return o.ApplyT(func(v *ServicePrincipal) ServicePrincipalAppRoleArrayOutput { return v.AppRoles }).(ServicePrincipalAppRoleArrayOutput) } -// The application ID (client ID) of the application for which to create a service principal -// -// Deprecated: The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider -func (o ServicePrincipalOutput) ApplicationId() pulumi.StringOutput { - return o.ApplyT(func(v *ServicePrincipal) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) -} - // The tenant ID where the associated application is registered. func (o ServicePrincipalOutput) ApplicationTenantId() pulumi.StringOutput { return o.ApplyT(func(v *ServicePrincipal) pulumi.StringOutput { return v.ApplicationTenantId }).(pulumi.StringOutput) diff --git a/sdk/go/azuread/servicePrincipalCertificate.go b/sdk/go/azuread/servicePrincipalCertificate.go index ff03cda74..40bc04eb3 100644 --- a/sdk/go/azuread/servicePrincipalCertificate.go +++ b/sdk/go/azuread/servicePrincipalCertificate.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -21,7 +21,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-std/sdk/go/std" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -36,7 +36,7 @@ import ( // return err // } // exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ApplicationId: example.ApplicationId, +// ClientId: example.ClientId, // }) // if err != nil { // return err @@ -69,7 +69,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-std/sdk/go/std" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -84,7 +84,7 @@ import ( // return err // } // exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ApplicationId: example.ApplicationId, +// ClientId: example.ClientId, // }) // if err != nil { // return err @@ -134,10 +134,12 @@ type ServicePrincipalCertificate struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrOutput `pulumi:"endDateRelative"` // A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId pulumi.StringOutput `pulumi:"keyId"` - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringOutput `pulumi:"servicePrincipalId"` // The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. StartDate pulumi.StringOutput `pulumi:"startDate"` @@ -199,10 +201,12 @@ type servicePrincipalCertificateState struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative *string `pulumi:"endDateRelative"` // A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId *string `pulumi:"keyId"` - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId *string `pulumi:"servicePrincipalId"` // The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. StartDate *string `pulumi:"startDate"` @@ -222,10 +226,12 @@ type ServicePrincipalCertificateState struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrInput // A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId pulumi.StringPtrInput - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringPtrInput // The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. StartDate pulumi.StringPtrInput @@ -249,10 +255,12 @@ type servicePrincipalCertificateArgs struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative *string `pulumi:"endDateRelative"` // A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId *string `pulumi:"keyId"` - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId string `pulumi:"servicePrincipalId"` // The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. StartDate *string `pulumi:"startDate"` @@ -273,10 +281,12 @@ type ServicePrincipalCertificateArgs struct { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrInput // A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created. KeyId pulumi.StringPtrInput - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringInput // The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. StartDate pulumi.StringPtrInput @@ -388,6 +398,8 @@ func (o ServicePrincipalCertificateOutput) EndDate() pulumi.StringOutput { // A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. // // > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. +// +// Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. func (o ServicePrincipalCertificateOutput) EndDateRelative() pulumi.StringPtrOutput { return o.ApplyT(func(v *ServicePrincipalCertificate) pulumi.StringPtrOutput { return v.EndDateRelative }).(pulumi.StringPtrOutput) } @@ -397,7 +409,7 @@ func (o ServicePrincipalCertificateOutput) KeyId() pulumi.StringOutput { return o.ApplyT(func(v *ServicePrincipalCertificate) pulumi.StringOutput { return v.KeyId }).(pulumi.StringOutput) } -// The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. +// The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. func (o ServicePrincipalCertificateOutput) ServicePrincipalId() pulumi.StringOutput { return o.ApplyT(func(v *ServicePrincipalCertificate) pulumi.StringOutput { return v.ServicePrincipalId }).(pulumi.StringOutput) } diff --git a/sdk/go/azuread/servicePrincipalClaimsMappingPolicyAssignment.go b/sdk/go/azuread/servicePrincipalClaimsMappingPolicyAssignment.go index 46d455370..3ab0d4d71 100644 --- a/sdk/go/azuread/servicePrincipalClaimsMappingPolicyAssignment.go +++ b/sdk/go/azuread/servicePrincipalClaimsMappingPolicyAssignment.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -61,7 +61,7 @@ type ServicePrincipalClaimsMappingPolicyAssignment struct { // The ID of the claims mapping policy to assign. ClaimsMappingPolicyId pulumi.StringOutput `pulumi:"claimsMappingPolicyId"` - // The object ID of the service principal for the policy assignment. + // The ID of the service principal for the policy assignment. ServicePrincipalId pulumi.StringOutput `pulumi:"servicePrincipalId"` } @@ -103,14 +103,14 @@ func GetServicePrincipalClaimsMappingPolicyAssignment(ctx *pulumi.Context, type servicePrincipalClaimsMappingPolicyAssignmentState struct { // The ID of the claims mapping policy to assign. ClaimsMappingPolicyId *string `pulumi:"claimsMappingPolicyId"` - // The object ID of the service principal for the policy assignment. + // The ID of the service principal for the policy assignment. ServicePrincipalId *string `pulumi:"servicePrincipalId"` } type ServicePrincipalClaimsMappingPolicyAssignmentState struct { // The ID of the claims mapping policy to assign. ClaimsMappingPolicyId pulumi.StringPtrInput - // The object ID of the service principal for the policy assignment. + // The ID of the service principal for the policy assignment. ServicePrincipalId pulumi.StringPtrInput } @@ -121,7 +121,7 @@ func (ServicePrincipalClaimsMappingPolicyAssignmentState) ElementType() reflect. type servicePrincipalClaimsMappingPolicyAssignmentArgs struct { // The ID of the claims mapping policy to assign. ClaimsMappingPolicyId string `pulumi:"claimsMappingPolicyId"` - // The object ID of the service principal for the policy assignment. + // The ID of the service principal for the policy assignment. ServicePrincipalId string `pulumi:"servicePrincipalId"` } @@ -129,7 +129,7 @@ type servicePrincipalClaimsMappingPolicyAssignmentArgs struct { type ServicePrincipalClaimsMappingPolicyAssignmentArgs struct { // The ID of the claims mapping policy to assign. ClaimsMappingPolicyId pulumi.StringInput - // The object ID of the service principal for the policy assignment. + // The ID of the service principal for the policy assignment. ServicePrincipalId pulumi.StringInput } @@ -227,7 +227,7 @@ func (o ServicePrincipalClaimsMappingPolicyAssignmentOutput) ClaimsMappingPolicy }).(pulumi.StringOutput) } -// The object ID of the service principal for the policy assignment. +// The ID of the service principal for the policy assignment. func (o ServicePrincipalClaimsMappingPolicyAssignmentOutput) ServicePrincipalId() pulumi.StringOutput { return o.ApplyT(func(v *ServicePrincipalClaimsMappingPolicyAssignment) pulumi.StringOutput { return v.ServicePrincipalId diff --git a/sdk/go/azuread/servicePrincipalDelegatedPermissionGrant.go b/sdk/go/azuread/servicePrincipalDelegatedPermissionGrant.go index da741b0cf..c5b4dfabd 100644 --- a/sdk/go/azuread/servicePrincipalDelegatedPermissionGrant.go +++ b/sdk/go/azuread/servicePrincipalDelegatedPermissionGrant.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -31,7 +31,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -75,7 +75,7 @@ import ( // return err // } // exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: example.ApplicationId, +// ClientId: example.ClientId, // }) // if err != nil { // return err @@ -104,7 +104,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -148,7 +148,7 @@ import ( // return err // } // exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: example.ApplicationId, +// ClientId: example.ClientId, // }) // if err != nil { // return err diff --git a/sdk/go/azuread/servicePrincipalPassword.go b/sdk/go/azuread/servicePrincipalPassword.go index 13057e9f3..ce381342e 100644 --- a/sdk/go/azuread/servicePrincipalPassword.go +++ b/sdk/go/azuread/servicePrincipalPassword.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -21,7 +21,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -41,7 +41,7 @@ import ( // return err // } // _, err = azuread.NewServicePrincipalPassword(ctx, "example", &azuread.ServicePrincipalPasswordArgs{ -// ServicePrincipalId: exampleServicePrincipal.ObjectId, +// ServicePrincipalId: exampleServicePrincipal.ID(), // }) // if err != nil { // return err @@ -59,7 +59,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi-time/sdk/go/time" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // @@ -86,7 +86,7 @@ import ( // return err // } // _, err = azuread.NewServicePrincipalPassword(ctx, "example", &azuread.ServicePrincipalPasswordArgs{ -// ServicePrincipalId: exampleServicePrincipal.ObjectId, +// ServicePrincipalId: exampleServicePrincipal.ID(), // RotateWhenChanged: pulumi.StringMap{ // "rotation": exampleRotating.ID(), // }, @@ -111,12 +111,14 @@ type ServicePrincipalPassword struct { // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate pulumi.StringOutput `pulumi:"endDate"` // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrOutput `pulumi:"endDateRelative"` // A UUID used to uniquely identify this password credential. KeyId pulumi.StringOutput `pulumi:"keyId"` // A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. RotateWhenChanged pulumi.StringMapOutput `pulumi:"rotateWhenChanged"` - // The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringOutput `pulumi:"servicePrincipalId"` // The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. StartDate pulumi.StringOutput `pulumi:"startDate"` @@ -166,12 +168,14 @@ type servicePrincipalPasswordState struct { // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate *string `pulumi:"endDate"` // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative *string `pulumi:"endDateRelative"` // A UUID used to uniquely identify this password credential. KeyId *string `pulumi:"keyId"` // A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. RotateWhenChanged map[string]string `pulumi:"rotateWhenChanged"` - // The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. ServicePrincipalId *string `pulumi:"servicePrincipalId"` // The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. StartDate *string `pulumi:"startDate"` @@ -185,12 +189,14 @@ type ServicePrincipalPasswordState struct { // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate pulumi.StringPtrInput // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrInput // A UUID used to uniquely identify this password credential. KeyId pulumi.StringPtrInput // A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. RotateWhenChanged pulumi.StringMapInput - // The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringPtrInput // The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. StartDate pulumi.StringPtrInput @@ -208,10 +214,12 @@ type servicePrincipalPasswordArgs struct { // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate *string `pulumi:"endDate"` // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative *string `pulumi:"endDateRelative"` // A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. RotateWhenChanged map[string]string `pulumi:"rotateWhenChanged"` - // The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. ServicePrincipalId string `pulumi:"servicePrincipalId"` // The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. StartDate *string `pulumi:"startDate"` @@ -224,10 +232,12 @@ type ServicePrincipalPasswordArgs struct { // The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate pulumi.StringPtrInput // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + // + // Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. EndDateRelative pulumi.StringPtrInput // A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. RotateWhenChanged pulumi.StringMapInput - // The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringInput // The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. StartDate pulumi.StringPtrInput @@ -331,6 +341,8 @@ func (o ServicePrincipalPasswordOutput) EndDate() pulumi.StringOutput { } // A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. +// +// Deprecated: The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. func (o ServicePrincipalPasswordOutput) EndDateRelative() pulumi.StringPtrOutput { return o.ApplyT(func(v *ServicePrincipalPassword) pulumi.StringPtrOutput { return v.EndDateRelative }).(pulumi.StringPtrOutput) } @@ -345,7 +357,7 @@ func (o ServicePrincipalPasswordOutput) RotateWhenChanged() pulumi.StringMapOutp return o.ApplyT(func(v *ServicePrincipalPassword) pulumi.StringMapOutput { return v.RotateWhenChanged }).(pulumi.StringMapOutput) } -// The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. +// The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. func (o ServicePrincipalPasswordOutput) ServicePrincipalId() pulumi.StringOutput { return o.ApplyT(func(v *ServicePrincipalPassword) pulumi.StringOutput { return v.ServicePrincipalId }).(pulumi.StringOutput) } diff --git a/sdk/go/azuread/servicePrincipalTokenSigningCertificate.go b/sdk/go/azuread/servicePrincipalTokenSigningCertificate.go index e414040a3..2a1e84ab6 100644 --- a/sdk/go/azuread/servicePrincipalTokenSigningCertificate.go +++ b/sdk/go/azuread/servicePrincipalTokenSigningCertificate.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -21,7 +21,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -35,7 +35,7 @@ import ( // return err // } // exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: example.ApplicationId, +// ClientId: example.ClientId, // }) // if err != nil { // return err @@ -59,7 +59,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -73,7 +73,7 @@ import ( // return err // } // exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: example.ApplicationId, +// ClientId: example.ClientId, // }) // if err != nil { // return err @@ -112,7 +112,7 @@ type ServicePrincipalTokenSigningCertificate struct { EndDate pulumi.StringOutput `pulumi:"endDate"` // A UUID used to uniquely identify the verify certificate. KeyId pulumi.StringOutput `pulumi:"keyId"` - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringOutput `pulumi:"servicePrincipalId"` // The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). StartDate pulumi.StringOutput `pulumi:"startDate"` @@ -167,7 +167,7 @@ type servicePrincipalTokenSigningCertificateState struct { EndDate *string `pulumi:"endDate"` // A UUID used to uniquely identify the verify certificate. KeyId *string `pulumi:"keyId"` - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId *string `pulumi:"servicePrincipalId"` // The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). StartDate *string `pulumi:"startDate"` @@ -186,7 +186,7 @@ type ServicePrincipalTokenSigningCertificateState struct { EndDate pulumi.StringPtrInput // A UUID used to uniquely identify the verify certificate. KeyId pulumi.StringPtrInput - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringPtrInput // The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). StartDate pulumi.StringPtrInput @@ -207,7 +207,7 @@ type servicePrincipalTokenSigningCertificateArgs struct { DisplayName *string `pulumi:"displayName"` // The end date until which the token signing certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate *string `pulumi:"endDate"` - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId string `pulumi:"servicePrincipalId"` } @@ -219,7 +219,7 @@ type ServicePrincipalTokenSigningCertificateArgs struct { DisplayName pulumi.StringPtrInput // The end date until which the token signing certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. EndDate pulumi.StringPtrInput - // The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringInput } @@ -327,7 +327,7 @@ func (o ServicePrincipalTokenSigningCertificateOutput) KeyId() pulumi.StringOutp return o.ApplyT(func(v *ServicePrincipalTokenSigningCertificate) pulumi.StringOutput { return v.KeyId }).(pulumi.StringOutput) } -// The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. +// The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. func (o ServicePrincipalTokenSigningCertificateOutput) ServicePrincipalId() pulumi.StringOutput { return o.ApplyT(func(v *ServicePrincipalTokenSigningCertificate) pulumi.StringOutput { return v.ServicePrincipalId }).(pulumi.StringOutput) } diff --git a/sdk/go/azuread/synchronizationJob.go b/sdk/go/azuread/synchronizationJob.go index 3648c2fb7..454390bb6 100644 --- a/sdk/go/azuread/synchronizationJob.go +++ b/sdk/go/azuread/synchronizationJob.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -42,28 +42,20 @@ import ( // if err != nil { // return err // } -// exampleApplication, err := azuread.NewApplication(ctx, "example", &azuread.ApplicationArgs{ +// exampleApplicationFromTemplate, err := azuread.NewApplicationFromTemplate(ctx, "example", &azuread.ApplicationFromTemplateArgs{ // DisplayName: pulumi.String("example"), // TemplateId: pulumi.String(example.TemplateId), -// FeatureTags: azuread.ApplicationFeatureTagArray{ -// &azuread.ApplicationFeatureTagArgs{ -// Enterprise: pulumi.Bool(true), -// Gallery: pulumi.Bool(true), -// }, -// }, -// }) -// if err != nil { -// return err -// } -// exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: exampleApplication.ApplicationId, -// UseExisting: pulumi.Bool(true), // }) // if err != nil { // return err // } +// exampleGetServicePrincipal := azuread.LookupServicePrincipalOutput(ctx, azuread.GetServicePrincipalOutputArgs{ +// ObjectId: exampleApplicationFromTemplate.ServicePrincipalObjectId, +// }, nil) // _, err = azuread.NewSynchronizationSecret(ctx, "example", &azuread.SynchronizationSecretArgs{ -// ServicePrincipalId: exampleServicePrincipal.ID(), +// ServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) { +// return &exampleGetServicePrincipal.Id, nil +// }).(pulumi.StringPtrOutput)), // Credentials: azuread.SynchronizationSecretCredentialArray{ // &azuread.SynchronizationSecretCredentialArgs{ // Key: pulumi.String("BaseAddress"), @@ -79,9 +71,11 @@ import ( // return err // } // _, err = azuread.NewSynchronizationJob(ctx, "example", &azuread.SynchronizationJobArgs{ -// ServicePrincipalId: exampleServicePrincipal.ID(), -// TemplateId: pulumi.String("dataBricks"), -// Enabled: pulumi.Bool(true), +// ServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) { +// return &exampleGetServicePrincipal.Id, nil +// }).(pulumi.StringPtrOutput)), +// TemplateId: pulumi.String("dataBricks"), +// Enabled: pulumi.Bool(true), // }) // if err != nil { // return err @@ -104,11 +98,11 @@ import ( type SynchronizationJob struct { pulumi.CustomResourceState - // Whether or not the provisioning job is enabled. Default state is `true`. + // Whether the provisioning job is enabled. Default state is `true`. Enabled pulumi.BoolPtrOutput `pulumi:"enabled"` // A `schedule` list as documented below. Schedules SynchronizationJobScheduleArrayOutput `pulumi:"schedules"` - // The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringOutput `pulumi:"servicePrincipalId"` // Identifier of the synchronization template this job is based on. TemplateId pulumi.StringOutput `pulumi:"templateId"` @@ -150,22 +144,22 @@ func GetSynchronizationJob(ctx *pulumi.Context, // Input properties used for looking up and filtering SynchronizationJob resources. type synchronizationJobState struct { - // Whether or not the provisioning job is enabled. Default state is `true`. + // Whether the provisioning job is enabled. Default state is `true`. Enabled *bool `pulumi:"enabled"` // A `schedule` list as documented below. Schedules []SynchronizationJobSchedule `pulumi:"schedules"` - // The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. ServicePrincipalId *string `pulumi:"servicePrincipalId"` // Identifier of the synchronization template this job is based on. TemplateId *string `pulumi:"templateId"` } type SynchronizationJobState struct { - // Whether or not the provisioning job is enabled. Default state is `true`. + // Whether the provisioning job is enabled. Default state is `true`. Enabled pulumi.BoolPtrInput // A `schedule` list as documented below. Schedules SynchronizationJobScheduleArrayInput - // The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringPtrInput // Identifier of the synchronization template this job is based on. TemplateId pulumi.StringPtrInput @@ -176,9 +170,9 @@ func (SynchronizationJobState) ElementType() reflect.Type { } type synchronizationJobArgs struct { - // Whether or not the provisioning job is enabled. Default state is `true`. + // Whether the provisioning job is enabled. Default state is `true`. Enabled *bool `pulumi:"enabled"` - // The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. ServicePrincipalId string `pulumi:"servicePrincipalId"` // Identifier of the synchronization template this job is based on. TemplateId string `pulumi:"templateId"` @@ -186,9 +180,9 @@ type synchronizationJobArgs struct { // The set of arguments for constructing a SynchronizationJob resource. type SynchronizationJobArgs struct { - // Whether or not the provisioning job is enabled. Default state is `true`. + // Whether the provisioning job is enabled. Default state is `true`. Enabled pulumi.BoolPtrInput - // The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringInput // Identifier of the synchronization template this job is based on. TemplateId pulumi.StringInput @@ -281,7 +275,7 @@ func (o SynchronizationJobOutput) ToSynchronizationJobOutputWithContext(ctx cont return o } -// Whether or not the provisioning job is enabled. Default state is `true`. +// Whether the provisioning job is enabled. Default state is `true`. func (o SynchronizationJobOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *SynchronizationJob) pulumi.BoolPtrOutput { return v.Enabled }).(pulumi.BoolPtrOutput) } @@ -291,7 +285,7 @@ func (o SynchronizationJobOutput) Schedules() SynchronizationJobScheduleArrayOut return o.ApplyT(func(v *SynchronizationJob) SynchronizationJobScheduleArrayOutput { return v.Schedules }).(SynchronizationJobScheduleArrayOutput) } -// The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. +// The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. func (o SynchronizationJobOutput) ServicePrincipalId() pulumi.StringOutput { return o.ApplyT(func(v *SynchronizationJob) pulumi.StringOutput { return v.ServicePrincipalId }).(pulumi.StringOutput) } diff --git a/sdk/go/azuread/synchronizationJobProvisionOnDemand.go b/sdk/go/azuread/synchronizationJobProvisionOnDemand.go index d4136ffe9..d1a1b3ac1 100644 --- a/sdk/go/azuread/synchronizationJobProvisionOnDemand.go +++ b/sdk/go/azuread/synchronizationJobProvisionOnDemand.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -56,28 +56,20 @@ import ( // if err != nil { // return err // } -// exampleApplication, err := azuread.NewApplication(ctx, "example", &azuread.ApplicationArgs{ +// exampleApplicationFromTemplate, err := azuread.NewApplicationFromTemplate(ctx, "example", &azuread.ApplicationFromTemplateArgs{ // DisplayName: pulumi.String("example"), // TemplateId: pulumi.String(example.TemplateId), -// FeatureTags: azuread.ApplicationFeatureTagArray{ -// &azuread.ApplicationFeatureTagArgs{ -// Enterprise: pulumi.Bool(true), -// Gallery: pulumi.Bool(true), -// }, -// }, -// }) -// if err != nil { -// return err -// } -// exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: exampleApplication.ClientId, -// UseExisting: pulumi.Bool(true), // }) // if err != nil { // return err // } +// exampleGetServicePrincipal := azuread.LookupServicePrincipalOutput(ctx, azuread.GetServicePrincipalOutputArgs{ +// ObjectId: exampleApplicationFromTemplate.ServicePrincipalObjectId, +// }, nil) // _, err = azuread.NewSynchronizationSecret(ctx, "example", &azuread.SynchronizationSecretArgs{ -// ServicePrincipalId: exampleServicePrincipal.ID(), +// ServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) { +// return &exampleGetServicePrincipal.Id, nil +// }).(pulumi.StringPtrOutput)), // Credentials: azuread.SynchronizationSecretCredentialArray{ // &azuread.SynchronizationSecretCredentialArgs{ // Key: pulumi.String("BaseAddress"), @@ -93,15 +85,17 @@ import ( // return err // } // exampleSynchronizationJob, err := azuread.NewSynchronizationJob(ctx, "example", &azuread.SynchronizationJobArgs{ -// ServicePrincipalId: exampleServicePrincipal.ID(), -// TemplateId: pulumi.String("dataBricks"), -// Enabled: pulumi.Bool(true), +// ServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) { +// return &exampleGetServicePrincipal.Id, nil +// }).(pulumi.StringPtrOutput)), +// TemplateId: pulumi.String("dataBricks"), +// Enabled: pulumi.Bool(true), // }) // if err != nil { // return err // } // _, err = azuread.NewSynchronizationJobProvisionOnDemand(ctx, "example", &azuread.SynchronizationJobProvisionOnDemandArgs{ -// ServicePrincipalId: exampleServicePrincipal.ID(), +// ServicePrincipalId: exampleSynchronizationJob.ServicePrincipalId, // SynchronizationJobId: exampleSynchronizationJob.ID(), // Parameters: azuread.SynchronizationJobProvisionOnDemandParameterArray{ // &azuread.SynchronizationJobProvisionOnDemandParameterArgs{ @@ -132,9 +126,9 @@ type SynchronizationJobProvisionOnDemand struct { // One or more `parameter` blocks as documented below. Parameters SynchronizationJobProvisionOnDemandParameterArrayOutput `pulumi:"parameters"` - // The object ID of the service principal for the synchronization job. + // The ID of the service principal for the synchronization job. ServicePrincipalId pulumi.StringOutput `pulumi:"servicePrincipalId"` - // Identifier of the synchronization template this job is based on. + // The ID of the synchronization job. SynchronizationJobId pulumi.StringOutput `pulumi:"synchronizationJobId"` Triggers pulumi.StringMapOutput `pulumi:"triggers"` } @@ -180,9 +174,9 @@ func GetSynchronizationJobProvisionOnDemand(ctx *pulumi.Context, type synchronizationJobProvisionOnDemandState struct { // One or more `parameter` blocks as documented below. Parameters []SynchronizationJobProvisionOnDemandParameter `pulumi:"parameters"` - // The object ID of the service principal for the synchronization job. + // The ID of the service principal for the synchronization job. ServicePrincipalId *string `pulumi:"servicePrincipalId"` - // Identifier of the synchronization template this job is based on. + // The ID of the synchronization job. SynchronizationJobId *string `pulumi:"synchronizationJobId"` Triggers map[string]string `pulumi:"triggers"` } @@ -190,9 +184,9 @@ type synchronizationJobProvisionOnDemandState struct { type SynchronizationJobProvisionOnDemandState struct { // One or more `parameter` blocks as documented below. Parameters SynchronizationJobProvisionOnDemandParameterArrayInput - // The object ID of the service principal for the synchronization job. + // The ID of the service principal for the synchronization job. ServicePrincipalId pulumi.StringPtrInput - // Identifier of the synchronization template this job is based on. + // The ID of the synchronization job. SynchronizationJobId pulumi.StringPtrInput Triggers pulumi.StringMapInput } @@ -204,9 +198,9 @@ func (SynchronizationJobProvisionOnDemandState) ElementType() reflect.Type { type synchronizationJobProvisionOnDemandArgs struct { // One or more `parameter` blocks as documented below. Parameters []SynchronizationJobProvisionOnDemandParameter `pulumi:"parameters"` - // The object ID of the service principal for the synchronization job. + // The ID of the service principal for the synchronization job. ServicePrincipalId string `pulumi:"servicePrincipalId"` - // Identifier of the synchronization template this job is based on. + // The ID of the synchronization job. SynchronizationJobId string `pulumi:"synchronizationJobId"` Triggers map[string]string `pulumi:"triggers"` } @@ -215,9 +209,9 @@ type synchronizationJobProvisionOnDemandArgs struct { type SynchronizationJobProvisionOnDemandArgs struct { // One or more `parameter` blocks as documented below. Parameters SynchronizationJobProvisionOnDemandParameterArrayInput - // The object ID of the service principal for the synchronization job. + // The ID of the service principal for the synchronization job. ServicePrincipalId pulumi.StringInput - // Identifier of the synchronization template this job is based on. + // The ID of the synchronization job. SynchronizationJobId pulumi.StringInput Triggers pulumi.StringMapInput } @@ -316,12 +310,12 @@ func (o SynchronizationJobProvisionOnDemandOutput) Parameters() SynchronizationJ }).(SynchronizationJobProvisionOnDemandParameterArrayOutput) } -// The object ID of the service principal for the synchronization job. +// The ID of the service principal for the synchronization job. func (o SynchronizationJobProvisionOnDemandOutput) ServicePrincipalId() pulumi.StringOutput { return o.ApplyT(func(v *SynchronizationJobProvisionOnDemand) pulumi.StringOutput { return v.ServicePrincipalId }).(pulumi.StringOutput) } -// Identifier of the synchronization template this job is based on. +// The ID of the synchronization job. func (o SynchronizationJobProvisionOnDemandOutput) SynchronizationJobId() pulumi.StringOutput { return o.ApplyT(func(v *SynchronizationJobProvisionOnDemand) pulumi.StringOutput { return v.SynchronizationJobId }).(pulumi.StringOutput) } diff --git a/sdk/go/azuread/synchronizationSecret.go b/sdk/go/azuread/synchronizationSecret.go index 587e8d9a6..f5e85eea8 100644 --- a/sdk/go/azuread/synchronizationSecret.go +++ b/sdk/go/azuread/synchronizationSecret.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -42,28 +42,20 @@ import ( // if err != nil { // return err // } -// exampleApplication, err := azuread.NewApplication(ctx, "example", &azuread.ApplicationArgs{ +// exampleApplicationFromTemplate, err := azuread.NewApplicationFromTemplate(ctx, "example", &azuread.ApplicationFromTemplateArgs{ // DisplayName: pulumi.String("example"), // TemplateId: pulumi.String(example.TemplateId), -// FeatureTags: azuread.ApplicationFeatureTagArray{ -// &azuread.ApplicationFeatureTagArgs{ -// Enterprise: pulumi.Bool(true), -// Gallery: pulumi.Bool(true), -// }, -// }, -// }) -// if err != nil { -// return err -// } -// exampleServicePrincipal, err := azuread.NewServicePrincipal(ctx, "example", &azuread.ServicePrincipalArgs{ -// ClientId: exampleApplication.ApplicationId, -// UseExisting: pulumi.Bool(true), // }) // if err != nil { // return err // } +// exampleGetServicePrincipal := azuread.LookupServicePrincipalOutput(ctx, azuread.GetServicePrincipalOutputArgs{ +// ObjectId: exampleApplicationFromTemplate.ServicePrincipalObjectId, +// }, nil) // _, err = azuread.NewSynchronizationSecret(ctx, "example", &azuread.SynchronizationSecretArgs{ -// ServicePrincipalId: exampleServicePrincipal.ID(), +// ServicePrincipalId: pulumi.String(exampleGetServicePrincipal.ApplyT(func(exampleGetServicePrincipal azuread.GetServicePrincipalResult) (*string, error) { +// return &exampleGetServicePrincipal.Id, nil +// }).(pulumi.StringPtrOutput)), // Credentials: azuread.SynchronizationSecretCredentialArray{ // &azuread.SynchronizationSecretCredentialArgs{ // Key: pulumi.String("BaseAddress"), @@ -92,7 +84,7 @@ type SynchronizationSecret struct { // One or more `credential` blocks as documented below. Credentials SynchronizationSecretCredentialArrayOutput `pulumi:"credentials"` - // The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringOutput `pulumi:"servicePrincipalId"` } @@ -131,14 +123,14 @@ func GetSynchronizationSecret(ctx *pulumi.Context, type synchronizationSecretState struct { // One or more `credential` blocks as documented below. Credentials []SynchronizationSecretCredential `pulumi:"credentials"` - // The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. ServicePrincipalId *string `pulumi:"servicePrincipalId"` } type SynchronizationSecretState struct { // One or more `credential` blocks as documented below. Credentials SynchronizationSecretCredentialArrayInput - // The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringPtrInput } @@ -149,7 +141,7 @@ func (SynchronizationSecretState) ElementType() reflect.Type { type synchronizationSecretArgs struct { // One or more `credential` blocks as documented below. Credentials []SynchronizationSecretCredential `pulumi:"credentials"` - // The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. ServicePrincipalId string `pulumi:"servicePrincipalId"` } @@ -157,7 +149,7 @@ type synchronizationSecretArgs struct { type SynchronizationSecretArgs struct { // One or more `credential` blocks as documented below. Credentials SynchronizationSecretCredentialArrayInput - // The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + // The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. ServicePrincipalId pulumi.StringInput } @@ -253,7 +245,7 @@ func (o SynchronizationSecretOutput) Credentials() SynchronizationSecretCredenti return o.ApplyT(func(v *SynchronizationSecret) SynchronizationSecretCredentialArrayOutput { return v.Credentials }).(SynchronizationSecretCredentialArrayOutput) } -// The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. +// The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. func (o SynchronizationSecretOutput) ServicePrincipalId() pulumi.StringOutput { return o.ApplyT(func(v *SynchronizationSecret) pulumi.StringOutput { return v.ServicePrincipalId }).(pulumi.StringOutput) } diff --git a/sdk/go/azuread/user.go b/sdk/go/azuread/user.go index bcb2dcc0a..f07f63150 100644 --- a/sdk/go/azuread/user.go +++ b/sdk/go/azuread/user.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/go/azuread/userFlowAttribute.go b/sdk/go/azuread/userFlowAttribute.go index 687ec2409..0352912bf 100644 --- a/sdk/go/azuread/userFlowAttribute.go +++ b/sdk/go/azuread/userFlowAttribute.go @@ -8,7 +8,7 @@ import ( "reflect" "errors" - "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread/internal" + "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -29,7 +29,7 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread" +// "github.com/pulumi/pulumi-azuread/sdk/v6/go/azuread" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) diff --git a/sdk/java/src/main/java/com/pulumi/azuread/AppRoleAssignment.java b/sdk/java/src/main/java/com/pulumi/azuread/AppRoleAssignment.java index 7dd43fbfb..4b318d4cf 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/AppRoleAssignment.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/AppRoleAssignment.java @@ -81,7 +81,7 @@ * .build()); * * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(example.applicationId()) + * .clientId(example.clientId()) * .build()); * * var exampleAppRoleAssignment = new AppRoleAssignment("exampleAppRoleAssignment", AppRoleAssignmentArgs.builder() @@ -140,13 +140,13 @@ * .build()); * * var internalServicePrincipal = new ServicePrincipal("internalServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(internal.applicationId()) + * .clientId(internal.clientId()) * .build()); * * var example = new Application("example", ApplicationArgs.builder() * .displayName("example") * .requiredResourceAccesses(ApplicationRequiredResourceAccessArgs.builder() - * .resourceAppId(internal.applicationId()) + * .resourceAppId(internal.clientId()) * .resourceAccesses(ApplicationRequiredResourceAccessResourceAccessArgs.builder() * .id(internalServicePrincipal.appRoleIds().applyValue(appRoleIds -> appRoleIds.Query.All())) * .type("Role") @@ -155,7 +155,7 @@ * .build()); * * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(example.applicationId()) + * .clientId(example.clientId()) * .build()); * * var exampleAppRoleAssignment = new AppRoleAssignment("exampleAppRoleAssignment", AppRoleAssignmentArgs.builder() diff --git a/sdk/java/src/main/java/com/pulumi/azuread/Application.java b/sdk/java/src/main/java/com/pulumi/azuread/Application.java index 6b2b0613c..b57702856 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/Application.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/Application.java @@ -76,8 +76,8 @@ * .mappedClaimsEnabled(true) * .requestedAccessTokenVersion(2) * .knownClientApplications( - * known1.applicationId(), - * known2.applicationId()) + * known1.clientId(), + * known2.clientId()) * .oauth2PermissionScopes( * ApplicationApiOauth2PermissionScopeArgs.builder() * .adminConsentDescription("Allow the application to access example on behalf of the signed-in user.") @@ -231,24 +231,6 @@ public Output> appRoleIds() { public Output>> appRoles() { return Codegen.optional(this.appRoles); } - /** - * The Application ID (also called Client ID) - * - * @deprecated - * The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider */ - @Export(name="applicationId", refs={String.class}, tree="[0]") - private Output applicationId; - - /** - * @return The Application ID (also called Client ID) - * - */ - public Output applicationId() { - return this.applicationId; - } /** * The Client ID for the application. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationCertificate.java b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationCertificate.java index bc8ebcbf3..2e5295550 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationCertificate.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationCertificate.java @@ -236,24 +236,6 @@ public class ApplicationCertificate extends com.pulumi.resources.CustomResource public Output applicationId() { return this.applicationId; } - /** - * The object ID of the application for which this certificate should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Export(name="applicationObjectId", refs={String.class}, tree="[0]") - private Output applicationObjectId; - - /** - * @return The object ID of the application for which this certificate should be created - * - */ - public Output applicationObjectId() { - return this.applicationObjectId; - } /** * Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. * @@ -291,7 +273,11 @@ public Output endDate() { * * > One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Export(name="endDateRelative", refs={String.class}, tree="[0]") private Output endDateRelative; diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationCertificateArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationCertificateArgs.java index cef37e369..fcb06b3b5 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationCertificateArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationCertificateArgs.java @@ -20,38 +20,15 @@ public final class ApplicationCertificateArgs extends com.pulumi.resources.Resou * The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. * */ - @Import(name="applicationId") - private @Nullable Output applicationId; + @Import(name="applicationId", required=true) + private Output applicationId; /** * @return The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. * */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - - /** - * The object ID of the application for which this certificate should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationObjectId") - private @Nullable Output applicationObjectId; - - /** - * @return The object ID of the application for which this certificate should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationObjectId() { - return Optional.ofNullable(this.applicationObjectId); + public Output applicationId() { + return this.applicationId; } /** @@ -93,7 +70,11 @@ public Optional> endDate() { * * > One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Import(name="endDateRelative") private @Nullable Output endDateRelative; @@ -102,7 +83,11 @@ public Optional> endDate() { * * > One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Optional> endDateRelative() { return Optional.ofNullable(this.endDateRelative); } @@ -171,7 +156,6 @@ private ApplicationCertificateArgs() {} private ApplicationCertificateArgs(ApplicationCertificateArgs $) { this.applicationId = $.applicationId; - this.applicationObjectId = $.applicationObjectId; this.encoding = $.encoding; this.endDate = $.endDate; this.endDateRelative = $.endDateRelative; @@ -205,7 +189,7 @@ public Builder(ApplicationCertificateArgs defaults) { * @return builder * */ - public Builder applicationId(@Nullable Output applicationId) { + public Builder applicationId(Output applicationId) { $.applicationId = applicationId; return this; } @@ -220,35 +204,6 @@ public Builder applicationId(String applicationId) { return applicationId(Output.of(applicationId)); } - /** - * @param applicationObjectId The object ID of the application for which this certificate should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(@Nullable Output applicationObjectId) { - $.applicationObjectId = applicationObjectId; - return this; - } - - /** - * @param applicationObjectId The object ID of the application for which this certificate should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(String applicationObjectId) { - return applicationObjectId(Output.of(applicationObjectId)); - } - /** * @param encoding Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. * @@ -302,7 +257,11 @@ public Builder endDate(String endDate) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(@Nullable Output endDateRelative) { $.endDateRelative = endDateRelative; return this; @@ -315,7 +274,11 @@ public Builder endDateRelative(@Nullable Output endDateRelative) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(String endDateRelative) { return endDateRelative(Output.of(endDateRelative)); } @@ -405,6 +368,9 @@ public Builder value(String value) { } public ApplicationCertificateArgs build() { + if ($.applicationId == null) { + throw new MissingRequiredPropertyException("ApplicationCertificateArgs", "applicationId"); + } if ($.value == null) { throw new MissingRequiredPropertyException("ApplicationCertificateArgs", "value"); } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationFederatedIdentityCredential.java b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationFederatedIdentityCredential.java index 8f47814ef..a9c28a063 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationFederatedIdentityCredential.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationFederatedIdentityCredential.java @@ -89,24 +89,6 @@ public class ApplicationFederatedIdentityCredential extends com.pulumi.resources public Output applicationId() { return this.applicationId; } - /** - * The object ID of the application for which this federated identity credential should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Export(name="applicationObjectId", refs={String.class}, tree="[0]") - private Output applicationObjectId; - - /** - * @return The object ID of the application for which this federated identity credential should be created - * - */ - public Output applicationObjectId() { - return this.applicationObjectId; - } /** * List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationFederatedIdentityCredentialArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationFederatedIdentityCredentialArgs.java index 348020e9e..787683a3f 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationFederatedIdentityCredentialArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationFederatedIdentityCredentialArgs.java @@ -21,38 +21,15 @@ public final class ApplicationFederatedIdentityCredentialArgs extends com.pulumi * The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. * */ - @Import(name="applicationId") - private @Nullable Output applicationId; + @Import(name="applicationId", required=true) + private Output applicationId; /** * @return The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. * */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - - /** - * The object ID of the application for which this federated identity credential should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationObjectId") - private @Nullable Output applicationObjectId; - - /** - * @return The object ID of the application for which this federated identity credential should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationObjectId() { - return Optional.ofNullable(this.applicationObjectId); + public Output applicationId() { + return this.applicationId; } /** @@ -134,7 +111,6 @@ private ApplicationFederatedIdentityCredentialArgs() {} private ApplicationFederatedIdentityCredentialArgs(ApplicationFederatedIdentityCredentialArgs $) { this.applicationId = $.applicationId; - this.applicationObjectId = $.applicationObjectId; this.audiences = $.audiences; this.description = $.description; this.displayName = $.displayName; @@ -166,7 +142,7 @@ public Builder(ApplicationFederatedIdentityCredentialArgs defaults) { * @return builder * */ - public Builder applicationId(@Nullable Output applicationId) { + public Builder applicationId(Output applicationId) { $.applicationId = applicationId; return this; } @@ -181,35 +157,6 @@ public Builder applicationId(String applicationId) { return applicationId(Output.of(applicationId)); } - /** - * @param applicationObjectId The object ID of the application for which this federated identity credential should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(@Nullable Output applicationObjectId) { - $.applicationObjectId = applicationObjectId; - return this; - } - - /** - * @param applicationObjectId The object ID of the application for which this federated identity credential should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(String applicationObjectId) { - return applicationObjectId(Output.of(applicationObjectId)); - } - /** * @param audiences List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. * @@ -326,6 +273,9 @@ public Builder subject(String subject) { } public ApplicationFederatedIdentityCredentialArgs build() { + if ($.applicationId == null) { + throw new MissingRequiredPropertyException("ApplicationFederatedIdentityCredentialArgs", "applicationId"); + } if ($.audiences == null) { throw new MissingRequiredPropertyException("ApplicationFederatedIdentityCredentialArgs", "audiences"); } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPassword.java b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPassword.java index 1b16a6a98..92661d897 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPassword.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPassword.java @@ -129,24 +129,6 @@ public class ApplicationPassword extends com.pulumi.resources.CustomResource { public Output applicationId() { return this.applicationId; } - /** - * The object ID of the application for which this password should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Export(name="applicationObjectId", refs={String.class}, tree="[0]") - private Output applicationObjectId; - - /** - * @return The object ID of the application for which this password should be created - * - */ - public Output applicationObjectId() { - return this.applicationObjectId; - } /** * A display name for the password. Changing this field forces a new resource to be created. * @@ -178,7 +160,11 @@ public Output endDate() { /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Export(name="endDateRelative", refs={String.class}, tree="[0]") private Output endDateRelative; @@ -258,7 +244,7 @@ public ApplicationPassword(java.lang.String name) { * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. */ - public ApplicationPassword(java.lang.String name, @Nullable ApplicationPasswordArgs args) { + public ApplicationPassword(java.lang.String name, ApplicationPasswordArgs args) { this(name, args, null); } /** @@ -267,7 +253,7 @@ public ApplicationPassword(java.lang.String name, @Nullable ApplicationPasswordA * @param args The arguments to use to populate this resource's properties. * @param options A bag of options that control this resource's behavior. */ - public ApplicationPassword(java.lang.String name, @Nullable ApplicationPasswordArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + public ApplicationPassword(java.lang.String name, ApplicationPasswordArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azuread:index/applicationPassword:ApplicationPassword", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); } @@ -275,7 +261,7 @@ private ApplicationPassword(java.lang.String name, Output id, super("azuread:index/applicationPassword:ApplicationPassword", name, state, makeResourceOptions(options, id), false); } - private static ApplicationPasswordArgs makeArgs(@Nullable ApplicationPasswordArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + private static ApplicationPasswordArgs makeArgs(ApplicationPasswordArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { if (options != null && options.getUrn().isPresent()) { return null; } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPasswordArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPasswordArgs.java index 4fb850fb6..72e72c028 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPasswordArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPasswordArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Map; import java.util.Objects; @@ -20,38 +21,15 @@ public final class ApplicationPasswordArgs extends com.pulumi.resources.Resource * The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. * */ - @Import(name="applicationId") - private @Nullable Output applicationId; + @Import(name="applicationId", required=true) + private Output applicationId; /** * @return The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. * */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - - /** - * The object ID of the application for which this password should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationObjectId") - private @Nullable Output applicationObjectId; - - /** - * @return The object ID of the application for which this password should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationObjectId() { - return Optional.ofNullable(this.applicationObjectId); + public Output applicationId() { + return this.applicationId; } /** @@ -87,14 +65,22 @@ public Optional> endDate() { /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Import(name="endDateRelative") private @Nullable Output endDateRelative; /** * @return A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Optional> endDateRelative() { return Optional.ofNullable(this.endDateRelative); } @@ -133,7 +119,6 @@ private ApplicationPasswordArgs() {} private ApplicationPasswordArgs(ApplicationPasswordArgs $) { this.applicationId = $.applicationId; - this.applicationObjectId = $.applicationObjectId; this.displayName = $.displayName; this.endDate = $.endDate; this.endDateRelative = $.endDateRelative; @@ -165,7 +150,7 @@ public Builder(ApplicationPasswordArgs defaults) { * @return builder * */ - public Builder applicationId(@Nullable Output applicationId) { + public Builder applicationId(Output applicationId) { $.applicationId = applicationId; return this; } @@ -180,35 +165,6 @@ public Builder applicationId(String applicationId) { return applicationId(Output.of(applicationId)); } - /** - * @param applicationObjectId The object ID of the application for which this password should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(@Nullable Output applicationObjectId) { - $.applicationObjectId = applicationObjectId; - return this; - } - - /** - * @param applicationObjectId The object ID of the application for which this password should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(String applicationObjectId) { - return applicationObjectId(Output.of(applicationObjectId)); - } - /** * @param displayName A display name for the password. Changing this field forces a new resource to be created. * @@ -256,7 +212,11 @@ public Builder endDate(String endDate) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(@Nullable Output endDateRelative) { $.endDateRelative = endDateRelative; return this; @@ -267,7 +227,11 @@ public Builder endDateRelative(@Nullable Output endDateRelative) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(String endDateRelative) { return endDateRelative(Output.of(endDateRelative)); } @@ -315,6 +279,9 @@ public Builder startDate(String startDate) { } public ApplicationPasswordArgs build() { + if ($.applicationId == null) { + throw new MissingRequiredPropertyException("ApplicationPasswordArgs", "applicationId"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPreAuthorized.java b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPreAuthorized.java index cb49b7235..65c220cb1 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPreAuthorized.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPreAuthorized.java @@ -115,42 +115,6 @@ public class ApplicationPreAuthorized extends com.pulumi.resources.CustomResourc public Output applicationId() { return this.applicationId; } - /** - * The object ID of the application to which this pre-authorized application should be added - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Export(name="applicationObjectId", refs={String.class}, tree="[0]") - private Output applicationObjectId; - - /** - * @return The object ID of the application to which this pre-authorized application should be added - * - */ - public Output applicationObjectId() { - return this.applicationObjectId; - } - /** - * The application ID of the pre-authorized application - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Export(name="authorizedAppId", refs={String.class}, tree="[0]") - private Output authorizedAppId; - - /** - * @return The application ID of the pre-authorized application - * - */ - public Output authorizedAppId() { - return this.authorizedAppId; - } /** * The client ID of the application being authorized. Changing this field forces a new resource to be created. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPreAuthorizedArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPreAuthorizedArgs.java index 3133f4103..b5c02b6a7 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPreAuthorizedArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ApplicationPreAuthorizedArgs.java @@ -9,8 +9,6 @@ import java.lang.String; import java.util.List; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; public final class ApplicationPreAuthorizedArgs extends com.pulumi.resources.ResourceArgs { @@ -21,76 +19,30 @@ public final class ApplicationPreAuthorizedArgs extends com.pulumi.resources.Res * The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. * */ - @Import(name="applicationId") - private @Nullable Output applicationId; + @Import(name="applicationId", required=true) + private Output applicationId; /** * @return The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. * */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - - /** - * The object ID of the application to which this pre-authorized application should be added - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationObjectId") - private @Nullable Output applicationObjectId; - - /** - * @return The object ID of the application to which this pre-authorized application should be added - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationObjectId() { - return Optional.ofNullable(this.applicationObjectId); - } - - /** - * The application ID of the pre-authorized application - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="authorizedAppId") - private @Nullable Output authorizedAppId; - - /** - * @return The application ID of the pre-authorized application - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> authorizedAppId() { - return Optional.ofNullable(this.authorizedAppId); + public Output applicationId() { + return this.applicationId; } /** * The client ID of the application being authorized. Changing this field forces a new resource to be created. * */ - @Import(name="authorizedClientId") - private @Nullable Output authorizedClientId; + @Import(name="authorizedClientId", required=true) + private Output authorizedClientId; /** * @return The client ID of the application being authorized. Changing this field forces a new resource to be created. * */ - public Optional> authorizedClientId() { - return Optional.ofNullable(this.authorizedClientId); + public Output authorizedClientId() { + return this.authorizedClientId; } /** @@ -112,8 +64,6 @@ private ApplicationPreAuthorizedArgs() {} private ApplicationPreAuthorizedArgs(ApplicationPreAuthorizedArgs $) { this.applicationId = $.applicationId; - this.applicationObjectId = $.applicationObjectId; - this.authorizedAppId = $.authorizedAppId; this.authorizedClientId = $.authorizedClientId; this.permissionIds = $.permissionIds; } @@ -142,7 +92,7 @@ public Builder(ApplicationPreAuthorizedArgs defaults) { * @return builder * */ - public Builder applicationId(@Nullable Output applicationId) { + public Builder applicationId(Output applicationId) { $.applicationId = applicationId; return this; } @@ -157,71 +107,13 @@ public Builder applicationId(String applicationId) { return applicationId(Output.of(applicationId)); } - /** - * @param applicationObjectId The object ID of the application to which this pre-authorized application should be added - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(@Nullable Output applicationObjectId) { - $.applicationObjectId = applicationObjectId; - return this; - } - - /** - * @param applicationObjectId The object ID of the application to which this pre-authorized application should be added - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(String applicationObjectId) { - return applicationObjectId(Output.of(applicationObjectId)); - } - - /** - * @param authorizedAppId The application ID of the pre-authorized application - * - * @return builder - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder authorizedAppId(@Nullable Output authorizedAppId) { - $.authorizedAppId = authorizedAppId; - return this; - } - - /** - * @param authorizedAppId The application ID of the pre-authorized application - * - * @return builder - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder authorizedAppId(String authorizedAppId) { - return authorizedAppId(Output.of(authorizedAppId)); - } - /** * @param authorizedClientId The client ID of the application being authorized. Changing this field forces a new resource to be created. * * @return builder * */ - public Builder authorizedClientId(@Nullable Output authorizedClientId) { + public Builder authorizedClientId(Output authorizedClientId) { $.authorizedClientId = authorizedClientId; return this; } @@ -268,6 +160,12 @@ public Builder permissionIds(String... permissionIds) { } public ApplicationPreAuthorizedArgs build() { + if ($.applicationId == null) { + throw new MissingRequiredPropertyException("ApplicationPreAuthorizedArgs", "applicationId"); + } + if ($.authorizedClientId == null) { + throw new MissingRequiredPropertyException("ApplicationPreAuthorizedArgs", "authorizedClientId"); + } if ($.permissionIds == null) { throw new MissingRequiredPropertyException("ApplicationPreAuthorizedArgs", "permissionIds"); } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ConditionalAccessPolicy.java b/sdk/java/src/main/java/com/pulumi/azuread/ConditionalAccessPolicy.java index 0bcc1b85f..deb236c74 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ConditionalAccessPolicy.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ConditionalAccessPolicy.java @@ -278,6 +278,20 @@ public Output displayName() { public Output> grantControls() { return Codegen.optional(this.grantControls); } + /** + * The object ID of the policy + * + */ + @Export(name="objectId", refs={String.class}, tree="[0]") + private Output objectId; + + /** + * @return The object ID of the policy + * + */ + public Output objectId() { + return this.objectId; + } /** * A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/DirectoryRoleAssignment.java b/sdk/java/src/main/java/com/pulumi/azuread/DirectoryRoleAssignment.java index 45e1b7d6a..5d54ee091 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/DirectoryRoleAssignment.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/DirectoryRoleAssignment.java @@ -159,24 +159,6 @@ public class DirectoryRoleAssignment extends com.pulumi.resources.CustomResource public Output appScopeId() { return this.appScopeId; } - /** - * Identifier of the app-specific scope when the assignment scope is app-specific - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - @Export(name="appScopeObjectId", refs={String.class}, tree="[0]") - private Output appScopeObjectId; - - /** - * @return Identifier of the app-specific scope when the assignment scope is app-specific - * - */ - public Output appScopeObjectId() { - return this.appScopeObjectId; - } /** * Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. * @@ -191,20 +173,6 @@ public Output appScopeObjectId() { public Output directoryScopeId() { return this.directoryScopeId; } - /** - * Identifier of the directory object representing the scope of the assignment - * - */ - @Export(name="directoryScopeObjectId", refs={String.class}, tree="[0]") - private Output directoryScopeObjectId; - - /** - * @return Identifier of the directory object representing the scope of the assignment - * - */ - public Output directoryScopeObjectId() { - return this.directoryScopeObjectId; - } /** * The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/DirectoryRoleAssignmentArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/DirectoryRoleAssignmentArgs.java index 698cf2dae..f07b7dc7e 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/DirectoryRoleAssignmentArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/DirectoryRoleAssignmentArgs.java @@ -31,29 +31,6 @@ public Optional> appScopeId() { return Optional.ofNullable(this.appScopeId); } - /** - * Identifier of the app-specific scope when the assignment scope is app-specific - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - @Import(name="appScopeObjectId") - private @Nullable Output appScopeObjectId; - - /** - * @return Identifier of the app-specific scope when the assignment scope is app-specific - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - public Optional> appScopeObjectId() { - return Optional.ofNullable(this.appScopeObjectId); - } - /** * Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. * @@ -69,21 +46,6 @@ public Optional> directoryScopeId() { return Optional.ofNullable(this.directoryScopeId); } - /** - * Identifier of the directory object representing the scope of the assignment - * - */ - @Import(name="directoryScopeObjectId") - private @Nullable Output directoryScopeObjectId; - - /** - * @return Identifier of the directory object representing the scope of the assignment - * - */ - public Optional> directoryScopeObjectId() { - return Optional.ofNullable(this.directoryScopeObjectId); - } - /** * The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. * @@ -118,9 +80,7 @@ private DirectoryRoleAssignmentArgs() {} private DirectoryRoleAssignmentArgs(DirectoryRoleAssignmentArgs $) { this.appScopeId = $.appScopeId; - this.appScopeObjectId = $.appScopeObjectId; this.directoryScopeId = $.directoryScopeId; - this.directoryScopeObjectId = $.directoryScopeObjectId; this.principalObjectId = $.principalObjectId; this.roleId = $.roleId; } @@ -164,35 +124,6 @@ public Builder appScopeId(String appScopeId) { return appScopeId(Output.of(appScopeId)); } - /** - * @param appScopeObjectId Identifier of the app-specific scope when the assignment scope is app-specific - * - * @return builder - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - public Builder appScopeObjectId(@Nullable Output appScopeObjectId) { - $.appScopeObjectId = appScopeObjectId; - return this; - } - - /** - * @param appScopeObjectId Identifier of the app-specific scope when the assignment scope is app-specific - * - * @return builder - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - public Builder appScopeObjectId(String appScopeObjectId) { - return appScopeObjectId(Output.of(appScopeObjectId)); - } - /** * @param directoryScopeId Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. * @@ -214,27 +145,6 @@ public Builder directoryScopeId(String directoryScopeId) { return directoryScopeId(Output.of(directoryScopeId)); } - /** - * @param directoryScopeObjectId Identifier of the directory object representing the scope of the assignment - * - * @return builder - * - */ - public Builder directoryScopeObjectId(@Nullable Output directoryScopeObjectId) { - $.directoryScopeObjectId = directoryScopeObjectId; - return this; - } - - /** - * @param directoryScopeObjectId Identifier of the directory object representing the scope of the assignment - * - * @return builder - * - */ - public Builder directoryScopeObjectId(String directoryScopeObjectId) { - return directoryScopeObjectId(Output.of(directoryScopeObjectId)); - } - /** * @param principalObjectId The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipal.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipal.java index 85884edd4..a32d224ae 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipal.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipal.java @@ -293,24 +293,6 @@ public Output> appRoleIds() { public Output> appRoles() { return this.appRoles; } - /** - * The application ID (client ID) of the application for which to create a service principal - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Export(name="applicationId", refs={String.class}, tree="[0]") - private Output applicationId; - - /** - * @return The application ID (client ID) of the application for which to create a service principal - * - */ - public Output applicationId() { - return this.applicationId; - } /** * The tenant ID where the associated application is registered. * @@ -672,7 +654,7 @@ public ServicePrincipal(java.lang.String name) { * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. */ - public ServicePrincipal(java.lang.String name, @Nullable ServicePrincipalArgs args) { + public ServicePrincipal(java.lang.String name, ServicePrincipalArgs args) { this(name, args, null); } /** @@ -681,7 +663,7 @@ public ServicePrincipal(java.lang.String name, @Nullable ServicePrincipalArgs ar * @param args The arguments to use to populate this resource's properties. * @param options A bag of options that control this resource's behavior. */ - public ServicePrincipal(java.lang.String name, @Nullable ServicePrincipalArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + public ServicePrincipal(java.lang.String name, ServicePrincipalArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azuread:index/servicePrincipal:ServicePrincipal", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); } @@ -689,7 +671,7 @@ private ServicePrincipal(java.lang.String name, Output id, @Nu super("azuread:index/servicePrincipal:ServicePrincipal", name, state, makeResourceOptions(options, id), false); } - private static ServicePrincipalArgs makeArgs(@Nullable ServicePrincipalArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + private static ServicePrincipalArgs makeArgs(ServicePrincipalArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { if (options != null && options.getUrn().isPresent()) { return null; } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalArgs.java index 5f950939b..d24ee8f96 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalArgs.java @@ -8,6 +8,7 @@ import com.pulumi.azuread.inputs.ServicePrincipalSamlSingleSignOnArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.Boolean; import java.lang.String; import java.util.List; @@ -65,42 +66,19 @@ public Optional> appRoleAssignmentRequired() { return Optional.ofNullable(this.appRoleAssignmentRequired); } - /** - * The application ID (client ID) of the application for which to create a service principal - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationId") - private @Nullable Output applicationId; - - /** - * @return The application ID (client ID) of the application for which to create a service principal - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - /** * The client ID of the application for which to create a service principal. * */ - @Import(name="clientId") - private @Nullable Output clientId; + @Import(name="clientId", required=true) + private Output clientId; /** * @return The client ID of the application for which to create a service principal. * */ - public Optional> clientId() { - return Optional.ofNullable(this.clientId); + public Output clientId() { + return this.clientId; } /** @@ -290,7 +268,6 @@ private ServicePrincipalArgs(ServicePrincipalArgs $) { this.accountEnabled = $.accountEnabled; this.alternativeNames = $.alternativeNames; this.appRoleAssignmentRequired = $.appRoleAssignmentRequired; - this.applicationId = $.applicationId; this.clientId = $.clientId; this.description = $.description; this.featureTags = $.featureTags; @@ -396,42 +373,13 @@ public Builder appRoleAssignmentRequired(Boolean appRoleAssignmentRequired) { return appRoleAssignmentRequired(Output.of(appRoleAssignmentRequired)); } - /** - * @param applicationId The application ID (client ID) of the application for which to create a service principal - * - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(@Nullable Output applicationId) { - $.applicationId = applicationId; - return this; - } - - /** - * @param applicationId The application ID (client ID) of the application for which to create a service principal - * - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(String applicationId) { - return applicationId(Output.of(applicationId)); - } - /** * @param clientId The client ID of the application for which to create a service principal. * * @return builder * */ - public Builder clientId(@Nullable Output clientId) { + public Builder clientId(Output clientId) { $.clientId = clientId; return this; } @@ -752,6 +700,9 @@ public Builder useExisting(Boolean useExisting) { } public ServicePrincipalArgs build() { + if ($.clientId == null) { + throw new MissingRequiredPropertyException("ServicePrincipalArgs", "clientId"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalCertificate.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalCertificate.java index b56661a6c..057d3af3e 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalCertificate.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalCertificate.java @@ -52,7 +52,7 @@ * .build()); * * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .applicationId(example.applicationId()) + * .clientId(example.clientId()) * .build()); * * var exampleServicePrincipalCertificate = new ServicePrincipalCertificate("exampleServicePrincipalCertificate", ServicePrincipalCertificateArgs.builder() @@ -104,7 +104,7 @@ * .build()); * * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .applicationId(example.applicationId()) + * .clientId(example.clientId()) * .build()); * * var exampleServicePrincipalCertificate = new ServicePrincipalCertificate("exampleServicePrincipalCertificate", ServicePrincipalCertificateArgs.builder() @@ -175,7 +175,11 @@ public Output endDate() { * * > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Export(name="endDateRelative", refs={String.class}, tree="[0]") private Output endDateRelative; @@ -203,14 +207,14 @@ public Output keyId() { return this.keyId; } /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ @Export(name="servicePrincipalId", refs={String.class}, tree="[0]") private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalCertificateArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalCertificateArgs.java index 0ded16ccb..84fa61dac 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalCertificateArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalCertificateArgs.java @@ -55,7 +55,11 @@ public Optional> endDate() { * * > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Import(name="endDateRelative") private @Nullable Output endDateRelative; @@ -64,7 +68,11 @@ public Optional> endDate() { * * > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Optional> endDateRelative() { return Optional.ofNullable(this.endDateRelative); } @@ -85,14 +93,14 @@ public Optional> keyId() { } /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId", required=true) private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { @@ -228,7 +236,11 @@ public Builder endDate(String endDate) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(@Nullable Output endDateRelative) { $.endDateRelative = endDateRelative; return this; @@ -241,7 +253,11 @@ public Builder endDateRelative(@Nullable Output endDateRelative) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(String endDateRelative) { return endDateRelative(Output.of(endDateRelative)); } @@ -268,7 +284,7 @@ public Builder keyId(String keyId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * * @return builder * @@ -279,7 +295,7 @@ public Builder servicePrincipalId(Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalClaimsMappingPolicyAssignment.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalClaimsMappingPolicyAssignment.java index e63b9c0e5..6f02d9e5c 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalClaimsMappingPolicyAssignment.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalClaimsMappingPolicyAssignment.java @@ -86,14 +86,14 @@ public Output claimsMappingPolicyId() { return this.claimsMappingPolicyId; } /** - * The object ID of the service principal for the policy assignment. + * The ID of the service principal for the policy assignment. * */ @Export(name="servicePrincipalId", refs={String.class}, tree="[0]") private Output servicePrincipalId; /** - * @return The object ID of the service principal for the policy assignment. + * @return The ID of the service principal for the policy assignment. * */ public Output servicePrincipalId() { diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalClaimsMappingPolicyAssignmentArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalClaimsMappingPolicyAssignmentArgs.java index 2afba987d..9453d47c5 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalClaimsMappingPolicyAssignmentArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalClaimsMappingPolicyAssignmentArgs.java @@ -30,14 +30,14 @@ public Output claimsMappingPolicyId() { } /** - * The object ID of the service principal for the policy assignment. + * The ID of the service principal for the policy assignment. * */ @Import(name="servicePrincipalId", required=true) private Output servicePrincipalId; /** - * @return The object ID of the service principal for the policy assignment. + * @return The ID of the service principal for the policy assignment. * */ public Output servicePrincipalId() { @@ -91,7 +91,7 @@ public Builder claimsMappingPolicyId(String claimsMappingPolicyId) { } /** - * @param servicePrincipalId The object ID of the service principal for the policy assignment. + * @param servicePrincipalId The ID of the service principal for the policy assignment. * * @return builder * @@ -102,7 +102,7 @@ public Builder servicePrincipalId(Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for the policy assignment. + * @param servicePrincipalId The ID of the service principal for the policy assignment. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalDelegatedPermissionGrant.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalDelegatedPermissionGrant.java index 7981f1fec..fc52eae74 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalDelegatedPermissionGrant.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalDelegatedPermissionGrant.java @@ -83,7 +83,7 @@ * .build()); * * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(example.applicationId()) + * .clientId(example.clientId()) * .build()); * * var exampleServicePrincipalDelegatedPermissionGrant = new ServicePrincipalDelegatedPermissionGrant("exampleServicePrincipalDelegatedPermissionGrant", ServicePrincipalDelegatedPermissionGrantArgs.builder() @@ -157,7 +157,7 @@ * .build()); * * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(example.applicationId()) + * .clientId(example.clientId()) * .build()); * * var exampleUser = new User("exampleUser", UserArgs.builder() diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalPassword.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalPassword.java index f391a8a5a..8c1c15eac 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalPassword.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalPassword.java @@ -57,7 +57,7 @@ * .build()); * * var exampleServicePrincipalPassword = new ServicePrincipalPassword("exampleServicePrincipalPassword", ServicePrincipalPasswordArgs.builder() - * .servicePrincipalId(exampleServicePrincipal.objectId()) + * .servicePrincipalId(exampleServicePrincipal.id()) * .build()); * * } @@ -110,7 +110,7 @@ * .build()); * * var exampleServicePrincipalPassword = new ServicePrincipalPassword("exampleServicePrincipalPassword", ServicePrincipalPasswordArgs.builder() - * .servicePrincipalId(exampleServicePrincipal.objectId()) + * .servicePrincipalId(exampleServicePrincipal.id()) * .rotateWhenChanged(Map.of("rotation", exampleRotating.id())) * .build()); * @@ -158,7 +158,11 @@ public Output endDate() { /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Export(name="endDateRelative", refs={String.class}, tree="[0]") private Output endDateRelative; @@ -198,14 +202,14 @@ public Output>> rotateWhenChanged() { return Codegen.optional(this.rotateWhenChanged); } /** - * The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * */ @Export(name="servicePrincipalId", refs={String.class}, tree="[0]") private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalPasswordArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalPasswordArgs.java index 2699b8d47..7d53a363e 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalPasswordArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalPasswordArgs.java @@ -50,14 +50,22 @@ public Optional> endDate() { /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Import(name="endDateRelative") private @Nullable Output endDateRelative; /** * @return A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Optional> endDateRelative() { return Optional.ofNullable(this.endDateRelative); } @@ -78,14 +86,14 @@ public Optional>> rotateWhenChanged() { } /** - * The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId", required=true) private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { @@ -183,7 +191,11 @@ public Builder endDate(String endDate) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(@Nullable Output endDateRelative) { $.endDateRelative = endDateRelative; return this; @@ -194,7 +206,11 @@ public Builder endDateRelative(@Nullable Output endDateRelative) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(String endDateRelative) { return endDateRelative(Output.of(endDateRelative)); } @@ -221,7 +237,7 @@ public Builder rotateWhenChanged(Map rotateWhenChanged) { } /** - * @param servicePrincipalId The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * * @return builder * @@ -232,7 +248,7 @@ public Builder servicePrincipalId(Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalTokenSigningCertificate.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalTokenSigningCertificate.java index 7ae102373..5edc78ae4 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalTokenSigningCertificate.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalTokenSigningCertificate.java @@ -51,7 +51,7 @@ * .build()); * * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(example.applicationId()) + * .clientId(example.clientId()) * .build()); * * var exampleServicePrincipalTokenSigningCertificate = new ServicePrincipalTokenSigningCertificate("exampleServicePrincipalTokenSigningCertificate", ServicePrincipalTokenSigningCertificateArgs.builder() @@ -98,7 +98,7 @@ * .build()); * * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(example.applicationId()) + * .clientId(example.clientId()) * .build()); * * var exampleServicePrincipalTokenSigningCertificate = new ServicePrincipalTokenSigningCertificate("exampleServicePrincipalTokenSigningCertificate", ServicePrincipalTokenSigningCertificateArgs.builder() @@ -173,14 +173,14 @@ public Output keyId() { return this.keyId; } /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ @Export(name="servicePrincipalId", refs={String.class}, tree="[0]") private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { diff --git a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalTokenSigningCertificateArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalTokenSigningCertificateArgs.java index 6a498b085..99bf07b80 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalTokenSigningCertificateArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/ServicePrincipalTokenSigningCertificateArgs.java @@ -51,14 +51,14 @@ public Optional> endDate() { } /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId", required=true) private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { @@ -138,7 +138,7 @@ public Builder endDate(String endDate) { } /** - * @param servicePrincipalId The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * * @return builder * @@ -149,7 +149,7 @@ public Builder servicePrincipalId(Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJob.java b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJob.java index 9f3dab75e..ce957382e 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJob.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJob.java @@ -40,11 +40,9 @@ * import com.pulumi.core.Output; * import com.pulumi.azuread.AzureadFunctions; * import com.pulumi.azuread.inputs.GetApplicationTemplateArgs; - * import com.pulumi.azuread.Application; - * import com.pulumi.azuread.ApplicationArgs; - * import com.pulumi.azuread.inputs.ApplicationFeatureTagArgs; - * import com.pulumi.azuread.ServicePrincipal; - * import com.pulumi.azuread.ServicePrincipalArgs; + * import com.pulumi.azuread.ApplicationFromTemplate; + * import com.pulumi.azuread.ApplicationFromTemplateArgs; + * import com.pulumi.azuread.inputs.GetServicePrincipalArgs; * import com.pulumi.azuread.SynchronizationSecret; * import com.pulumi.azuread.SynchronizationSecretArgs; * import com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs; @@ -67,22 +65,17 @@ * .displayName("Azure Databricks SCIM Provisioning Connector") * .build()); * - * var exampleApplication = new Application("exampleApplication", ApplicationArgs.builder() + * var exampleApplicationFromTemplate = new ApplicationFromTemplate("exampleApplicationFromTemplate", ApplicationFromTemplateArgs.builder() * .displayName("example") * .templateId(example.applyValue(getApplicationTemplateResult -> getApplicationTemplateResult.templateId())) - * .featureTags(ApplicationFeatureTagArgs.builder() - * .enterprise(true) - * .gallery(true) - * .build()) * .build()); * - * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(exampleApplication.applicationId()) - * .useExisting(true) + * final var exampleGetServicePrincipal = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder() + * .objectId(exampleApplicationFromTemplate.servicePrincipalObjectId()) * .build()); * * var exampleSynchronizationSecret = new SynchronizationSecret("exampleSynchronizationSecret", SynchronizationSecretArgs.builder() - * .servicePrincipalId(exampleServicePrincipal.id()) + * .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult).applyValue(exampleGetServicePrincipal -> exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult.id()))) * .credentials( * SynchronizationSecretCredentialArgs.builder() * .key("BaseAddress") @@ -95,7 +88,7 @@ * .build()); * * var exampleSynchronizationJob = new SynchronizationJob("exampleSynchronizationJob", SynchronizationJobArgs.builder() - * .servicePrincipalId(exampleServicePrincipal.id()) + * .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult).applyValue(exampleGetServicePrincipal -> exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult.id()))) * .templateId("dataBricks") * .enabled(true) * .build()); @@ -120,14 +113,14 @@ @ResourceType(type="azuread:index/synchronizationJob:SynchronizationJob") public class SynchronizationJob extends com.pulumi.resources.CustomResource { /** - * Whether or not the provisioning job is enabled. Default state is `true`. + * Whether the provisioning job is enabled. Default state is `true`. * */ @Export(name="enabled", refs={Boolean.class}, tree="[0]") private Output enabled; /** - * @return Whether or not the provisioning job is enabled. Default state is `true`. + * @return Whether the provisioning job is enabled. Default state is `true`. * */ public Output> enabled() { @@ -148,14 +141,14 @@ public Output> schedules() { return this.schedules; } /** - * The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * */ @Export(name="servicePrincipalId", refs={String.class}, tree="[0]") private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { diff --git a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobArgs.java index e9d12146e..825cf1be5 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobArgs.java @@ -18,14 +18,14 @@ public final class SynchronizationJobArgs extends com.pulumi.resources.ResourceA public static final SynchronizationJobArgs Empty = new SynchronizationJobArgs(); /** - * Whether or not the provisioning job is enabled. Default state is `true`. + * Whether the provisioning job is enabled. Default state is `true`. * */ @Import(name="enabled") private @Nullable Output enabled; /** - * @return Whether or not the provisioning job is enabled. Default state is `true`. + * @return Whether the provisioning job is enabled. Default state is `true`. * */ public Optional> enabled() { @@ -33,14 +33,14 @@ public Optional> enabled() { } /** - * The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId", required=true) private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { @@ -89,7 +89,7 @@ public Builder(SynchronizationJobArgs defaults) { } /** - * @param enabled Whether or not the provisioning job is enabled. Default state is `true`. + * @param enabled Whether the provisioning job is enabled. Default state is `true`. * * @return builder * @@ -100,7 +100,7 @@ public Builder enabled(@Nullable Output enabled) { } /** - * @param enabled Whether or not the provisioning job is enabled. Default state is `true`. + * @param enabled Whether the provisioning job is enabled. Default state is `true`. * * @return builder * @@ -110,7 +110,7 @@ public Builder enabled(Boolean enabled) { } /** - * @param servicePrincipalId The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * * @return builder * @@ -121,7 +121,7 @@ public Builder servicePrincipalId(Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobProvisionOnDemand.java b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobProvisionOnDemand.java index bd4b075a7..5a9d79b8e 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobProvisionOnDemand.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobProvisionOnDemand.java @@ -42,11 +42,9 @@ * import com.pulumi.azuread.Group; * import com.pulumi.azuread.GroupArgs; * import com.pulumi.azuread.inputs.GetApplicationTemplateArgs; - * import com.pulumi.azuread.Application; - * import com.pulumi.azuread.ApplicationArgs; - * import com.pulumi.azuread.inputs.ApplicationFeatureTagArgs; - * import com.pulumi.azuread.ServicePrincipal; - * import com.pulumi.azuread.ServicePrincipalArgs; + * import com.pulumi.azuread.ApplicationFromTemplate; + * import com.pulumi.azuread.ApplicationFromTemplateArgs; + * import com.pulumi.azuread.inputs.GetServicePrincipalArgs; * import com.pulumi.azuread.SynchronizationSecret; * import com.pulumi.azuread.SynchronizationSecretArgs; * import com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs; @@ -80,22 +78,17 @@ * .displayName("Azure Databricks SCIM Provisioning Connector") * .build()); * - * var exampleApplication = new Application("exampleApplication", ApplicationArgs.builder() + * var exampleApplicationFromTemplate = new ApplicationFromTemplate("exampleApplicationFromTemplate", ApplicationFromTemplateArgs.builder() * .displayName("example") * .templateId(example.applyValue(getApplicationTemplateResult -> getApplicationTemplateResult.templateId())) - * .featureTags(ApplicationFeatureTagArgs.builder() - * .enterprise(true) - * .gallery(true) - * .build()) * .build()); * - * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(exampleApplication.clientId()) - * .useExisting(true) + * final var exampleGetServicePrincipal = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder() + * .objectId(exampleApplicationFromTemplate.servicePrincipalObjectId()) * .build()); * * var exampleSynchronizationSecret = new SynchronizationSecret("exampleSynchronizationSecret", SynchronizationSecretArgs.builder() - * .servicePrincipalId(exampleServicePrincipal.id()) + * .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult).applyValue(exampleGetServicePrincipal -> exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult.id()))) * .credentials( * SynchronizationSecretCredentialArgs.builder() * .key("BaseAddress") @@ -108,13 +101,13 @@ * .build()); * * var exampleSynchronizationJob = new SynchronizationJob("exampleSynchronizationJob", SynchronizationJobArgs.builder() - * .servicePrincipalId(exampleServicePrincipal.id()) + * .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult).applyValue(exampleGetServicePrincipal -> exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult.id()))) * .templateId("dataBricks") * .enabled(true) * .build()); * * var exampleSynchronizationJobProvisionOnDemand = new SynchronizationJobProvisionOnDemand("exampleSynchronizationJobProvisionOnDemand", SynchronizationJobProvisionOnDemandArgs.builder() - * .servicePrincipalId(exampleServicePrincipal.id()) + * .servicePrincipalId(exampleSynchronizationJob.servicePrincipalId()) * .synchronizationJobId(exampleSynchronizationJob.id()) * .parameters(SynchronizationJobProvisionOnDemandParameterArgs.builder() * .ruleId("") @@ -153,28 +146,28 @@ public Output> parameters() { return this.parameters; } /** - * The object ID of the service principal for the synchronization job. + * The ID of the service principal for the synchronization job. * */ @Export(name="servicePrincipalId", refs={String.class}, tree="[0]") private Output servicePrincipalId; /** - * @return The object ID of the service principal for the synchronization job. + * @return The ID of the service principal for the synchronization job. * */ public Output servicePrincipalId() { return this.servicePrincipalId; } /** - * Identifier of the synchronization template this job is based on. + * The ID of the synchronization job. * */ @Export(name="synchronizationJobId", refs={String.class}, tree="[0]") private Output synchronizationJobId; /** - * @return Identifier of the synchronization template this job is based on. + * @return The ID of the synchronization job. * */ public Output synchronizationJobId() { diff --git a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobProvisionOnDemandArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobProvisionOnDemandArgs.java index ac7e4ac42..186ee16ef 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobProvisionOnDemandArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationJobProvisionOnDemandArgs.java @@ -35,14 +35,14 @@ public Output> parameters } /** - * The object ID of the service principal for the synchronization job. + * The ID of the service principal for the synchronization job. * */ @Import(name="servicePrincipalId", required=true) private Output servicePrincipalId; /** - * @return The object ID of the service principal for the synchronization job. + * @return The ID of the service principal for the synchronization job. * */ public Output servicePrincipalId() { @@ -50,14 +50,14 @@ public Output servicePrincipalId() { } /** - * Identifier of the synchronization template this job is based on. + * The ID of the synchronization job. * */ @Import(name="synchronizationJobId", required=true) private Output synchronizationJobId; /** - * @return Identifier of the synchronization template this job is based on. + * @return The ID of the synchronization job. * */ public Output synchronizationJobId() { @@ -130,7 +130,7 @@ public Builder parameters(SynchronizationJobProvisionOnDemandParameterArgs... pa } /** - * @param servicePrincipalId The object ID of the service principal for the synchronization job. + * @param servicePrincipalId The ID of the service principal for the synchronization job. * * @return builder * @@ -141,7 +141,7 @@ public Builder servicePrincipalId(Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for the synchronization job. + * @param servicePrincipalId The ID of the service principal for the synchronization job. * * @return builder * @@ -151,7 +151,7 @@ public Builder servicePrincipalId(String servicePrincipalId) { } /** - * @param synchronizationJobId Identifier of the synchronization template this job is based on. + * @param synchronizationJobId The ID of the synchronization job. * * @return builder * @@ -162,7 +162,7 @@ public Builder synchronizationJobId(Output synchronizationJobId) { } /** - * @param synchronizationJobId Identifier of the synchronization template this job is based on. + * @param synchronizationJobId The ID of the synchronization job. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationSecret.java b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationSecret.java index 0c1f81150..32a92a7c3 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationSecret.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationSecret.java @@ -39,11 +39,9 @@ * import com.pulumi.core.Output; * import com.pulumi.azuread.AzureadFunctions; * import com.pulumi.azuread.inputs.GetApplicationTemplateArgs; - * import com.pulumi.azuread.Application; - * import com.pulumi.azuread.ApplicationArgs; - * import com.pulumi.azuread.inputs.ApplicationFeatureTagArgs; - * import com.pulumi.azuread.ServicePrincipal; - * import com.pulumi.azuread.ServicePrincipalArgs; + * import com.pulumi.azuread.ApplicationFromTemplate; + * import com.pulumi.azuread.ApplicationFromTemplateArgs; + * import com.pulumi.azuread.inputs.GetServicePrincipalArgs; * import com.pulumi.azuread.SynchronizationSecret; * import com.pulumi.azuread.SynchronizationSecretArgs; * import com.pulumi.azuread.inputs.SynchronizationSecretCredentialArgs; @@ -64,22 +62,17 @@ * .displayName("Azure Databricks SCIM Provisioning Connector") * .build()); * - * var exampleApplication = new Application("exampleApplication", ApplicationArgs.builder() + * var exampleApplicationFromTemplate = new ApplicationFromTemplate("exampleApplicationFromTemplate", ApplicationFromTemplateArgs.builder() * .displayName("example") * .templateId(example.applyValue(getApplicationTemplateResult -> getApplicationTemplateResult.templateId())) - * .featureTags(ApplicationFeatureTagArgs.builder() - * .enterprise(true) - * .gallery(true) - * .build()) * .build()); * - * var exampleServicePrincipal = new ServicePrincipal("exampleServicePrincipal", ServicePrincipalArgs.builder() - * .clientId(exampleApplication.applicationId()) - * .useExisting(true) + * final var exampleGetServicePrincipal = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder() + * .objectId(exampleApplicationFromTemplate.servicePrincipalObjectId()) * .build()); * * var exampleSynchronizationSecret = new SynchronizationSecret("exampleSynchronizationSecret", SynchronizationSecretArgs.builder() - * .servicePrincipalId(exampleServicePrincipal.id()) + * .servicePrincipalId(exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult).applyValue(exampleGetServicePrincipal -> exampleGetServicePrincipal.applyValue(getServicePrincipalResult -> getServicePrincipalResult.id()))) * .credentials( * SynchronizationSecretCredentialArgs.builder() * .key("BaseAddress") @@ -119,14 +112,14 @@ public Output>> credentials() { return Codegen.optional(this.credentials); } /** - * The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * */ @Export(name="servicePrincipalId", refs={String.class}, tree="[0]") private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { diff --git a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationSecretArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationSecretArgs.java index aefc562a1..b2665c27c 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationSecretArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/SynchronizationSecretArgs.java @@ -34,14 +34,14 @@ public Optional>> credentials() } /** - * The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId", required=true) private Output servicePrincipalId; /** - * @return The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * */ public Output servicePrincipalId() { @@ -105,7 +105,7 @@ public Builder credentials(SynchronizationSecretCredentialArgs... credentials) { } /** - * @param servicePrincipalId The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * * @return builder * @@ -116,7 +116,7 @@ public Builder servicePrincipalId(Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationApiArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationApiArgs.java index a63419fc7..204ed3e79 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationApiArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationApiArgs.java @@ -20,14 +20,14 @@ public final class ApplicationApiArgs extends com.pulumi.resources.ResourceArgs public static final ApplicationApiArgs Empty = new ApplicationApiArgs(); /** - * A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. * */ @Import(name="knownClientApplications") private @Nullable Output> knownClientApplications; /** - * @return A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * @return A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. * */ public Optional>> knownClientApplications() { @@ -107,7 +107,7 @@ public Builder(ApplicationApiArgs defaults) { } /** - * @param knownClientApplications A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * @param knownClientApplications A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. * * @return builder * @@ -118,7 +118,7 @@ public Builder knownClientApplications(@Nullable Output> knownClien } /** - * @param knownClientApplications A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * @param knownClientApplications A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. * * @return builder * @@ -128,7 +128,7 @@ public Builder knownClientApplications(List knownClientApplications) { } /** - * @param knownClientApplications A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * @param knownClientApplications A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationCertificateState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationCertificateState.java index da2bdf468..6adc48cc1 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationCertificateState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationCertificateState.java @@ -30,29 +30,6 @@ public Optional> applicationId() { return Optional.ofNullable(this.applicationId); } - /** - * The object ID of the application for which this certificate should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationObjectId") - private @Nullable Output applicationObjectId; - - /** - * @return The object ID of the application for which this certificate should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationObjectId() { - return Optional.ofNullable(this.applicationObjectId); - } - /** * Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. * @@ -92,7 +69,11 @@ public Optional> endDate() { * * > One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Import(name="endDateRelative") private @Nullable Output endDateRelative; @@ -101,7 +82,11 @@ public Optional> endDate() { * * > One of `end_date` or `end_date_relative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Optional> endDateRelative() { return Optional.ofNullable(this.endDateRelative); } @@ -170,7 +155,6 @@ private ApplicationCertificateState() {} private ApplicationCertificateState(ApplicationCertificateState $) { this.applicationId = $.applicationId; - this.applicationObjectId = $.applicationObjectId; this.encoding = $.encoding; this.endDate = $.endDate; this.endDateRelative = $.endDateRelative; @@ -219,35 +203,6 @@ public Builder applicationId(String applicationId) { return applicationId(Output.of(applicationId)); } - /** - * @param applicationObjectId The object ID of the application for which this certificate should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(@Nullable Output applicationObjectId) { - $.applicationObjectId = applicationObjectId; - return this; - } - - /** - * @param applicationObjectId The object ID of the application for which this certificate should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(String applicationObjectId) { - return applicationObjectId(Output.of(applicationObjectId)); - } - /** * @param encoding Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. * @@ -301,7 +256,11 @@ public Builder endDate(String endDate) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(@Nullable Output endDateRelative) { $.endDateRelative = endDateRelative; return this; @@ -314,7 +273,11 @@ public Builder endDateRelative(@Nullable Output endDateRelative) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(String endDateRelative) { return endDateRelative(Output.of(endDateRelative)); } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationFederatedIdentityCredentialState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationFederatedIdentityCredentialState.java index 021c85eb0..170294179 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationFederatedIdentityCredentialState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationFederatedIdentityCredentialState.java @@ -31,29 +31,6 @@ public Optional> applicationId() { return Optional.ofNullable(this.applicationId); } - /** - * The object ID of the application for which this federated identity credential should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationObjectId") - private @Nullable Output applicationObjectId; - - /** - * @return The object ID of the application for which this federated identity credential should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationObjectId() { - return Optional.ofNullable(this.applicationObjectId); - } - /** * List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. * @@ -148,7 +125,6 @@ private ApplicationFederatedIdentityCredentialState() {} private ApplicationFederatedIdentityCredentialState(ApplicationFederatedIdentityCredentialState $) { this.applicationId = $.applicationId; - this.applicationObjectId = $.applicationObjectId; this.audiences = $.audiences; this.credentialId = $.credentialId; this.description = $.description; @@ -196,35 +172,6 @@ public Builder applicationId(String applicationId) { return applicationId(Output.of(applicationId)); } - /** - * @param applicationObjectId The object ID of the application for which this federated identity credential should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(@Nullable Output applicationObjectId) { - $.applicationObjectId = applicationObjectId; - return this; - } - - /** - * @param applicationObjectId The object ID of the application for which this federated identity credential should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(String applicationObjectId) { - return applicationObjectId(Output.of(applicationObjectId)); - } - /** * @param audiences List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationPasswordState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationPasswordState.java index 7062ab2a6..8f093d14f 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationPasswordState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationPasswordState.java @@ -31,29 +31,6 @@ public Optional> applicationId() { return Optional.ofNullable(this.applicationId); } - /** - * The object ID of the application for which this password should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationObjectId") - private @Nullable Output applicationObjectId; - - /** - * @return The object ID of the application for which this password should be created - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationObjectId() { - return Optional.ofNullable(this.applicationObjectId); - } - /** * A display name for the password. Changing this field forces a new resource to be created. * @@ -87,14 +64,22 @@ public Optional> endDate() { /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Import(name="endDateRelative") private @Nullable Output endDateRelative; /** * @return A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Optional> endDateRelative() { return Optional.ofNullable(this.endDateRelative); } @@ -163,7 +148,6 @@ private ApplicationPasswordState() {} private ApplicationPasswordState(ApplicationPasswordState $) { this.applicationId = $.applicationId; - this.applicationObjectId = $.applicationObjectId; this.displayName = $.displayName; this.endDate = $.endDate; this.endDateRelative = $.endDateRelative; @@ -212,35 +196,6 @@ public Builder applicationId(String applicationId) { return applicationId(Output.of(applicationId)); } - /** - * @param applicationObjectId The object ID of the application for which this password should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(@Nullable Output applicationObjectId) { - $.applicationObjectId = applicationObjectId; - return this; - } - - /** - * @param applicationObjectId The object ID of the application for which this password should be created - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(String applicationObjectId) { - return applicationObjectId(Output.of(applicationObjectId)); - } - /** * @param displayName A display name for the password. Changing this field forces a new resource to be created. * @@ -288,7 +243,11 @@ public Builder endDate(String endDate) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(@Nullable Output endDateRelative) { $.endDateRelative = endDateRelative; return this; @@ -299,7 +258,11 @@ public Builder endDateRelative(@Nullable Output endDateRelative) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(String endDateRelative) { return endDateRelative(Output.of(endDateRelative)); } diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationPreAuthorizedState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationPreAuthorizedState.java index be647e5f3..e7997096d 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationPreAuthorizedState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationPreAuthorizedState.java @@ -31,52 +31,6 @@ public Optional> applicationId() { return Optional.ofNullable(this.applicationId); } - /** - * The object ID of the application to which this pre-authorized application should be added - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationObjectId") - private @Nullable Output applicationObjectId; - - /** - * @return The object ID of the application to which this pre-authorized application should be added - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationObjectId() { - return Optional.ofNullable(this.applicationObjectId); - } - - /** - * The application ID of the pre-authorized application - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="authorizedAppId") - private @Nullable Output authorizedAppId; - - /** - * @return The application ID of the pre-authorized application - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> authorizedAppId() { - return Optional.ofNullable(this.authorizedAppId); - } - /** * The client ID of the application being authorized. Changing this field forces a new resource to be created. * @@ -111,8 +65,6 @@ private ApplicationPreAuthorizedState() {} private ApplicationPreAuthorizedState(ApplicationPreAuthorizedState $) { this.applicationId = $.applicationId; - this.applicationObjectId = $.applicationObjectId; - this.authorizedAppId = $.authorizedAppId; this.authorizedClientId = $.authorizedClientId; this.permissionIds = $.permissionIds; } @@ -156,64 +108,6 @@ public Builder applicationId(String applicationId) { return applicationId(Output.of(applicationId)); } - /** - * @param applicationObjectId The object ID of the application to which this pre-authorized application should be added - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(@Nullable Output applicationObjectId) { - $.applicationObjectId = applicationObjectId; - return this; - } - - /** - * @param applicationObjectId The object ID of the application to which this pre-authorized application should be added - * - * @return builder - * - * @deprecated - * The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationObjectId(String applicationObjectId) { - return applicationObjectId(Output.of(applicationObjectId)); - } - - /** - * @param authorizedAppId The application ID of the pre-authorized application - * - * @return builder - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder authorizedAppId(@Nullable Output authorizedAppId) { - $.authorizedAppId = authorizedAppId; - return this; - } - - /** - * @param authorizedAppId The application ID of the pre-authorized application - * - * @return builder - * - * @deprecated - * The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder authorizedAppId(String authorizedAppId) { - return authorizedAppId(Output.of(authorizedAppId)); - } - /** * @param authorizedClientId The client ID of the application being authorized. Changing this field forces a new resource to be created. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationState.java index 2f55355df..3c46e20a9 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ApplicationState.java @@ -72,29 +72,6 @@ public Optional>> appRoles() { return Optional.ofNullable(this.appRoles); } - /** - * The Application ID (also called Client ID) - * - * @deprecated - * The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationId") - private @Nullable Output applicationId; - - /** - * @return The Application ID (also called Client ID) - * - * @deprecated - * The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - /** * The Client ID for the application. * @@ -605,7 +582,6 @@ private ApplicationState(ApplicationState $) { this.api = $.api; this.appRoleIds = $.appRoleIds; this.appRoles = $.appRoles; - this.applicationId = $.applicationId; this.clientId = $.clientId; this.description = $.description; this.deviceOnlyAuthEnabled = $.deviceOnlyAuthEnabled; @@ -731,35 +707,6 @@ public Builder appRoles(ApplicationAppRoleArgs... appRoles) { return appRoles(List.of(appRoles)); } - /** - * @param applicationId The Application ID (also called Client ID) - * - * @return builder - * - * @deprecated - * The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(@Nullable Output applicationId) { - $.applicationId = applicationId; - return this; - } - - /** - * @param applicationId The Application ID (also called Client ID) - * - * @return builder - * - * @deprecated - * The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(String applicationId) { - return applicationId(Output.of(applicationId)); - } - /** * @param clientId The Client ID for the application. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ConditionalAccessPolicyState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ConditionalAccessPolicyState.java index 69d0da743..4d1d08279 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ConditionalAccessPolicyState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ConditionalAccessPolicyState.java @@ -63,6 +63,21 @@ public Optional> grantControls( return Optional.ofNullable(this.grantControls); } + /** + * The object ID of the policy + * + */ + @Import(name="objectId") + private @Nullable Output objectId; + + /** + * @return The object ID of the policy + * + */ + public Optional> objectId() { + return Optional.ofNullable(this.objectId); + } + /** * A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in. * @@ -103,6 +118,7 @@ private ConditionalAccessPolicyState(ConditionalAccessPolicyState $) { this.conditions = $.conditions; this.displayName = $.displayName; this.grantControls = $.grantControls; + this.objectId = $.objectId; this.sessionControls = $.sessionControls; this.state = $.state; } @@ -188,6 +204,27 @@ public Builder grantControls(ConditionalAccessPolicyGrantControlsArgs grantContr return grantControls(Output.of(grantControls)); } + /** + * @param objectId The object ID of the policy + * + * @return builder + * + */ + public Builder objectId(@Nullable Output objectId) { + $.objectId = objectId; + return this; + } + + /** + * @param objectId The object ID of the policy + * + * @return builder + * + */ + public Builder objectId(String objectId) { + return objectId(Output.of(objectId)); + } + /** * @param sessionControls A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/DirectoryRoleAssignmentState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/DirectoryRoleAssignmentState.java index b24d95d48..2ce935293 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/DirectoryRoleAssignmentState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/DirectoryRoleAssignmentState.java @@ -30,29 +30,6 @@ public Optional> appScopeId() { return Optional.ofNullable(this.appScopeId); } - /** - * Identifier of the app-specific scope when the assignment scope is app-specific - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - @Import(name="appScopeObjectId") - private @Nullable Output appScopeObjectId; - - /** - * @return Identifier of the app-specific scope when the assignment scope is app-specific - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - public Optional> appScopeObjectId() { - return Optional.ofNullable(this.appScopeObjectId); - } - /** * Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. * @@ -68,21 +45,6 @@ public Optional> directoryScopeId() { return Optional.ofNullable(this.directoryScopeId); } - /** - * Identifier of the directory object representing the scope of the assignment - * - */ - @Import(name="directoryScopeObjectId") - private @Nullable Output directoryScopeObjectId; - - /** - * @return Identifier of the directory object representing the scope of the assignment - * - */ - public Optional> directoryScopeObjectId() { - return Optional.ofNullable(this.directoryScopeObjectId); - } - /** * The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. * @@ -117,9 +79,7 @@ private DirectoryRoleAssignmentState() {} private DirectoryRoleAssignmentState(DirectoryRoleAssignmentState $) { this.appScopeId = $.appScopeId; - this.appScopeObjectId = $.appScopeObjectId; this.directoryScopeId = $.directoryScopeId; - this.directoryScopeObjectId = $.directoryScopeObjectId; this.principalObjectId = $.principalObjectId; this.roleId = $.roleId; } @@ -163,35 +123,6 @@ public Builder appScopeId(String appScopeId) { return appScopeId(Output.of(appScopeId)); } - /** - * @param appScopeObjectId Identifier of the app-specific scope when the assignment scope is app-specific - * - * @return builder - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - public Builder appScopeObjectId(@Nullable Output appScopeObjectId) { - $.appScopeObjectId = appScopeObjectId; - return this; - } - - /** - * @param appScopeObjectId Identifier of the app-specific scope when the assignment scope is app-specific - * - * @return builder - * - * @deprecated - * `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider - * - */ - @Deprecated /* `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider */ - public Builder appScopeObjectId(String appScopeObjectId) { - return appScopeObjectId(Output.of(appScopeObjectId)); - } - /** * @param directoryScopeId Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. * @@ -213,27 +144,6 @@ public Builder directoryScopeId(String directoryScopeId) { return directoryScopeId(Output.of(directoryScopeId)); } - /** - * @param directoryScopeObjectId Identifier of the directory object representing the scope of the assignment - * - * @return builder - * - */ - public Builder directoryScopeObjectId(@Nullable Output directoryScopeObjectId) { - $.directoryScopeObjectId = directoryScopeObjectId; - return this; - } - - /** - * @param directoryScopeObjectId Identifier of the directory object representing the scope of the assignment - * - * @return builder - * - */ - public Builder directoryScopeObjectId(String directoryScopeObjectId) { - return directoryScopeObjectId(Output.of(directoryScopeObjectId)); - } - /** * @param principalObjectId The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetApplicationArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetApplicationArgs.java index 3fa1b3859..f4023f103 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetApplicationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetApplicationArgs.java @@ -15,25 +15,6 @@ public final class GetApplicationArgs extends com.pulumi.resources.InvokeArgs { public static final GetApplicationArgs Empty = new GetApplicationArgs(); - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationId") - private @Nullable Output applicationId; - - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - /** * Specifies the Client ID of the application. * @@ -101,7 +82,6 @@ public Optional> objectId() { private GetApplicationArgs() {} private GetApplicationArgs(GetApplicationArgs $) { - this.applicationId = $.applicationId; this.clientId = $.clientId; this.displayName = $.displayName; this.identifierUri = $.identifierUri; @@ -126,31 +106,6 @@ public Builder(GetApplicationArgs defaults) { $ = new GetApplicationArgs(Objects.requireNonNull(defaults)); } - /** - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(@Nullable Output applicationId) { - $.applicationId = applicationId; - return this; - } - - /** - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(String applicationId) { - return applicationId(Output.of(applicationId)); - } - /** * @param clientId Specifies the Client ID of the application. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetApplicationPlainArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetApplicationPlainArgs.java index f67ab2faf..f4eaf041f 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetApplicationPlainArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetApplicationPlainArgs.java @@ -14,25 +14,6 @@ public final class GetApplicationPlainArgs extends com.pulumi.resources.InvokeAr public static final GetApplicationPlainArgs Empty = new GetApplicationPlainArgs(); - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationId") - private @Nullable String applicationId; - - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional applicationId() { - return Optional.ofNullable(this.applicationId); - } - /** * Specifies the Client ID of the application. * @@ -100,7 +81,6 @@ public Optional objectId() { private GetApplicationPlainArgs() {} private GetApplicationPlainArgs(GetApplicationPlainArgs $) { - this.applicationId = $.applicationId; this.clientId = $.clientId; this.displayName = $.displayName; this.identifierUri = $.identifierUri; @@ -125,19 +105,6 @@ public Builder(GetApplicationPlainArgs defaults) { $ = new GetApplicationPlainArgs(Objects.requireNonNull(defaults)); } - /** - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(@Nullable String applicationId) { - $.applicationId = applicationId; - return this; - } - /** * @param clientId Specifies the Client ID of the application. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalArgs.java index aed0c641b..7f2537f1c 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalArgs.java @@ -15,25 +15,6 @@ public final class GetServicePrincipalArgs extends com.pulumi.resources.InvokeAr public static final GetServicePrincipalArgs Empty = new GetServicePrincipalArgs(); - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationId") - private @Nullable Output applicationId; - - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - /** * The client ID of the application associated with this service principal. * @@ -86,7 +67,6 @@ public Optional> objectId() { private GetServicePrincipalArgs() {} private GetServicePrincipalArgs(GetServicePrincipalArgs $) { - this.applicationId = $.applicationId; this.clientId = $.clientId; this.displayName = $.displayName; this.objectId = $.objectId; @@ -110,31 +90,6 @@ public Builder(GetServicePrincipalArgs defaults) { $ = new GetServicePrincipalArgs(Objects.requireNonNull(defaults)); } - /** - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(@Nullable Output applicationId) { - $.applicationId = applicationId; - return this; - } - - /** - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(String applicationId) { - return applicationId(Output.of(applicationId)); - } - /** * @param clientId The client ID of the application associated with this service principal. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalPlainArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalPlainArgs.java index 18f694763..b6e7d4ee0 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalPlainArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalPlainArgs.java @@ -14,25 +14,6 @@ public final class GetServicePrincipalPlainArgs extends com.pulumi.resources.Inv public static final GetServicePrincipalPlainArgs Empty = new GetServicePrincipalPlainArgs(); - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationId") - private @Nullable String applicationId; - - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional applicationId() { - return Optional.ofNullable(this.applicationId); - } - /** * The client ID of the application associated with this service principal. * @@ -85,7 +66,6 @@ public Optional objectId() { private GetServicePrincipalPlainArgs() {} private GetServicePrincipalPlainArgs(GetServicePrincipalPlainArgs $) { - this.applicationId = $.applicationId; this.clientId = $.clientId; this.displayName = $.displayName; this.objectId = $.objectId; @@ -109,19 +89,6 @@ public Builder(GetServicePrincipalPlainArgs defaults) { $ = new GetServicePrincipalPlainArgs(Objects.requireNonNull(defaults)); } - /** - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(@Nullable String applicationId) { - $.applicationId = applicationId; - return this; - } - /** * @param clientId The client ID of the application associated with this service principal. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalsArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalsArgs.java index 9c9ae4958..1fc28e649 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalsArgs.java @@ -17,29 +17,6 @@ public final class GetServicePrincipalsArgs extends com.pulumi.resources.InvokeA public static final GetServicePrincipalsArgs Empty = new GetServicePrincipalsArgs(); - /** - * A list of client IDs of the applications associated with the service principals. - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationIds") - private @Nullable Output> applicationIds; - - /** - * @return A list of client IDs of the applications associated with the service principals. - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional>> applicationIds() { - return Optional.ofNullable(this.applicationIds); - } - /** * A list of client IDs of the applications associated with the service principals. * @@ -122,7 +99,6 @@ public Optional> returnAll() { private GetServicePrincipalsArgs() {} private GetServicePrincipalsArgs(GetServicePrincipalsArgs $) { - this.applicationIds = $.applicationIds; this.clientIds = $.clientIds; this.displayNames = $.displayNames; this.ignoreMissing = $.ignoreMissing; @@ -148,49 +124,6 @@ public Builder(GetServicePrincipalsArgs defaults) { $ = new GetServicePrincipalsArgs(Objects.requireNonNull(defaults)); } - /** - * @param applicationIds A list of client IDs of the applications associated with the service principals. - * - * @return builder - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationIds(@Nullable Output> applicationIds) { - $.applicationIds = applicationIds; - return this; - } - - /** - * @param applicationIds A list of client IDs of the applications associated with the service principals. - * - * @return builder - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationIds(List applicationIds) { - return applicationIds(Output.of(applicationIds)); - } - - /** - * @param applicationIds A list of client IDs of the applications associated with the service principals. - * - * @return builder - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationIds(String... applicationIds) { - return applicationIds(List.of(applicationIds)); - } - /** * @param clientIds A list of client IDs of the applications associated with the service principals. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalsPlainArgs.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalsPlainArgs.java index 2b2ef2945..ce48940b0 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalsPlainArgs.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/GetServicePrincipalsPlainArgs.java @@ -16,29 +16,6 @@ public final class GetServicePrincipalsPlainArgs extends com.pulumi.resources.In public static final GetServicePrincipalsPlainArgs Empty = new GetServicePrincipalsPlainArgs(); - /** - * A list of client IDs of the applications associated with the service principals. - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationIds") - private @Nullable List applicationIds; - - /** - * @return A list of client IDs of the applications associated with the service principals. - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationIds() { - return Optional.ofNullable(this.applicationIds); - } - /** * A list of client IDs of the applications associated with the service principals. * @@ -121,7 +98,6 @@ public Optional returnAll() { private GetServicePrincipalsPlainArgs() {} private GetServicePrincipalsPlainArgs(GetServicePrincipalsPlainArgs $) { - this.applicationIds = $.applicationIds; this.clientIds = $.clientIds; this.displayNames = $.displayNames; this.ignoreMissing = $.ignoreMissing; @@ -147,35 +123,6 @@ public Builder(GetServicePrincipalsPlainArgs defaults) { $ = new GetServicePrincipalsPlainArgs(Objects.requireNonNull(defaults)); } - /** - * @param applicationIds A list of client IDs of the applications associated with the service principals. - * - * @return builder - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationIds(@Nullable List applicationIds) { - $.applicationIds = applicationIds; - return this; - } - - /** - * @param applicationIds A list of client IDs of the applications associated with the service principals. - * - * @return builder - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationIds(String... applicationIds) { - return applicationIds(List.of(applicationIds)); - } - /** * @param clientIds A list of client IDs of the applications associated with the service principals. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalCertificateState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalCertificateState.java index 1613808ad..feb84acb9 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalCertificateState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalCertificateState.java @@ -54,7 +54,11 @@ public Optional> endDate() { * * > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Import(name="endDateRelative") private @Nullable Output endDateRelative; @@ -63,7 +67,11 @@ public Optional> endDate() { * * > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Optional> endDateRelative() { return Optional.ofNullable(this.endDateRelative); } @@ -84,14 +92,14 @@ public Optional> keyId() { } /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId") private @Nullable Output servicePrincipalId; /** - * @return The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ public Optional> servicePrincipalId() { @@ -227,7 +235,11 @@ public Builder endDate(String endDate) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(@Nullable Output endDateRelative) { $.endDateRelative = endDateRelative; return this; @@ -240,7 +252,11 @@ public Builder endDateRelative(@Nullable Output endDateRelative) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(String endDateRelative) { return endDateRelative(Output.of(endDateRelative)); } @@ -267,7 +283,7 @@ public Builder keyId(String keyId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * * @return builder * @@ -278,7 +294,7 @@ public Builder servicePrincipalId(@Nullable Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalClaimsMappingPolicyAssignmentState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalClaimsMappingPolicyAssignmentState.java index 3da82b840..f3c7ed491 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalClaimsMappingPolicyAssignmentState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalClaimsMappingPolicyAssignmentState.java @@ -31,14 +31,14 @@ public Optional> claimsMappingPolicyId() { } /** - * The object ID of the service principal for the policy assignment. + * The ID of the service principal for the policy assignment. * */ @Import(name="servicePrincipalId") private @Nullable Output servicePrincipalId; /** - * @return The object ID of the service principal for the policy assignment. + * @return The ID of the service principal for the policy assignment. * */ public Optional> servicePrincipalId() { @@ -92,7 +92,7 @@ public Builder claimsMappingPolicyId(String claimsMappingPolicyId) { } /** - * @param servicePrincipalId The object ID of the service principal for the policy assignment. + * @param servicePrincipalId The ID of the service principal for the policy assignment. * * @return builder * @@ -103,7 +103,7 @@ public Builder servicePrincipalId(@Nullable Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for the policy assignment. + * @param servicePrincipalId The ID of the service principal for the policy assignment. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalPasswordState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalPasswordState.java index d73fd30a4..b0608f882 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalPasswordState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalPasswordState.java @@ -49,14 +49,22 @@ public Optional> endDate() { /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ @Import(name="endDateRelative") private @Nullable Output endDateRelative; /** * @return A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Optional> endDateRelative() { return Optional.ofNullable(this.endDateRelative); } @@ -92,14 +100,14 @@ public Optional>> rotateWhenChanged() { } /** - * The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId") private @Nullable Output servicePrincipalId; /** - * @return The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * */ public Optional> servicePrincipalId() { @@ -214,7 +222,11 @@ public Builder endDate(String endDate) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(@Nullable Output endDateRelative) { $.endDateRelative = endDateRelative; return this; @@ -225,7 +237,11 @@ public Builder endDateRelative(@Nullable Output endDateRelative) { * * @return builder * + * @deprecated + * The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. + * */ + @Deprecated /* The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property. */ public Builder endDateRelative(String endDateRelative) { return endDateRelative(Output.of(endDateRelative)); } @@ -273,7 +289,7 @@ public Builder rotateWhenChanged(Map rotateWhenChanged) { } /** - * @param servicePrincipalId The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * * @return builder * @@ -284,7 +300,7 @@ public Builder servicePrincipalId(@Nullable Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalState.java index d79075580..0a46565c1 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalState.java @@ -98,29 +98,6 @@ public Optional>> appRoles() { return Optional.ofNullable(this.appRoles); } - /** - * The application ID (client ID) of the application for which to create a service principal - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - @Import(name="applicationId") - private @Nullable Output applicationId; - - /** - * @return The application ID (client ID) of the application for which to create a service principal - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Optional> applicationId() { - return Optional.ofNullable(this.applicationId); - } - /** * The tenant ID where the associated application is registered. * @@ -505,7 +482,6 @@ private ServicePrincipalState(ServicePrincipalState $) { this.appRoleAssignmentRequired = $.appRoleAssignmentRequired; this.appRoleIds = $.appRoleIds; this.appRoles = $.appRoles; - this.applicationId = $.applicationId; this.applicationTenantId = $.applicationTenantId; this.clientId = $.clientId; this.description = $.description; @@ -675,35 +651,6 @@ public Builder appRoles(ServicePrincipalAppRoleArgs... appRoles) { return appRoles(List.of(appRoles)); } - /** - * @param applicationId The application ID (client ID) of the application for which to create a service principal - * - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(@Nullable Output applicationId) { - $.applicationId = applicationId; - return this; - } - - /** - * @param applicationId The application ID (client ID) of the application for which to create a service principal - * - * @return builder - * - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public Builder applicationId(String applicationId) { - return applicationId(Output.of(applicationId)); - } - /** * @param applicationTenantId The tenant ID where the associated application is registered. * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalTokenSigningCertificateState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalTokenSigningCertificateState.java index bd66877e6..62710186b 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalTokenSigningCertificateState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/ServicePrincipalTokenSigningCertificateState.java @@ -65,14 +65,14 @@ public Optional> keyId() { } /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId") private @Nullable Output servicePrincipalId; /** - * @return The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * */ public Optional> servicePrincipalId() { @@ -222,7 +222,7 @@ public Builder keyId(String keyId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * * @return builder * @@ -233,7 +233,7 @@ public Builder servicePrincipalId(@Nullable Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationJobProvisionOnDemandState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationJobProvisionOnDemandState.java index 017b82bd3..f207ad5e3 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationJobProvisionOnDemandState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationJobProvisionOnDemandState.java @@ -34,14 +34,14 @@ public Optional>> } /** - * The object ID of the service principal for the synchronization job. + * The ID of the service principal for the synchronization job. * */ @Import(name="servicePrincipalId") private @Nullable Output servicePrincipalId; /** - * @return The object ID of the service principal for the synchronization job. + * @return The ID of the service principal for the synchronization job. * */ public Optional> servicePrincipalId() { @@ -49,14 +49,14 @@ public Optional> servicePrincipalId() { } /** - * Identifier of the synchronization template this job is based on. + * The ID of the synchronization job. * */ @Import(name="synchronizationJobId") private @Nullable Output synchronizationJobId; /** - * @return Identifier of the synchronization template this job is based on. + * @return The ID of the synchronization job. * */ public Optional> synchronizationJobId() { @@ -129,7 +129,7 @@ public Builder parameters(SynchronizationJobProvisionOnDemandParameterArgs... pa } /** - * @param servicePrincipalId The object ID of the service principal for the synchronization job. + * @param servicePrincipalId The ID of the service principal for the synchronization job. * * @return builder * @@ -140,7 +140,7 @@ public Builder servicePrincipalId(@Nullable Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for the synchronization job. + * @param servicePrincipalId The ID of the service principal for the synchronization job. * * @return builder * @@ -150,7 +150,7 @@ public Builder servicePrincipalId(String servicePrincipalId) { } /** - * @param synchronizationJobId Identifier of the synchronization template this job is based on. + * @param synchronizationJobId The ID of the synchronization job. * * @return builder * @@ -161,7 +161,7 @@ public Builder synchronizationJobId(@Nullable Output synchronizationJobI } /** - * @param synchronizationJobId Identifier of the synchronization template this job is based on. + * @param synchronizationJobId The ID of the synchronization job. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationJobState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationJobState.java index 648daf486..666e5bfbd 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationJobState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationJobState.java @@ -19,14 +19,14 @@ public final class SynchronizationJobState extends com.pulumi.resources.Resource public static final SynchronizationJobState Empty = new SynchronizationJobState(); /** - * Whether or not the provisioning job is enabled. Default state is `true`. + * Whether the provisioning job is enabled. Default state is `true`. * */ @Import(name="enabled") private @Nullable Output enabled; /** - * @return Whether or not the provisioning job is enabled. Default state is `true`. + * @return Whether the provisioning job is enabled. Default state is `true`. * */ public Optional> enabled() { @@ -49,14 +49,14 @@ public Optional>> schedules() { } /** - * The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId") private @Nullable Output servicePrincipalId; /** - * @return The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * */ public Optional> servicePrincipalId() { @@ -106,7 +106,7 @@ public Builder(SynchronizationJobState defaults) { } /** - * @param enabled Whether or not the provisioning job is enabled. Default state is `true`. + * @param enabled Whether the provisioning job is enabled. Default state is `true`. * * @return builder * @@ -117,7 +117,7 @@ public Builder enabled(@Nullable Output enabled) { } /** - * @param enabled Whether or not the provisioning job is enabled. Default state is `true`. + * @param enabled Whether the provisioning job is enabled. Default state is `true`. * * @return builder * @@ -158,7 +158,7 @@ public Builder schedules(SynchronizationJobScheduleArgs... schedules) { } /** - * @param servicePrincipalId The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * * @return builder * @@ -169,7 +169,7 @@ public Builder servicePrincipalId(@Nullable Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationSecretState.java b/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationSecretState.java index 87287e3ce..470099ef7 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationSecretState.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/inputs/SynchronizationSecretState.java @@ -33,14 +33,14 @@ public Optional>> credentials() } /** - * The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * */ @Import(name="servicePrincipalId") private @Nullable Output servicePrincipalId; /** - * @return The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * @return The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * */ public Optional> servicePrincipalId() { @@ -104,7 +104,7 @@ public Builder credentials(SynchronizationSecretCredentialArgs... credentials) { } /** - * @param servicePrincipalId The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * * @return builder * @@ -115,7 +115,7 @@ public Builder servicePrincipalId(@Nullable Output servicePrincipalId) { } /** - * @param servicePrincipalId The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * @param servicePrincipalId The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/azuread/outputs/ApplicationApi.java b/sdk/java/src/main/java/com/pulumi/azuread/outputs/ApplicationApi.java index 494e0b826..497a8303a 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/outputs/ApplicationApi.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/outputs/ApplicationApi.java @@ -16,7 +16,7 @@ @CustomType public final class ApplicationApi { /** - * @return A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * @return A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. * */ private @Nullable List knownClientApplications; @@ -38,7 +38,7 @@ public final class ApplicationApi { private ApplicationApi() {} /** - * @return A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * @return A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. * */ public List knownClientApplications() { diff --git a/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetApplicationResult.java b/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetApplicationResult.java index f1b99ba03..c5b5e31a7 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetApplicationResult.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetApplicationResult.java @@ -36,13 +36,6 @@ public final class GetApplicationResult { * */ private List appRoles; - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - private String applicationId; /** * @return The Client ID for the application. * @@ -212,15 +205,6 @@ public Map appRoleIds() { public List appRoles() { return this.appRoles; } - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public String applicationId() { - return this.applicationId; - } /** * @return The Client ID for the application. * @@ -440,7 +424,6 @@ public static final class Builder { private List apis; private Map appRoleIds; private List appRoles; - private String applicationId; private String clientId; private String description; private Boolean deviceOnlyAuthEnabled; @@ -477,7 +460,6 @@ public Builder(GetApplicationResult defaults) { this.apis = defaults.apis; this.appRoleIds = defaults.appRoleIds; this.appRoles = defaults.appRoles; - this.applicationId = defaults.applicationId; this.clientId = defaults.clientId; this.description = defaults.description; this.deviceOnlyAuthEnabled = defaults.deviceOnlyAuthEnabled; @@ -541,14 +523,6 @@ public Builder appRoles(GetApplicationAppRole... appRoles) { return appRoles(List.of(appRoles)); } @CustomType.Setter - public Builder applicationId(String applicationId) { - if (applicationId == null) { - throw new MissingRequiredPropertyException("GetApplicationResult", "applicationId"); - } - this.applicationId = applicationId; - return this; - } - @CustomType.Setter public Builder clientId(String clientId) { if (clientId == null) { throw new MissingRequiredPropertyException("GetApplicationResult", "clientId"); @@ -823,7 +797,6 @@ public GetApplicationResult build() { _resultValue.apis = apis; _resultValue.appRoleIds = appRoleIds; _resultValue.appRoles = appRoles; - _resultValue.applicationId = applicationId; _resultValue.clientId = clientId; _resultValue.description = description; _resultValue.deviceOnlyAuthEnabled = deviceOnlyAuthEnabled; diff --git a/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalResult.java b/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalResult.java index 46d35affe..f4a71ebd8 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalResult.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalResult.java @@ -43,13 +43,6 @@ public final class GetServicePrincipalResult { * */ private List appRoles; - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - private String applicationId; /** * @return The tenant ID where the associated application is registered. * @@ -202,15 +195,6 @@ public Map appRoleIds() { public List appRoles() { return this.appRoles; } - /** - * @deprecated - * The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider */ - public String applicationId() { - return this.applicationId; - } /** * @return The tenant ID where the associated application is registered. * @@ -387,7 +371,6 @@ public static final class Builder { private Boolean appRoleAssignmentRequired; private Map appRoleIds; private List appRoles; - private String applicationId; private String applicationTenantId; private String clientId; private String description; @@ -419,7 +402,6 @@ public Builder(GetServicePrincipalResult defaults) { this.appRoleAssignmentRequired = defaults.appRoleAssignmentRequired; this.appRoleIds = defaults.appRoleIds; this.appRoles = defaults.appRoles; - this.applicationId = defaults.applicationId; this.applicationTenantId = defaults.applicationTenantId; this.clientId = defaults.clientId; this.description = defaults.description; @@ -492,14 +474,6 @@ public Builder appRoles(GetServicePrincipalAppRole... appRoles) { return appRoles(List.of(appRoles)); } @CustomType.Setter - public Builder applicationId(String applicationId) { - if (applicationId == null) { - throw new MissingRequiredPropertyException("GetServicePrincipalResult", "applicationId"); - } - this.applicationId = applicationId; - return this; - } - @CustomType.Setter public Builder applicationTenantId(String applicationTenantId) { if (applicationTenantId == null) { throw new MissingRequiredPropertyException("GetServicePrincipalResult", "applicationTenantId"); @@ -714,7 +688,6 @@ public GetServicePrincipalResult build() { _resultValue.appRoleAssignmentRequired = appRoleAssignmentRequired; _resultValue.appRoleIds = appRoleIds; _resultValue.appRoles = appRoles; - _resultValue.applicationId = applicationId; _resultValue.applicationTenantId = applicationTenantId; _resultValue.clientId = clientId; _resultValue.description = description; diff --git a/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalsResult.java b/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalsResult.java index 340e1c10d..9c833899f 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalsResult.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalsResult.java @@ -15,15 +15,6 @@ @CustomType public final class GetServicePrincipalsResult { - /** - * @return A list of client IDs of the applications associated with the service principals. - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - private List applicationIds; /** * @return The client ID of the application associated with this service principal. * @@ -53,17 +44,6 @@ public final class GetServicePrincipalsResult { private List servicePrincipals; private GetServicePrincipalsResult() {} - /** - * @return A list of client IDs of the applications associated with the service principals. - * - * @deprecated - * The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider */ - public List applicationIds() { - return this.applicationIds; - } /** * @return The client ID of the application associated with this service principal. * @@ -115,7 +95,6 @@ public static Builder builder(GetServicePrincipalsResult defaults) { } @CustomType.Builder public static final class Builder { - private List applicationIds; private List clientIds; private List displayNames; private String id; @@ -126,7 +105,6 @@ public static final class Builder { public Builder() {} public Builder(GetServicePrincipalsResult defaults) { Objects.requireNonNull(defaults); - this.applicationIds = defaults.applicationIds; this.clientIds = defaults.clientIds; this.displayNames = defaults.displayNames; this.id = defaults.id; @@ -136,17 +114,6 @@ public Builder(GetServicePrincipalsResult defaults) { this.servicePrincipals = defaults.servicePrincipals; } - @CustomType.Setter - public Builder applicationIds(List applicationIds) { - if (applicationIds == null) { - throw new MissingRequiredPropertyException("GetServicePrincipalsResult", "applicationIds"); - } - this.applicationIds = applicationIds; - return this; - } - public Builder applicationIds(String... applicationIds) { - return applicationIds(List.of(applicationIds)); - } @CustomType.Setter public Builder clientIds(List clientIds) { if (clientIds == null) { @@ -213,7 +180,6 @@ public Builder servicePrincipals(GetServicePrincipalsServicePrincipal... service } public GetServicePrincipalsResult build() { final var _resultValue = new GetServicePrincipalsResult(); - _resultValue.applicationIds = applicationIds; _resultValue.clientIds = clientIds; _resultValue.displayNames = displayNames; _resultValue.id = id; diff --git a/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalsServicePrincipal.java b/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalsServicePrincipal.java index 83304777a..0d99e8b5f 100644 --- a/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalsServicePrincipal.java +++ b/sdk/java/src/main/java/com/pulumi/azuread/outputs/GetServicePrincipalsServicePrincipal.java @@ -22,15 +22,6 @@ public final class GetServicePrincipalsServicePrincipal { * */ private Boolean appRoleAssignmentRequired; - /** - * @return The application ID (client ID) for the associated application - * - * @deprecated - * The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider */ - private String applicationId; /** * @return The tenant ID where the associated application is registered. * @@ -97,17 +88,6 @@ public Boolean accountEnabled() { public Boolean appRoleAssignmentRequired() { return this.appRoleAssignmentRequired; } - /** - * @return The application ID (client ID) for the associated application - * - * @deprecated - * The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider - * - */ - @Deprecated /* The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider */ - public String applicationId() { - return this.applicationId; - } /** * @return The tenant ID where the associated application is registered. * @@ -190,7 +170,6 @@ public static Builder builder(GetServicePrincipalsServicePrincipal defaults) { public static final class Builder { private Boolean accountEnabled; private Boolean appRoleAssignmentRequired; - private String applicationId; private String applicationTenantId; private String clientId; private String displayName; @@ -206,7 +185,6 @@ public Builder(GetServicePrincipalsServicePrincipal defaults) { Objects.requireNonNull(defaults); this.accountEnabled = defaults.accountEnabled; this.appRoleAssignmentRequired = defaults.appRoleAssignmentRequired; - this.applicationId = defaults.applicationId; this.applicationTenantId = defaults.applicationTenantId; this.clientId = defaults.clientId; this.displayName = defaults.displayName; @@ -236,14 +214,6 @@ public Builder appRoleAssignmentRequired(Boolean appRoleAssignmentRequired) { return this; } @CustomType.Setter - public Builder applicationId(String applicationId) { - if (applicationId == null) { - throw new MissingRequiredPropertyException("GetServicePrincipalsServicePrincipal", "applicationId"); - } - this.applicationId = applicationId; - return this; - } - @CustomType.Setter public Builder applicationTenantId(String applicationTenantId) { if (applicationTenantId == null) { throw new MissingRequiredPropertyException("GetServicePrincipalsServicePrincipal", "applicationTenantId"); @@ -333,7 +303,6 @@ public GetServicePrincipalsServicePrincipal build() { final var _resultValue = new GetServicePrincipalsServicePrincipal(); _resultValue.accountEnabled = accountEnabled; _resultValue.appRoleAssignmentRequired = appRoleAssignmentRequired; - _resultValue.applicationId = applicationId; _resultValue.applicationTenantId = applicationTenantId; _resultValue.clientId = clientId; _resultValue.displayName = displayName; diff --git a/sdk/nodejs/appRoleAssignment.ts b/sdk/nodejs/appRoleAssignment.ts index b6296d5e8..fd39532d6 100644 --- a/sdk/nodejs/appRoleAssignment.ts +++ b/sdk/nodejs/appRoleAssignment.ts @@ -44,7 +44,7 @@ import * as utilities from "./utilities"; * ], * }], * }); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.applicationId}); + * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleAppRoleAssignment = new azuread.AppRoleAssignment("example", { * appRoleId: msgraph.appRoleIds["User.Read.All"], * principalObjectId: exampleServicePrincipal.objectId, @@ -69,18 +69,18 @@ import * as utilities from "./utilities"; * value: "Query.All", * }], * }); - * const internalServicePrincipal = new azuread.ServicePrincipal("internal", {clientId: internal.applicationId}); + * const internalServicePrincipal = new azuread.ServicePrincipal("internal", {clientId: internal.clientId}); * const example = new azuread.Application("example", { * displayName: "example", * requiredResourceAccesses: [{ - * resourceAppId: internal.applicationId, + * resourceAppId: internal.clientId, * resourceAccesses: [{ * id: internalServicePrincipal.appRoleIds["Query.All"], * type: "Role", * }], * }], * }); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.applicationId}); + * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleAppRoleAssignment = new azuread.AppRoleAssignment("example", { * appRoleId: internalServicePrincipal.appRoleIds["Query.All"], * principalObjectId: exampleServicePrincipal.objectId, diff --git a/sdk/nodejs/application.ts b/sdk/nodejs/application.ts index e73ddee50..aac5ce1cb 100644 --- a/sdk/nodejs/application.ts +++ b/sdk/nodejs/application.ts @@ -29,8 +29,8 @@ import * as utilities from "./utilities"; * mappedClaimsEnabled: true, * requestedAccessTokenVersion: 2, * knownClientApplications: [ - * known1.applicationId, - * known2.applicationId, + * known1.clientId, + * known2.clientId, * ], * oauth2PermissionScopes: [ * { @@ -181,12 +181,6 @@ export class Application extends pulumi.CustomResource { * A collection of `appRole` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). */ public readonly appRoles!: pulumi.Output; - /** - * The Application ID (also called Client ID) - * - * @deprecated The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider - */ - public /*out*/ readonly applicationId!: pulumi.Output; /** * The Client ID for the application. */ @@ -344,7 +338,6 @@ export class Application extends pulumi.CustomResource { resourceInputs["api"] = state ? state.api : undefined; resourceInputs["appRoleIds"] = state ? state.appRoleIds : undefined; resourceInputs["appRoles"] = state ? state.appRoles : undefined; - resourceInputs["applicationId"] = state ? state.applicationId : undefined; resourceInputs["clientId"] = state ? state.clientId : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["deviceOnlyAuthEnabled"] = state ? state.deviceOnlyAuthEnabled : undefined; @@ -411,7 +404,6 @@ export class Application extends pulumi.CustomResource { resourceInputs["termsOfServiceUrl"] = args ? args.termsOfServiceUrl : undefined; resourceInputs["web"] = args ? args.web : undefined; resourceInputs["appRoleIds"] = undefined /*out*/; - resourceInputs["applicationId"] = undefined /*out*/; resourceInputs["clientId"] = undefined /*out*/; resourceInputs["disabledByMicrosoft"] = undefined /*out*/; resourceInputs["logoUrl"] = undefined /*out*/; @@ -440,12 +432,6 @@ export interface ApplicationState { * A collection of `appRole` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). */ appRoles?: pulumi.Input[]>; - /** - * The Application ID (also called Client ID) - * - * @deprecated The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider - */ - applicationId?: pulumi.Input; /** * The Client ID for the application. */ diff --git a/sdk/nodejs/applicationCertificate.ts b/sdk/nodejs/applicationCertificate.ts index aedb22b89..0530e829c 100644 --- a/sdk/nodejs/applicationCertificate.ts +++ b/sdk/nodejs/applicationCertificate.ts @@ -149,12 +149,6 @@ export class ApplicationCertificate extends pulumi.CustomResource { * The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. */ public readonly applicationId!: pulumi.Output; - /** - * The object ID of the application for which this certificate should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - public readonly applicationObjectId!: pulumi.Output; /** * Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. * @@ -169,6 +163,8 @@ export class ApplicationCertificate extends pulumi.CustomResource { * A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * * > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ public readonly endDateRelative!: pulumi.Output; /** @@ -202,7 +198,6 @@ export class ApplicationCertificate extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as ApplicationCertificateState | undefined; resourceInputs["applicationId"] = state ? state.applicationId : undefined; - resourceInputs["applicationObjectId"] = state ? state.applicationObjectId : undefined; resourceInputs["encoding"] = state ? state.encoding : undefined; resourceInputs["endDate"] = state ? state.endDate : undefined; resourceInputs["endDateRelative"] = state ? state.endDateRelative : undefined; @@ -212,11 +207,13 @@ export class ApplicationCertificate extends pulumi.CustomResource { resourceInputs["value"] = state ? state.value : undefined; } else { const args = argsOrState as ApplicationCertificateArgs | undefined; + if ((!args || args.applicationId === undefined) && !opts.urn) { + throw new Error("Missing required property 'applicationId'"); + } if ((!args || args.value === undefined) && !opts.urn) { throw new Error("Missing required property 'value'"); } resourceInputs["applicationId"] = args ? args.applicationId : undefined; - resourceInputs["applicationObjectId"] = args ? args.applicationObjectId : undefined; resourceInputs["encoding"] = args ? args.encoding : undefined; resourceInputs["endDate"] = args ? args.endDate : undefined; resourceInputs["endDateRelative"] = args ? args.endDateRelative : undefined; @@ -240,12 +237,6 @@ export interface ApplicationCertificateState { * The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. */ applicationId?: pulumi.Input; - /** - * The object ID of the application for which this certificate should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationObjectId?: pulumi.Input; /** * Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. * @@ -260,6 +251,8 @@ export interface ApplicationCertificateState { * A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * * > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ endDateRelative?: pulumi.Input; /** @@ -287,13 +280,7 @@ export interface ApplicationCertificateArgs { /** * The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. */ - applicationId?: pulumi.Input; - /** - * The object ID of the application for which this certificate should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationObjectId?: pulumi.Input; + applicationId: pulumi.Input; /** * Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. * @@ -308,6 +295,8 @@ export interface ApplicationCertificateArgs { * A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. * * > One of `endDate` or `endDateRelative` must be specified. The maximum allowed duration is determined by Azure AD and is typically around 2 years from the creation date. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ endDateRelative?: pulumi.Input; /** diff --git a/sdk/nodejs/applicationFederatedIdentityCredential.ts b/sdk/nodejs/applicationFederatedIdentityCredential.ts index f86360f6f..22be44ba4 100644 --- a/sdk/nodejs/applicationFederatedIdentityCredential.ts +++ b/sdk/nodejs/applicationFederatedIdentityCredential.ts @@ -64,12 +64,6 @@ export class ApplicationFederatedIdentityCredential extends pulumi.CustomResourc * The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. */ public readonly applicationId!: pulumi.Output; - /** - * The object ID of the application for which this federated identity credential should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - public readonly applicationObjectId!: pulumi.Output; /** * List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. */ @@ -109,7 +103,6 @@ export class ApplicationFederatedIdentityCredential extends pulumi.CustomResourc if (opts.id) { const state = argsOrState as ApplicationFederatedIdentityCredentialState | undefined; resourceInputs["applicationId"] = state ? state.applicationId : undefined; - resourceInputs["applicationObjectId"] = state ? state.applicationObjectId : undefined; resourceInputs["audiences"] = state ? state.audiences : undefined; resourceInputs["credentialId"] = state ? state.credentialId : undefined; resourceInputs["description"] = state ? state.description : undefined; @@ -118,6 +111,9 @@ export class ApplicationFederatedIdentityCredential extends pulumi.CustomResourc resourceInputs["subject"] = state ? state.subject : undefined; } else { const args = argsOrState as ApplicationFederatedIdentityCredentialArgs | undefined; + if ((!args || args.applicationId === undefined) && !opts.urn) { + throw new Error("Missing required property 'applicationId'"); + } if ((!args || args.audiences === undefined) && !opts.urn) { throw new Error("Missing required property 'audiences'"); } @@ -131,7 +127,6 @@ export class ApplicationFederatedIdentityCredential extends pulumi.CustomResourc throw new Error("Missing required property 'subject'"); } resourceInputs["applicationId"] = args ? args.applicationId : undefined; - resourceInputs["applicationObjectId"] = args ? args.applicationObjectId : undefined; resourceInputs["audiences"] = args ? args.audiences : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; @@ -152,12 +147,6 @@ export interface ApplicationFederatedIdentityCredentialState { * The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. */ applicationId?: pulumi.Input; - /** - * The object ID of the application for which this federated identity credential should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationObjectId?: pulumi.Input; /** * List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. */ @@ -191,13 +180,7 @@ export interface ApplicationFederatedIdentityCredentialArgs { /** * The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. */ - applicationId?: pulumi.Input; - /** - * The object ID of the application for which this federated identity credential should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationObjectId?: pulumi.Input; + applicationId: pulumi.Input; /** * List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. */ diff --git a/sdk/nodejs/applicationPassword.ts b/sdk/nodejs/applicationPassword.ts index 21e4305c4..06c8a92ad 100644 --- a/sdk/nodejs/applicationPassword.ts +++ b/sdk/nodejs/applicationPassword.ts @@ -70,12 +70,6 @@ export class ApplicationPassword extends pulumi.CustomResource { * The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. */ public readonly applicationId!: pulumi.Output; - /** - * The object ID of the application for which this password should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - public readonly applicationObjectId!: pulumi.Output; /** * A display name for the password. Changing this field forces a new resource to be created. */ @@ -86,6 +80,8 @@ export class ApplicationPassword extends pulumi.CustomResource { public readonly endDate!: pulumi.Output; /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ public readonly endDateRelative!: pulumi.Output; /** @@ -112,14 +108,13 @@ export class ApplicationPassword extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - constructor(name: string, args?: ApplicationPasswordArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, args: ApplicationPasswordArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, argsOrState?: ApplicationPasswordArgs | ApplicationPasswordState, opts?: pulumi.CustomResourceOptions) { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (opts.id) { const state = argsOrState as ApplicationPasswordState | undefined; resourceInputs["applicationId"] = state ? state.applicationId : undefined; - resourceInputs["applicationObjectId"] = state ? state.applicationObjectId : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; resourceInputs["endDate"] = state ? state.endDate : undefined; resourceInputs["endDateRelative"] = state ? state.endDateRelative : undefined; @@ -129,8 +124,10 @@ export class ApplicationPassword extends pulumi.CustomResource { resourceInputs["value"] = state ? state.value : undefined; } else { const args = argsOrState as ApplicationPasswordArgs | undefined; + if ((!args || args.applicationId === undefined) && !opts.urn) { + throw new Error("Missing required property 'applicationId'"); + } resourceInputs["applicationId"] = args ? args.applicationId : undefined; - resourceInputs["applicationObjectId"] = args ? args.applicationObjectId : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["endDate"] = args ? args.endDate : undefined; resourceInputs["endDateRelative"] = args ? args.endDateRelative : undefined; @@ -154,12 +151,6 @@ export interface ApplicationPasswordState { * The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. */ applicationId?: pulumi.Input; - /** - * The object ID of the application for which this password should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationObjectId?: pulumi.Input; /** * A display name for the password. Changing this field forces a new resource to be created. */ @@ -170,6 +161,8 @@ export interface ApplicationPasswordState { endDate?: pulumi.Input; /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ endDateRelative?: pulumi.Input; /** @@ -197,13 +190,7 @@ export interface ApplicationPasswordArgs { /** * The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. */ - applicationId?: pulumi.Input; - /** - * The object ID of the application for which this password should be created - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationObjectId?: pulumi.Input; + applicationId: pulumi.Input; /** * A display name for the password. Changing this field forces a new resource to be created. */ @@ -214,6 +201,8 @@ export interface ApplicationPasswordArgs { endDate?: pulumi.Input; /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ endDateRelative?: pulumi.Input; /** diff --git a/sdk/nodejs/applicationPreAuthorized.ts b/sdk/nodejs/applicationPreAuthorized.ts index 287bd6b6c..ef963d671 100644 --- a/sdk/nodejs/applicationPreAuthorized.ts +++ b/sdk/nodejs/applicationPreAuthorized.ts @@ -89,18 +89,6 @@ export class ApplicationPreAuthorized extends pulumi.CustomResource { * The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. */ public readonly applicationId!: pulumi.Output; - /** - * The object ID of the application to which this pre-authorized application should be added - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - public readonly applicationObjectId!: pulumi.Output; - /** - * The application ID of the pre-authorized application - * - * @deprecated The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider - */ - public readonly authorizedAppId!: pulumi.Output; /** * The client ID of the application being authorized. Changing this field forces a new resource to be created. */ @@ -124,18 +112,20 @@ export class ApplicationPreAuthorized extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as ApplicationPreAuthorizedState | undefined; resourceInputs["applicationId"] = state ? state.applicationId : undefined; - resourceInputs["applicationObjectId"] = state ? state.applicationObjectId : undefined; - resourceInputs["authorizedAppId"] = state ? state.authorizedAppId : undefined; resourceInputs["authorizedClientId"] = state ? state.authorizedClientId : undefined; resourceInputs["permissionIds"] = state ? state.permissionIds : undefined; } else { const args = argsOrState as ApplicationPreAuthorizedArgs | undefined; + if ((!args || args.applicationId === undefined) && !opts.urn) { + throw new Error("Missing required property 'applicationId'"); + } + if ((!args || args.authorizedClientId === undefined) && !opts.urn) { + throw new Error("Missing required property 'authorizedClientId'"); + } if ((!args || args.permissionIds === undefined) && !opts.urn) { throw new Error("Missing required property 'permissionIds'"); } resourceInputs["applicationId"] = args ? args.applicationId : undefined; - resourceInputs["applicationObjectId"] = args ? args.applicationObjectId : undefined; - resourceInputs["authorizedAppId"] = args ? args.authorizedAppId : undefined; resourceInputs["authorizedClientId"] = args ? args.authorizedClientId : undefined; resourceInputs["permissionIds"] = args ? args.permissionIds : undefined; } @@ -152,18 +142,6 @@ export interface ApplicationPreAuthorizedState { * The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. */ applicationId?: pulumi.Input; - /** - * The object ID of the application to which this pre-authorized application should be added - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationObjectId?: pulumi.Input; - /** - * The application ID of the pre-authorized application - * - * @deprecated The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider - */ - authorizedAppId?: pulumi.Input; /** * The client ID of the application being authorized. Changing this field forces a new resource to be created. */ @@ -181,23 +159,11 @@ export interface ApplicationPreAuthorizedArgs { /** * The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. */ - applicationId?: pulumi.Input; - /** - * The object ID of the application to which this pre-authorized application should be added - * - * @deprecated The `applicationObjectId` property has been replaced with the `applicationId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationObjectId?: pulumi.Input; - /** - * The application ID of the pre-authorized application - * - * @deprecated The `authorizedAppId` property has been replaced with the `authorizedClientId` property and will be removed in version 3.0 of the AzureAD provider - */ - authorizedAppId?: pulumi.Input; + applicationId: pulumi.Input; /** * The client ID of the application being authorized. Changing this field forces a new resource to be created. */ - authorizedClientId?: pulumi.Input; + authorizedClientId: pulumi.Input; /** * A set of permission scope IDs required by the authorized application. */ diff --git a/sdk/nodejs/conditionalAccessPolicy.ts b/sdk/nodejs/conditionalAccessPolicy.ts index 6b6f06382..2be772694 100644 --- a/sdk/nodejs/conditionalAccessPolicy.ts +++ b/sdk/nodejs/conditionalAccessPolicy.ts @@ -167,6 +167,10 @@ export class ConditionalAccessPolicy extends pulumi.CustomResource { * A `grantControls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy. */ public readonly grantControls!: pulumi.Output; + /** + * The object ID of the policy + */ + public /*out*/ readonly objectId!: pulumi.Output; /** * A `sessionControls` block as documented below, which specifies the session controls that are enforced after sign-in. * @@ -194,6 +198,7 @@ export class ConditionalAccessPolicy extends pulumi.CustomResource { resourceInputs["conditions"] = state ? state.conditions : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; resourceInputs["grantControls"] = state ? state.grantControls : undefined; + resourceInputs["objectId"] = state ? state.objectId : undefined; resourceInputs["sessionControls"] = state ? state.sessionControls : undefined; resourceInputs["state"] = state ? state.state : undefined; } else { @@ -212,6 +217,7 @@ export class ConditionalAccessPolicy extends pulumi.CustomResource { resourceInputs["grantControls"] = args ? args.grantControls : undefined; resourceInputs["sessionControls"] = args ? args.sessionControls : undefined; resourceInputs["state"] = args ? args.state : undefined; + resourceInputs["objectId"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(ConditionalAccessPolicy.__pulumiType, name, resourceInputs, opts); @@ -234,6 +240,10 @@ export interface ConditionalAccessPolicyState { * A `grantControls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy. */ grantControls?: pulumi.Input; + /** + * The object ID of the policy + */ + objectId?: pulumi.Input; /** * A `sessionControls` block as documented below, which specifies the session controls that are enforced after sign-in. * diff --git a/sdk/nodejs/directoryRoleAssignment.ts b/sdk/nodejs/directoryRoleAssignment.ts index a418776be..fa8a43b11 100644 --- a/sdk/nodejs/directoryRoleAssignment.ts +++ b/sdk/nodejs/directoryRoleAssignment.ts @@ -103,20 +103,10 @@ export class DirectoryRoleAssignment extends pulumi.CustomResource { * Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directoryScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. */ public readonly appScopeId!: pulumi.Output; - /** - * Identifier of the app-specific scope when the assignment scope is app-specific - * - * @deprecated `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider - */ - public readonly appScopeObjectId!: pulumi.Output; /** * Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. */ public readonly directoryScopeId!: pulumi.Output; - /** - * Identifier of the directory object representing the scope of the assignment - */ - public readonly directoryScopeObjectId!: pulumi.Output; /** * The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. */ @@ -140,9 +130,7 @@ export class DirectoryRoleAssignment extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as DirectoryRoleAssignmentState | undefined; resourceInputs["appScopeId"] = state ? state.appScopeId : undefined; - resourceInputs["appScopeObjectId"] = state ? state.appScopeObjectId : undefined; resourceInputs["directoryScopeId"] = state ? state.directoryScopeId : undefined; - resourceInputs["directoryScopeObjectId"] = state ? state.directoryScopeObjectId : undefined; resourceInputs["principalObjectId"] = state ? state.principalObjectId : undefined; resourceInputs["roleId"] = state ? state.roleId : undefined; } else { @@ -154,9 +142,7 @@ export class DirectoryRoleAssignment extends pulumi.CustomResource { throw new Error("Missing required property 'roleId'"); } resourceInputs["appScopeId"] = args ? args.appScopeId : undefined; - resourceInputs["appScopeObjectId"] = args ? args.appScopeObjectId : undefined; resourceInputs["directoryScopeId"] = args ? args.directoryScopeId : undefined; - resourceInputs["directoryScopeObjectId"] = args ? args.directoryScopeObjectId : undefined; resourceInputs["principalObjectId"] = args ? args.principalObjectId : undefined; resourceInputs["roleId"] = args ? args.roleId : undefined; } @@ -173,20 +159,10 @@ export interface DirectoryRoleAssignmentState { * Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directoryScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. */ appScopeId?: pulumi.Input; - /** - * Identifier of the app-specific scope when the assignment scope is app-specific - * - * @deprecated `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider - */ - appScopeObjectId?: pulumi.Input; /** * Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. */ directoryScopeId?: pulumi.Input; - /** - * Identifier of the directory object representing the scope of the assignment - */ - directoryScopeObjectId?: pulumi.Input; /** * The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. */ @@ -205,20 +181,10 @@ export interface DirectoryRoleAssignmentArgs { * Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directoryScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. */ appScopeId?: pulumi.Input; - /** - * Identifier of the app-specific scope when the assignment scope is app-specific - * - * @deprecated `appScopeObjectId` has been renamed to `appScopeId` and will be removed in version 3.0 or the AzureAD Provider - */ - appScopeObjectId?: pulumi.Input; /** * Identifier of the directory object representing the scope of the assignment. Cannot be used with `appScopeId`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. */ directoryScopeId?: pulumi.Input; - /** - * Identifier of the directory object representing the scope of the assignment - */ - directoryScopeObjectId?: pulumi.Input; /** * The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. */ diff --git a/sdk/nodejs/getApplication.ts b/sdk/nodejs/getApplication.ts index 55c11b6e9..3672e1482 100644 --- a/sdk/nodejs/getApplication.ts +++ b/sdk/nodejs/getApplication.ts @@ -33,7 +33,6 @@ export function getApplication(args?: GetApplicationArgs, opts?: pulumi.InvokeOp args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("azuread:index/getApplication:getApplication", { - "applicationId": args.applicationId, "clientId": args.clientId, "displayName": args.displayName, "identifierUri": args.identifierUri, @@ -45,10 +44,6 @@ export function getApplication(args?: GetApplicationArgs, opts?: pulumi.InvokeOp * A collection of arguments for invoking getApplication. */ export interface GetApplicationArgs { - /** - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationId?: string; /** * Specifies the Client ID of the application. */ @@ -85,10 +80,6 @@ export interface GetApplicationResult { * A collection of `appRole` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). */ readonly appRoles: outputs.GetApplicationAppRole[]; - /** - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - readonly applicationId: string; /** * The Client ID for the application. */ @@ -234,7 +225,6 @@ export function getApplicationOutput(args?: GetApplicationOutputArgs, opts?: pul args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("azuread:index/getApplication:getApplication", { - "applicationId": args.applicationId, "clientId": args.clientId, "displayName": args.displayName, "identifierUri": args.identifierUri, @@ -246,10 +236,6 @@ export function getApplicationOutput(args?: GetApplicationOutputArgs, opts?: pul * A collection of arguments for invoking getApplication. */ export interface GetApplicationOutputArgs { - /** - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationId?: pulumi.Input; /** * Specifies the Client ID of the application. */ diff --git a/sdk/nodejs/getServicePrincipal.ts b/sdk/nodejs/getServicePrincipal.ts index fdabd30ef..f3b95831c 100644 --- a/sdk/nodejs/getServicePrincipal.ts +++ b/sdk/nodejs/getServicePrincipal.ts @@ -56,7 +56,6 @@ export function getServicePrincipal(args?: GetServicePrincipalArgs, opts?: pulum args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("azuread:index/getServicePrincipal:getServicePrincipal", { - "applicationId": args.applicationId, "clientId": args.clientId, "displayName": args.displayName, "objectId": args.objectId, @@ -67,10 +66,6 @@ export function getServicePrincipal(args?: GetServicePrincipalArgs, opts?: pulum * A collection of arguments for invoking getServicePrincipal. */ export interface GetServicePrincipalArgs { - /** - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationId?: string; /** * The client ID of the application associated with this service principal. */ @@ -111,10 +106,6 @@ export interface GetServicePrincipalResult { * A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). */ readonly appRoles: outputs.GetServicePrincipalAppRole[]; - /** - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - readonly applicationId: string; /** * The tenant ID where the associated application is registered. */ @@ -257,7 +248,6 @@ export function getServicePrincipalOutput(args?: GetServicePrincipalOutputArgs, args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("azuread:index/getServicePrincipal:getServicePrincipal", { - "applicationId": args.applicationId, "clientId": args.clientId, "displayName": args.displayName, "objectId": args.objectId, @@ -268,10 +258,6 @@ export function getServicePrincipalOutput(args?: GetServicePrincipalOutputArgs, * A collection of arguments for invoking getServicePrincipal. */ export interface GetServicePrincipalOutputArgs { - /** - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationId?: pulumi.Input; /** * The client ID of the application associated with this service principal. */ diff --git a/sdk/nodejs/getServicePrincipals.ts b/sdk/nodejs/getServicePrincipals.ts index d8cd83d48..eca3a0dd4 100644 --- a/sdk/nodejs/getServicePrincipals.ts +++ b/sdk/nodejs/getServicePrincipals.ts @@ -67,7 +67,6 @@ export function getServicePrincipals(args?: GetServicePrincipalsArgs, opts?: pul args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("azuread:index/getServicePrincipals:getServicePrincipals", { - "applicationIds": args.applicationIds, "clientIds": args.clientIds, "displayNames": args.displayNames, "ignoreMissing": args.ignoreMissing, @@ -80,12 +79,6 @@ export function getServicePrincipals(args?: GetServicePrincipalsArgs, opts?: pul * A collection of arguments for invoking getServicePrincipals. */ export interface GetServicePrincipalsArgs { - /** - * A list of client IDs of the applications associated with the service principals. - * - * @deprecated The `applicationIds` property has been replaced with the `clientIds` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationIds?: string[]; /** * A list of client IDs of the applications associated with the service principals. */ @@ -114,12 +107,6 @@ export interface GetServicePrincipalsArgs { * A collection of values returned by getServicePrincipals. */ export interface GetServicePrincipalsResult { - /** - * A list of client IDs of the applications associated with the service principals. - * - * @deprecated The `applicationIds` property has been replaced with the `clientIds` property and will be removed in version 3.0 of the AzureAD provider - */ - readonly applicationIds: string[]; /** * The client ID of the application associated with this service principal. */ @@ -204,7 +191,6 @@ export function getServicePrincipalsOutput(args?: GetServicePrincipalsOutputArgs args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("azuread:index/getServicePrincipals:getServicePrincipals", { - "applicationIds": args.applicationIds, "clientIds": args.clientIds, "displayNames": args.displayNames, "ignoreMissing": args.ignoreMissing, @@ -217,12 +203,6 @@ export function getServicePrincipalsOutput(args?: GetServicePrincipalsOutputArgs * A collection of arguments for invoking getServicePrincipals. */ export interface GetServicePrincipalsOutputArgs { - /** - * A list of client IDs of the applications associated with the service principals. - * - * @deprecated The `applicationIds` property has been replaced with the `clientIds` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationIds?: pulumi.Input[]>; /** * A list of client IDs of the applications associated with the service principals. */ diff --git a/sdk/nodejs/package.json b/sdk/nodejs/package.json index 2e5f47944..8ffa2c673 100644 --- a/sdk/nodejs/package.json +++ b/sdk/nodejs/package.json @@ -1,6 +1,6 @@ { "name": "@pulumi/azuread", - "version": "5.0.0-alpha.0+dev", + "version": "6.0.0-alpha.0+dev", "description": "A Pulumi package for creating and managing Azure Active Directory (Azure AD) cloud resources.", "keywords": [ "pulumi", @@ -23,6 +23,6 @@ "pulumi": { "resource": true, "name": "azuread", - "version": "5.0.0-alpha.0+dev" + "version": "6.0.0-alpha.0+dev" } } diff --git a/sdk/nodejs/servicePrincipal.ts b/sdk/nodejs/servicePrincipal.ts index 64017b131..d86d50918 100644 --- a/sdk/nodejs/servicePrincipal.ts +++ b/sdk/nodejs/servicePrincipal.ts @@ -137,12 +137,6 @@ export class ServicePrincipal extends pulumi.CustomResource { * A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). */ public /*out*/ readonly appRoles!: pulumi.Output; - /** - * The application ID (client ID) of the application for which to create a service principal - * - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - public readonly applicationId!: pulumi.Output; /** * The tenant ID where the associated application is registered. */ @@ -253,7 +247,7 @@ export class ServicePrincipal extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - constructor(name: string, args?: ServicePrincipalArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, args: ServicePrincipalArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, argsOrState?: ServicePrincipalArgs | ServicePrincipalState, opts?: pulumi.CustomResourceOptions) { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; @@ -264,7 +258,6 @@ export class ServicePrincipal extends pulumi.CustomResource { resourceInputs["appRoleAssignmentRequired"] = state ? state.appRoleAssignmentRequired : undefined; resourceInputs["appRoleIds"] = state ? state.appRoleIds : undefined; resourceInputs["appRoles"] = state ? state.appRoles : undefined; - resourceInputs["applicationId"] = state ? state.applicationId : undefined; resourceInputs["applicationTenantId"] = state ? state.applicationTenantId : undefined; resourceInputs["clientId"] = state ? state.clientId : undefined; resourceInputs["description"] = state ? state.description : undefined; @@ -291,10 +284,12 @@ export class ServicePrincipal extends pulumi.CustomResource { resourceInputs["useExisting"] = state ? state.useExisting : undefined; } else { const args = argsOrState as ServicePrincipalArgs | undefined; + if ((!args || args.clientId === undefined) && !opts.urn) { + throw new Error("Missing required property 'clientId'"); + } resourceInputs["accountEnabled"] = args ? args.accountEnabled : undefined; resourceInputs["alternativeNames"] = args ? args.alternativeNames : undefined; resourceInputs["appRoleAssignmentRequired"] = args ? args.appRoleAssignmentRequired : undefined; - resourceInputs["applicationId"] = args ? args.applicationId : undefined; resourceInputs["clientId"] = args ? args.clientId : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["featureTags"] = args ? args.featureTags : undefined; @@ -351,12 +346,6 @@ export interface ServicePrincipalState { * A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). */ appRoles?: pulumi.Input[]>; - /** - * The application ID (client ID) of the application for which to create a service principal - * - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationId?: pulumi.Input; /** * The tenant ID where the associated application is registered. */ @@ -477,16 +466,10 @@ export interface ServicePrincipalArgs { * Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`. */ appRoleAssignmentRequired?: pulumi.Input; - /** - * The application ID (client ID) of the application for which to create a service principal - * - * @deprecated The `applicationId` property has been replaced with the `clientId` property and will be removed in version 3.0 of the AzureAD provider - */ - applicationId?: pulumi.Input; /** * The client ID of the application for which to create a service principal. */ - clientId?: pulumi.Input; + clientId: pulumi.Input; /** * A description of the service principal provided for internal end-users. */ diff --git a/sdk/nodejs/servicePrincipalCertificate.ts b/sdk/nodejs/servicePrincipalCertificate.ts index ed3e65359..b69b08902 100644 --- a/sdk/nodejs/servicePrincipalCertificate.ts +++ b/sdk/nodejs/servicePrincipalCertificate.ts @@ -15,7 +15,7 @@ import * as utilities from "./utilities"; * import * as std from "@pulumi/std"; * * const example = new azuread.Application("example", {displayName: "example"}); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {applicationId: example.applicationId}); + * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleServicePrincipalCertificate = new azuread.ServicePrincipalCertificate("example", { * servicePrincipalId: exampleServicePrincipal.id, * type: "AsymmetricX509Cert", @@ -34,7 +34,7 @@ import * as utilities from "./utilities"; * import * as std from "@pulumi/std"; * * const example = new azuread.Application("example", {displayName: "example"}); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {applicationId: example.applicationId}); + * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleServicePrincipalCertificate = new azuread.ServicePrincipalCertificate("example", { * servicePrincipalId: exampleServicePrincipal.id, * type: "AsymmetricX509Cert", @@ -100,6 +100,8 @@ export class ServicePrincipalCertificate extends pulumi.CustomResource { * A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. * * > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ public readonly endDateRelative!: pulumi.Output; /** @@ -107,7 +109,7 @@ export class ServicePrincipalCertificate extends pulumi.CustomResource { */ public readonly keyId!: pulumi.Output; /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. */ public readonly servicePrincipalId!: pulumi.Output; /** @@ -186,6 +188,8 @@ export interface ServicePrincipalCertificateState { * A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. * * > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ endDateRelative?: pulumi.Input; /** @@ -193,7 +197,7 @@ export interface ServicePrincipalCertificateState { */ keyId?: pulumi.Input; /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. */ servicePrincipalId?: pulumi.Input; /** @@ -228,6 +232,8 @@ export interface ServicePrincipalCertificateArgs { * A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. * * > One of `endDate` or `endDateRelative` must be set. The maximum duration is determined by Azure AD. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ endDateRelative?: pulumi.Input; /** @@ -235,7 +241,7 @@ export interface ServicePrincipalCertificateArgs { */ keyId?: pulumi.Input; /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. */ servicePrincipalId: pulumi.Input; /** diff --git a/sdk/nodejs/servicePrincipalClaimsMappingPolicyAssignment.ts b/sdk/nodejs/servicePrincipalClaimsMappingPolicyAssignment.ts index af79db5d2..98ea350a1 100644 --- a/sdk/nodejs/servicePrincipalClaimsMappingPolicyAssignment.ts +++ b/sdk/nodejs/servicePrincipalClaimsMappingPolicyAssignment.ts @@ -68,7 +68,7 @@ export class ServicePrincipalClaimsMappingPolicyAssignment extends pulumi.Custom */ public readonly claimsMappingPolicyId!: pulumi.Output; /** - * The object ID of the service principal for the policy assignment. + * The ID of the service principal for the policy assignment. */ public readonly servicePrincipalId!: pulumi.Output; @@ -112,7 +112,7 @@ export interface ServicePrincipalClaimsMappingPolicyAssignmentState { */ claimsMappingPolicyId?: pulumi.Input; /** - * The object ID of the service principal for the policy assignment. + * The ID of the service principal for the policy assignment. */ servicePrincipalId?: pulumi.Input; } @@ -126,7 +126,7 @@ export interface ServicePrincipalClaimsMappingPolicyAssignmentArgs { */ claimsMappingPolicyId: pulumi.Input; /** - * The object ID of the service principal for the policy assignment. + * The ID of the service principal for the policy assignment. */ servicePrincipalId: pulumi.Input; } diff --git a/sdk/nodejs/servicePrincipalDelegatedPermissionGrant.ts b/sdk/nodejs/servicePrincipalDelegatedPermissionGrant.ts index edf8d76ee..d7bfafff6 100644 --- a/sdk/nodejs/servicePrincipalDelegatedPermissionGrant.ts +++ b/sdk/nodejs/servicePrincipalDelegatedPermissionGrant.ts @@ -44,7 +44,7 @@ import * as utilities from "./utilities"; * ], * }], * }); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.applicationId}); + * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleServicePrincipalDelegatedPermissionGrant = new azuread.ServicePrincipalDelegatedPermissionGrant("example", { * servicePrincipalObjectId: exampleServicePrincipal.objectId, * resourceServicePrincipalObjectId: msgraph.objectId, @@ -82,7 +82,7 @@ import * as utilities from "./utilities"; * ], * }], * }); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.applicationId}); + * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleUser = new azuread.User("example", { * displayName: "J. Doe", * userPrincipalName: "jdoe@example.com", diff --git a/sdk/nodejs/servicePrincipalPassword.ts b/sdk/nodejs/servicePrincipalPassword.ts index 467dfac38..852ee759b 100644 --- a/sdk/nodejs/servicePrincipalPassword.ts +++ b/sdk/nodejs/servicePrincipalPassword.ts @@ -15,7 +15,7 @@ import * as utilities from "./utilities"; * * const example = new azuread.Application("example", {displayName: "example"}); * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); - * const exampleServicePrincipalPassword = new azuread.ServicePrincipalPassword("example", {servicePrincipalId: exampleServicePrincipal.objectId}); + * const exampleServicePrincipalPassword = new azuread.ServicePrincipalPassword("example", {servicePrincipalId: exampleServicePrincipal.id}); * ``` * * *Time-based rotation* @@ -29,7 +29,7 @@ import * as utilities from "./utilities"; * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleRotating = new time.Rotating("example", {rotationDays: 7}); * const exampleServicePrincipalPassword = new azuread.ServicePrincipalPassword("example", { - * servicePrincipalId: exampleServicePrincipal.objectId, + * servicePrincipalId: exampleServicePrincipal.id, * rotateWhenChanged: { * rotation: exampleRotating.id, * }, @@ -78,6 +78,8 @@ export class ServicePrincipalPassword extends pulumi.CustomResource { public readonly endDate!: pulumi.Output; /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ public readonly endDateRelative!: pulumi.Output; /** @@ -89,7 +91,7 @@ export class ServicePrincipalPassword extends pulumi.CustomResource { */ public readonly rotateWhenChanged!: pulumi.Output<{[key: string]: string} | undefined>; /** - * The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. */ public readonly servicePrincipalId!: pulumi.Output; /** @@ -157,6 +159,8 @@ export interface ServicePrincipalPasswordState { endDate?: pulumi.Input; /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ endDateRelative?: pulumi.Input; /** @@ -168,7 +172,7 @@ export interface ServicePrincipalPasswordState { */ rotateWhenChanged?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. */ servicePrincipalId?: pulumi.Input; /** @@ -195,6 +199,8 @@ export interface ServicePrincipalPasswordArgs { endDate?: pulumi.Input; /** * A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. + * + * @deprecated The `endDateRelative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `endDate` property. */ endDateRelative?: pulumi.Input; /** @@ -202,7 +208,7 @@ export interface ServicePrincipalPasswordArgs { */ rotateWhenChanged?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. */ servicePrincipalId: pulumi.Input; /** diff --git a/sdk/nodejs/servicePrincipalTokenSigningCertificate.ts b/sdk/nodejs/servicePrincipalTokenSigningCertificate.ts index f152c60fc..d05695b67 100644 --- a/sdk/nodejs/servicePrincipalTokenSigningCertificate.ts +++ b/sdk/nodejs/servicePrincipalTokenSigningCertificate.ts @@ -14,7 +14,7 @@ import * as utilities from "./utilities"; * import * as azuread from "@pulumi/azuread"; * * const example = new azuread.Application("example", {displayName: "example"}); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.applicationId}); + * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleServicePrincipalTokenSigningCertificate = new azuread.ServicePrincipalTokenSigningCertificate("example", {servicePrincipalId: exampleServicePrincipal.id}); * ``` * @@ -25,7 +25,7 @@ import * as utilities from "./utilities"; * import * as azuread from "@pulumi/azuread"; * * const example = new azuread.Application("example", {displayName: "example"}); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.applicationId}); + * const exampleServicePrincipal = new azuread.ServicePrincipal("example", {clientId: example.clientId}); * const exampleServicePrincipalTokenSigningCertificate = new azuread.ServicePrincipalTokenSigningCertificate("example", { * servicePrincipalId: exampleServicePrincipal.id, * displayName: "CN=example.com", @@ -86,7 +86,7 @@ export class ServicePrincipalTokenSigningCertificate extends pulumi.CustomResour */ public /*out*/ readonly keyId!: pulumi.Output; /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. */ public readonly servicePrincipalId!: pulumi.Output; /** @@ -161,7 +161,7 @@ export interface ServicePrincipalTokenSigningCertificateState { */ keyId?: pulumi.Input; /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. */ servicePrincipalId?: pulumi.Input; /** @@ -193,7 +193,7 @@ export interface ServicePrincipalTokenSigningCertificateArgs { */ endDate?: pulumi.Input; /** - * The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. */ servicePrincipalId: pulumi.Input; } diff --git a/sdk/nodejs/synchronizationJob.ts b/sdk/nodejs/synchronizationJob.ts index 0b9df1c7d..a036ea726 100644 --- a/sdk/nodejs/synchronizationJob.ts +++ b/sdk/nodejs/synchronizationJob.ts @@ -26,20 +26,15 @@ import * as utilities from "./utilities"; * const example = azuread.getApplicationTemplate({ * displayName: "Azure Databricks SCIM Provisioning Connector", * }); - * const exampleApplication = new azuread.Application("example", { + * const exampleApplicationFromTemplate = new azuread.ApplicationFromTemplate("example", { * displayName: "example", * templateId: example.then(example => example.templateId), - * featureTags: [{ - * enterprise: true, - * gallery: true, - * }], * }); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", { - * clientId: exampleApplication.applicationId, - * useExisting: true, + * const exampleGetServicePrincipal = azuread.getServicePrincipalOutput({ + * objectId: exampleApplicationFromTemplate.servicePrincipalObjectId, * }); * const exampleSynchronizationSecret = new azuread.SynchronizationSecret("example", { - * servicePrincipalId: exampleServicePrincipal.id, + * servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal => exampleGetServicePrincipal.id), * credentials: [ * { * key: "BaseAddress", @@ -52,7 +47,7 @@ import * as utilities from "./utilities"; * ], * }); * const exampleSynchronizationJob = new azuread.SynchronizationJob("example", { - * servicePrincipalId: exampleServicePrincipal.id, + * servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal => exampleGetServicePrincipal.id), * templateId: "dataBricks", * enabled: true, * }); @@ -97,7 +92,7 @@ export class SynchronizationJob extends pulumi.CustomResource { } /** - * Whether or not the provisioning job is enabled. Default state is `true`. + * Whether the provisioning job is enabled. Default state is `true`. */ public readonly enabled!: pulumi.Output; /** @@ -105,7 +100,7 @@ export class SynchronizationJob extends pulumi.CustomResource { */ public /*out*/ readonly schedules!: pulumi.Output; /** - * The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. */ public readonly servicePrincipalId!: pulumi.Output; /** @@ -153,7 +148,7 @@ export class SynchronizationJob extends pulumi.CustomResource { */ export interface SynchronizationJobState { /** - * Whether or not the provisioning job is enabled. Default state is `true`. + * Whether the provisioning job is enabled. Default state is `true`. */ enabled?: pulumi.Input; /** @@ -161,7 +156,7 @@ export interface SynchronizationJobState { */ schedules?: pulumi.Input[]>; /** - * The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. */ servicePrincipalId?: pulumi.Input; /** @@ -175,11 +170,11 @@ export interface SynchronizationJobState { */ export interface SynchronizationJobArgs { /** - * Whether or not the provisioning job is enabled. Default state is `true`. + * Whether the provisioning job is enabled. Default state is `true`. */ enabled?: pulumi.Input; /** - * The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. */ servicePrincipalId: pulumi.Input; /** diff --git a/sdk/nodejs/synchronizationJobProvisionOnDemand.ts b/sdk/nodejs/synchronizationJobProvisionOnDemand.ts index eeaab89ec..72350b624 100644 --- a/sdk/nodejs/synchronizationJobProvisionOnDemand.ts +++ b/sdk/nodejs/synchronizationJobProvisionOnDemand.ts @@ -32,20 +32,15 @@ import * as utilities from "./utilities"; * const example = azuread.getApplicationTemplate({ * displayName: "Azure Databricks SCIM Provisioning Connector", * }); - * const exampleApplication = new azuread.Application("example", { + * const exampleApplicationFromTemplate = new azuread.ApplicationFromTemplate("example", { * displayName: "example", * templateId: example.then(example => example.templateId), - * featureTags: [{ - * enterprise: true, - * gallery: true, - * }], * }); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", { - * clientId: exampleApplication.clientId, - * useExisting: true, + * const exampleGetServicePrincipal = azuread.getServicePrincipalOutput({ + * objectId: exampleApplicationFromTemplate.servicePrincipalObjectId, * }); * const exampleSynchronizationSecret = new azuread.SynchronizationSecret("example", { - * servicePrincipalId: exampleServicePrincipal.id, + * servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal => exampleGetServicePrincipal.id), * credentials: [ * { * key: "BaseAddress", @@ -58,12 +53,12 @@ import * as utilities from "./utilities"; * ], * }); * const exampleSynchronizationJob = new azuread.SynchronizationJob("example", { - * servicePrincipalId: exampleServicePrincipal.id, + * servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal => exampleGetServicePrincipal.id), * templateId: "dataBricks", * enabled: true, * }); * const exampleSynchronizationJobProvisionOnDemand = new azuread.SynchronizationJobProvisionOnDemand("example", { - * servicePrincipalId: exampleServicePrincipal.id, + * servicePrincipalId: exampleSynchronizationJob.servicePrincipalId, * synchronizationJobId: exampleSynchronizationJob.id, * parameters: [{ * ruleId: "", @@ -112,11 +107,11 @@ export class SynchronizationJobProvisionOnDemand extends pulumi.CustomResource { */ public readonly parameters!: pulumi.Output; /** - * The object ID of the service principal for the synchronization job. + * The ID of the service principal for the synchronization job. */ public readonly servicePrincipalId!: pulumi.Output; /** - * Identifier of the synchronization template this job is based on. + * The ID of the synchronization job. */ public readonly synchronizationJobId!: pulumi.Output; public readonly triggers!: pulumi.Output<{[key: string]: string} | undefined>; @@ -168,11 +163,11 @@ export interface SynchronizationJobProvisionOnDemandState { */ parameters?: pulumi.Input[]>; /** - * The object ID of the service principal for the synchronization job. + * The ID of the service principal for the synchronization job. */ servicePrincipalId?: pulumi.Input; /** - * Identifier of the synchronization template this job is based on. + * The ID of the synchronization job. */ synchronizationJobId?: pulumi.Input; triggers?: pulumi.Input<{[key: string]: pulumi.Input}>; @@ -187,11 +182,11 @@ export interface SynchronizationJobProvisionOnDemandArgs { */ parameters: pulumi.Input[]>; /** - * The object ID of the service principal for the synchronization job. + * The ID of the service principal for the synchronization job. */ servicePrincipalId: pulumi.Input; /** - * Identifier of the synchronization template this job is based on. + * The ID of the synchronization job. */ synchronizationJobId: pulumi.Input; triggers?: pulumi.Input<{[key: string]: pulumi.Input}>; diff --git a/sdk/nodejs/synchronizationSecret.ts b/sdk/nodejs/synchronizationSecret.ts index c2ff6f894..c7bc267d9 100644 --- a/sdk/nodejs/synchronizationSecret.ts +++ b/sdk/nodejs/synchronizationSecret.ts @@ -26,20 +26,15 @@ import * as utilities from "./utilities"; * const example = azuread.getApplicationTemplate({ * displayName: "Azure Databricks SCIM Provisioning Connector", * }); - * const exampleApplication = new azuread.Application("example", { + * const exampleApplicationFromTemplate = new azuread.ApplicationFromTemplate("example", { * displayName: "example", * templateId: example.then(example => example.templateId), - * featureTags: [{ - * enterprise: true, - * gallery: true, - * }], * }); - * const exampleServicePrincipal = new azuread.ServicePrincipal("example", { - * clientId: exampleApplication.applicationId, - * useExisting: true, + * const exampleGetServicePrincipal = azuread.getServicePrincipalOutput({ + * objectId: exampleApplicationFromTemplate.servicePrincipalObjectId, * }); * const exampleSynchronizationSecret = new azuread.SynchronizationSecret("example", { - * servicePrincipalId: exampleServicePrincipal.id, + * servicePrincipalId: exampleGetServicePrincipal.apply(exampleGetServicePrincipal => exampleGetServicePrincipal.id), * credentials: [ * { * key: "BaseAddress", @@ -90,7 +85,7 @@ export class SynchronizationSecret extends pulumi.CustomResource { */ public readonly credentials!: pulumi.Output; /** - * The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. */ public readonly servicePrincipalId!: pulumi.Output; @@ -131,7 +126,7 @@ export interface SynchronizationSecretState { */ credentials?: pulumi.Input[]>; /** - * The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. */ servicePrincipalId?: pulumi.Input; } @@ -145,7 +140,7 @@ export interface SynchronizationSecretArgs { */ credentials?: pulumi.Input[]>; /** - * The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + * The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. */ servicePrincipalId: pulumi.Input; } diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 02e31b371..ea3b6db9c 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -241,7 +241,7 @@ export interface AccessPackageAssignmentPolicyRequestorSettingsRequestor { export interface ApplicationApi { /** - * A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. */ knownClientApplications?: pulumi.Input[]>; /** diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 21059f62e..ac6cfdde2 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -241,7 +241,7 @@ export interface AccessPackageAssignmentPolicyRequestorSettingsRequestor { export interface ApplicationApi { /** - * A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + * A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. */ knownClientApplications?: string[]; /** @@ -1209,12 +1209,6 @@ export interface GetServicePrincipalsServicePrincipal { * Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. */ appRoleAssignmentRequired: boolean; - /** - * The application ID (client ID) for the associated application - * - * @deprecated The `applicationId` attribute has been replaced by the `clientId` attribute and will be removed in version 3.0 of the AzureAD provider - */ - applicationId: string; /** * The tenant ID where the associated application is registered. */ diff --git a/sdk/python/README.md b/sdk/python/README.md index 36a9ba3fb..c1f3f9168 100644 --- a/sdk/python/README.md +++ b/sdk/python/README.md @@ -3,7 +3,7 @@ [![NPM version](https://badge.fury.io/js/%40pulumi%2Fazuread.svg)](https://npmjs.com/package/@pulumi/azuread) [![NuGet version](https://badge.fury.io/nu/pulumi.azuread.svg)](https://badge.fury.io/nu/pulumi.azured) [![Python version](https://badge.fury.io/py/pulumi-azuread.svg)](https://pypi.org/project/pulumi-azuread) -[![PkgGoDev](https://pkg.go.dev/badge/github.com/pulumi/pulumi-azuread/sdk/v5/go)](https://pkg.go.dev/github.com/pulumi/pulumi-azuread/sdk/v5/go) +[![PkgGoDev](https://pkg.go.dev/badge/github.com/pulumi/pulumi-azuread/sdk/v6/go)](https://pkg.go.dev/github.com/pulumi/pulumi-azuread/sdk/v6/go) [![License](https://img.shields.io/npm/l/%40pulumi%2Fpulumi.svg)](https://github.com/pulumi/pulumi-azuread/blob/master/LICENSE) # Microsoft Azure Active Directory Resource Provider @@ -25,51 +25,51 @@ This package is available in many languages in the standard packaging formats. To use from JavaScript or TypeScript in Node.js, install using either `npm`: - $ npm install @pulumi/azuread + npm install @pulumi/azuread or `yarn`: - $ yarn add @pulumi/azuread + yarn add @pulumi/azuread ### Python 3 To use from Python, install using `pip`: - $ pip install pulumi-azuread + pip install pulumi-azuread ### Go To use from Go, use `go get` to grab the latest version of the library - $ go get github.com/pulumi/pulumi-azuread/sdk/v5 + go get github.com/pulumi/pulumi-azuread/sdk/v6 ### .NET To use from .NET, install using `dotnet add package`: - $ dotnet add package Pulumi.Azuread + dotnet add package Pulumi.Azuread ## Configuration The following configuration points are available: -- `azuread:clientId` - The Client ID which should be used. This can also be sourced from the `ARM_CLIENT_ID` Environment +- `azuread:clientId` - The Client ID which should be used. This can also be sourced from the `ARM_CLIENT_ID` Environment Variable. -- `azuread:tenantId` - The Tenant ID which should be used. This can also be sourced from the `ARM_TENANT_ID` Environment +- `azuread:tenantId` - The Tenant ID which should be used. This can also be sourced from the `ARM_TENANT_ID` Environment Variable. -- `azuread:clientSecret` - The Client Secret which should be used. This can also be sourced from the `ARM_CLIENT_SECRET` +- `azuread:clientSecret` - The Client Secret which should be used. This can also be sourced from the `ARM_CLIENT_SECRET` Environment Variable. -- `azuread:certificatePassword` - The password associated with the Client Certificate. This can also be sourced from +- `azuread:certificatePassword` - The password associated with the Client Certificate. This can also be sourced from the `ARM_CLIENT_CERTIFICATE_PASSWORD` Environment Variable. -- `azuread:clientCertificatePath` - The path to the Client Certificate associated with the Service Principal which should +- `azuread:clientCertificatePath` - The path to the Client Certificate associated with the Service Principal which should be used. This can also be sourced from the `ARM_CLIENT_CERTIFICATE_PATH` Environment Variable. -- `azuread:environment` - The Cloud Environment which be used. Possible values are public, usgovernment, german and china. +- `azuread:environment` - The Cloud Environment which be used. Possible values are public, usgovernment, german and china. Defaults to `public`. This can also be sourced from the `ARM_ENVIRONMENT` environment variable. - `azuread:msiEndpoint` - The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically. This can also be sourced from the `ARM_MSI_ENDPOINT` Environment Variable. -- `azuread:useMsi` - Should Managed Service Identity be used for Authentication? This can also be sourced from the +- `azuread:useMsi` - Should Managed Service Identity be used for Authentication? This can also be sourced from the `ARM_USE_MSI` Environment Variable. Defaults to `false`. - + ## Reference For further information, please visit [the AzureAD provider docs](https://www.pulumi.com/registry/packages/azuread/) or for detailed reference documentation, please visit [the API docs](https://www.pulumi.com/registry/packages/azuread/api-docs/). diff --git a/sdk/python/pulumi_azuread/_inputs.py b/sdk/python/pulumi_azuread/_inputs.py index 1eab21850..79385f66c 100644 --- a/sdk/python/pulumi_azuread/_inputs.py +++ b/sdk/python/pulumi_azuread/_inputs.py @@ -1287,7 +1287,7 @@ def object_id(self, value: Optional[pulumi.Input[str]]): class ApplicationApiArgsDict(TypedDict): known_client_applications: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. """ mapped_claims_enabled: NotRequired[pulumi.Input[bool]] """ @@ -1312,7 +1312,7 @@ def __init__(__self__, *, oauth2_permission_scopes: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationApiOauth2PermissionScopeArgs']]]] = None, requested_access_token_version: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] known_client_applications: A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + :param pulumi.Input[Sequence[pulumi.Input[str]]] known_client_applications: A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. :param pulumi.Input[bool] mapped_claims_enabled: Allows an application to use claims mapping without specifying a custom signing key. Defaults to `false`. :param pulumi.Input[Sequence[pulumi.Input['ApplicationApiOauth2PermissionScopeArgs']]] oauth2_permission_scopes: One or more `oauth2_permission_scope` blocks as documented below, to describe delegated permissions exposed by the web API represented by this application. :param pulumi.Input[int] requested_access_token_version: The access token version expected by this resource. Must be one of `1` or `2`, and must be `2` when `sign_in_audience` is either `AzureADandPersonalMicrosoftAccount` or `PersonalMicrosoftAccount` Defaults to `1`. @@ -1330,7 +1330,7 @@ def __init__(__self__, *, @pulumi.getter(name="knownClientApplications") def known_client_applications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. """ return pulumi.get(self, "known_client_applications") diff --git a/sdk/python/pulumi_azuread/app_role_assignment.py b/sdk/python/pulumi_azuread/app_role_assignment.py index 6d52c87d5..f8096d03c 100644 --- a/sdk/python/pulumi_azuread/app_role_assignment.py +++ b/sdk/python/pulumi_azuread/app_role_assignment.py @@ -220,7 +220,7 @@ def __init__(__self__, }, ], }]) - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_app_role_assignment = azuread.AppRoleAssignment("example", app_role_id=msgraph.app_role_ids["User.Read.All"], principal_object_id=example_service_principal.object_id, @@ -243,17 +243,17 @@ def __init__(__self__, "id": "00000000-0000-0000-0000-111111111111", "value": "Query.All", }]) - internal_service_principal = azuread.ServicePrincipal("internal", client_id=internal.application_id) + internal_service_principal = azuread.ServicePrincipal("internal", client_id=internal.client_id) example = azuread.Application("example", display_name="example", required_resource_accesses=[{ - "resource_app_id": internal.application_id, + "resource_app_id": internal.client_id, "resource_accesses": [{ "id": internal_service_principal.app_role_ids["Query.All"], "type": "Role", }], }]) - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_app_role_assignment = azuread.AppRoleAssignment("example", app_role_id=internal_service_principal.app_role_ids["Query.All"], principal_object_id=example_service_principal.object_id, @@ -322,7 +322,7 @@ def __init__(__self__, }, ], }]) - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_app_role_assignment = azuread.AppRoleAssignment("example", app_role_id=msgraph.app_role_ids["User.Read.All"], principal_object_id=example_service_principal.object_id, @@ -345,17 +345,17 @@ def __init__(__self__, "id": "00000000-0000-0000-0000-111111111111", "value": "Query.All", }]) - internal_service_principal = azuread.ServicePrincipal("internal", client_id=internal.application_id) + internal_service_principal = azuread.ServicePrincipal("internal", client_id=internal.client_id) example = azuread.Application("example", display_name="example", required_resource_accesses=[{ - "resource_app_id": internal.application_id, + "resource_app_id": internal.client_id, "resource_accesses": [{ "id": internal_service_principal.app_role_ids["Query.All"], "type": "Role", }], }]) - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_app_role_assignment = azuread.AppRoleAssignment("example", app_role_id=internal_service_principal.app_role_ids["Query.All"], principal_object_id=example_service_principal.object_id, diff --git a/sdk/python/pulumi_azuread/application.py b/sdk/python/pulumi_azuread/application.py index f774f6b65..4fb274a12 100644 --- a/sdk/python/pulumi_azuread/application.py +++ b/sdk/python/pulumi_azuread/application.py @@ -503,7 +503,6 @@ def __init__(__self__, *, api: Optional[pulumi.Input['ApplicationApiArgs']] = None, app_role_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, app_roles: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationAppRoleArgs']]]] = None, - application_id: Optional[pulumi.Input[str]] = None, client_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, device_only_auth_enabled: Optional[pulumi.Input[bool]] = None, @@ -541,7 +540,6 @@ def __init__(__self__, *, :param pulumi.Input['ApplicationApiArgs'] api: An `api` block as documented below, which configures API related settings for this application. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] app_role_ids: A mapping of app role values to app role IDs, intended to be useful when referencing app roles in other resources in your configuration. :param pulumi.Input[Sequence[pulumi.Input['ApplicationAppRoleArgs']]] app_roles: A collection of `app_role` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). - :param pulumi.Input[str] application_id: The Application ID (also called Client ID) :param pulumi.Input[str] client_id: The Client ID for the application. :param pulumi.Input[str] description: A description of the application, as shown to end users. :param pulumi.Input[bool] device_only_auth_enabled: Specifies whether this application supports device authentication without a user. Defaults to `false`. @@ -593,11 +591,6 @@ def __init__(__self__, *, pulumi.set(__self__, "app_role_ids", app_role_ids) if app_roles is not None: pulumi.set(__self__, "app_roles", app_roles) - if application_id is not None: - warnings.warn("""The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_id is deprecated: The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider""") - if application_id is not None: - pulumi.set(__self__, "application_id", application_id) if client_id is not None: pulumi.set(__self__, "client_id", client_id) if description is not None: @@ -699,19 +692,6 @@ def app_roles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationA def app_roles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationAppRoleArgs']]]]): pulumi.set(self, "app_roles", value) - @property - @pulumi.getter(name="applicationId") - @_utilities.deprecated("""The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider""") - def application_id(self) -> Optional[pulumi.Input[str]]: - """ - The Application ID (also called Client ID) - """ - return pulumi.get(self, "application_id") - - @application_id.setter - def application_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_id", value) - @property @pulumi.getter(name="clientId") def client_id(self) -> Optional[pulumi.Input[str]]: @@ -1164,8 +1144,8 @@ def __init__(__self__, "mapped_claims_enabled": True, "requested_access_token_version": 2, "known_client_applications": [ - known1["applicationId"], - known2["applicationId"], + known1["clientId"], + known2["clientId"], ], "oauth2_permission_scopes": [ { @@ -1345,8 +1325,8 @@ def __init__(__self__, "mapped_claims_enabled": True, "requested_access_token_version": 2, "known_client_applications": [ - known1["applicationId"], - known2["applicationId"], + known1["clientId"], + known2["clientId"], ], "oauth2_permission_scopes": [ { @@ -1539,7 +1519,6 @@ def _internal_init(__self__, __props__.__dict__["terms_of_service_url"] = terms_of_service_url __props__.__dict__["web"] = web __props__.__dict__["app_role_ids"] = None - __props__.__dict__["application_id"] = None __props__.__dict__["client_id"] = None __props__.__dict__["disabled_by_microsoft"] = None __props__.__dict__["logo_url"] = None @@ -1559,7 +1538,6 @@ def get(resource_name: str, api: Optional[pulumi.Input[Union['ApplicationApiArgs', 'ApplicationApiArgsDict']]] = None, app_role_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, app_roles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApplicationAppRoleArgs', 'ApplicationAppRoleArgsDict']]]]] = None, - application_id: Optional[pulumi.Input[str]] = None, client_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, device_only_auth_enabled: Optional[pulumi.Input[bool]] = None, @@ -1602,7 +1580,6 @@ def get(resource_name: str, :param pulumi.Input[Union['ApplicationApiArgs', 'ApplicationApiArgsDict']] api: An `api` block as documented below, which configures API related settings for this application. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] app_role_ids: A mapping of app role values to app role IDs, intended to be useful when referencing app roles in other resources in your configuration. :param pulumi.Input[Sequence[pulumi.Input[Union['ApplicationAppRoleArgs', 'ApplicationAppRoleArgsDict']]]] app_roles: A collection of `app_role` blocks as documented below. For more information see [official documentation on Application Roles](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). - :param pulumi.Input[str] application_id: The Application ID (also called Client ID) :param pulumi.Input[str] client_id: The Client ID for the application. :param pulumi.Input[str] description: A description of the application, as shown to end users. :param pulumi.Input[bool] device_only_auth_enabled: Specifies whether this application supports device authentication without a user. Defaults to `false`. @@ -1655,7 +1632,6 @@ def get(resource_name: str, __props__.__dict__["api"] = api __props__.__dict__["app_role_ids"] = app_role_ids __props__.__dict__["app_roles"] = app_roles - __props__.__dict__["application_id"] = application_id __props__.__dict__["client_id"] = client_id __props__.__dict__["description"] = description __props__.__dict__["device_only_auth_enabled"] = device_only_auth_enabled @@ -1714,15 +1690,6 @@ def app_roles(self) -> pulumi.Output[Optional[Sequence['outputs.ApplicationAppRo """ return pulumi.get(self, "app_roles") - @property - @pulumi.getter(name="applicationId") - @_utilities.deprecated("""The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider""") - def application_id(self) -> pulumi.Output[str]: - """ - The Application ID (also called Client ID) - """ - return pulumi.get(self, "application_id") - @property @pulumi.getter(name="clientId") def client_id(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_azuread/application_certificate.py b/sdk/python/pulumi_azuread/application_certificate.py index bed909d25..d11010789 100644 --- a/sdk/python/pulumi_azuread/application_certificate.py +++ b/sdk/python/pulumi_azuread/application_certificate.py @@ -19,9 +19,8 @@ @pulumi.input_type class ApplicationCertificateArgs: def __init__(__self__, *, + application_id: pulumi.Input[str], value: pulumi.Input[str], - application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, encoding: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -30,9 +29,8 @@ def __init__(__self__, *, type: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ApplicationCertificate resource. - :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument. :param pulumi.Input[str] application_id: The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this certificate should be created + :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument. :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource. @@ -44,18 +42,15 @@ def __init__(__self__, *, :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. :param pulumi.Input[str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created. """ + pulumi.set(__self__, "application_id", application_id) pulumi.set(__self__, "value", value) - if application_id is not None: - pulumi.set(__self__, "application_id", application_id) - if application_object_id is not None: - warnings.warn("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_object_id is deprecated: The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_object_id is not None: - pulumi.set(__self__, "application_object_id", application_object_id) if encoding is not None: pulumi.set(__self__, "encoding", encoding) if end_date is not None: pulumi.set(__self__, "end_date", end_date) + if end_date_relative is not None: + warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning) + pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") if end_date_relative is not None: pulumi.set(__self__, "end_date_relative", end_date_relative) if key_id is not None: @@ -65,42 +60,29 @@ def __init__(__self__, *, if type is not None: pulumi.set(__self__, "type", type) - @property - @pulumi.getter - def value(self) -> pulumi.Input[str]: - """ - The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument. - """ - return pulumi.get(self, "value") - - @value.setter - def value(self, value: pulumi.Input[str]): - pulumi.set(self, "value", value) - @property @pulumi.getter(name="applicationId") - def application_id(self) -> Optional[pulumi.Input[str]]: + def application_id(self) -> pulumi.Input[str]: """ The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "application_id") @application_id.setter - def application_id(self, value: Optional[pulumi.Input[str]]): + def application_id(self, value: pulumi.Input[str]): pulumi.set(self, "application_id", value) @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter + def value(self) -> pulumi.Input[str]: """ - The object ID of the application for which this certificate should be created + The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument. """ - return pulumi.get(self, "application_object_id") + return pulumi.get(self, "value") - @application_object_id.setter - def application_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_object_id", value) + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) @property @pulumi.getter @@ -130,6 +112,7 @@ def end_date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> Optional[pulumi.Input[str]]: """ A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -183,7 +166,6 @@ def type(self, value: Optional[pulumi.Input[str]]): class _ApplicationCertificateState: def __init__(__self__, *, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, encoding: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -194,7 +176,6 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering ApplicationCertificate resources. :param pulumi.Input[str] application_id: The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this certificate should be created :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource. @@ -209,15 +190,13 @@ def __init__(__self__, *, """ if application_id is not None: pulumi.set(__self__, "application_id", application_id) - if application_object_id is not None: - warnings.warn("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_object_id is deprecated: The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_object_id is not None: - pulumi.set(__self__, "application_object_id", application_object_id) if encoding is not None: pulumi.set(__self__, "encoding", encoding) if end_date is not None: pulumi.set(__self__, "end_date", end_date) + if end_date_relative is not None: + warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning) + pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") if end_date_relative is not None: pulumi.set(__self__, "end_date_relative", end_date_relative) if key_id is not None: @@ -241,19 +220,6 @@ def application_id(self) -> Optional[pulumi.Input[str]]: def application_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "application_id", value) - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> Optional[pulumi.Input[str]]: - """ - The object ID of the application for which this certificate should be created - """ - return pulumi.get(self, "application_object_id") - - @application_object_id.setter - def application_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_object_id", value) - @property @pulumi.getter def encoding(self) -> Optional[pulumi.Input[str]]: @@ -282,6 +248,7 @@ def end_date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> Optional[pulumi.Input[str]]: """ A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -349,7 +316,6 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, encoding: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -464,7 +430,6 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this certificate should be created :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource. @@ -602,7 +567,6 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, encoding: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -619,8 +583,9 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = ApplicationCertificateArgs.__new__(ApplicationCertificateArgs) + if application_id is None and not opts.urn: + raise TypeError("Missing required property 'application_id'") __props__.__dict__["application_id"] = application_id - __props__.__dict__["application_object_id"] = application_object_id __props__.__dict__["encoding"] = encoding __props__.__dict__["end_date"] = end_date __props__.__dict__["end_date_relative"] = end_date_relative @@ -643,7 +608,6 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, encoding: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -659,7 +623,6 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The resource ID of the application for which this certificate should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this certificate should be created :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource. @@ -677,7 +640,6 @@ def get(resource_name: str, __props__ = _ApplicationCertificateState.__new__(_ApplicationCertificateState) __props__.__dict__["application_id"] = application_id - __props__.__dict__["application_object_id"] = application_object_id __props__.__dict__["encoding"] = encoding __props__.__dict__["end_date"] = end_date __props__.__dict__["end_date_relative"] = end_date_relative @@ -695,15 +657,6 @@ def application_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "application_id") - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> pulumi.Output[str]: - """ - The object ID of the application for which this certificate should be created - """ - return pulumi.get(self, "application_object_id") - @property @pulumi.getter def encoding(self) -> pulumi.Output[Optional[str]]: @@ -724,6 +677,7 @@ def end_date(self) -> pulumi.Output[str]: @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> pulumi.Output[Optional[str]]: """ A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. diff --git a/sdk/python/pulumi_azuread/application_federated_identity_credential.py b/sdk/python/pulumi_azuread/application_federated_identity_credential.py index ab0947419..946b88eab 100644 --- a/sdk/python/pulumi_azuread/application_federated_identity_credential.py +++ b/sdk/python/pulumi_azuread/application_federated_identity_credential.py @@ -19,37 +19,41 @@ @pulumi.input_type class ApplicationFederatedIdentityCredentialArgs: def __init__(__self__, *, + application_id: pulumi.Input[str], audiences: pulumi.Input[Sequence[pulumi.Input[str]]], display_name: pulumi.Input[str], issuer: pulumi.Input[str], subject: pulumi.Input[str], - application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ApplicationFederatedIdentityCredential resource. + :param pulumi.Input[str] application_id: The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. :param pulumi.Input[Sequence[pulumi.Input[str]]] audiences: List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. :param pulumi.Input[str] display_name: A unique display name for the federated identity credential. Changing this forces a new resource to be created. :param pulumi.Input[str] issuer: The URL of the external identity provider, which must match the issuer claim of the external token being exchanged. The combination of the values of issuer and subject must be unique on the app. :param pulumi.Input[str] subject: The identifier of the external software workload within the external identity provider. The combination of issuer and subject must be unique on the app. - :param pulumi.Input[str] application_id: The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this federated identity credential should be created :param pulumi.Input[str] description: A description for the federated identity credential. """ + pulumi.set(__self__, "application_id", application_id) pulumi.set(__self__, "audiences", audiences) pulumi.set(__self__, "display_name", display_name) pulumi.set(__self__, "issuer", issuer) pulumi.set(__self__, "subject", subject) - if application_id is not None: - pulumi.set(__self__, "application_id", application_id) - if application_object_id is not None: - warnings.warn("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_object_id is deprecated: The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_object_id is not None: - pulumi.set(__self__, "application_object_id", application_object_id) if description is not None: pulumi.set(__self__, "description", description) + @property + @pulumi.getter(name="applicationId") + def application_id(self) -> pulumi.Input[str]: + """ + The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. + """ + return pulumi.get(self, "application_id") + + @application_id.setter + def application_id(self, value: pulumi.Input[str]): + pulumi.set(self, "application_id", value) + @property @pulumi.getter def audiences(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: @@ -98,31 +102,6 @@ def subject(self) -> pulumi.Input[str]: def subject(self, value: pulumi.Input[str]): pulumi.set(self, "subject", value) - @property - @pulumi.getter(name="applicationId") - def application_id(self) -> Optional[pulumi.Input[str]]: - """ - The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. - """ - return pulumi.get(self, "application_id") - - @application_id.setter - def application_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_id", value) - - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> Optional[pulumi.Input[str]]: - """ - The object ID of the application for which this federated identity credential should be created - """ - return pulumi.get(self, "application_object_id") - - @application_object_id.setter - def application_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_object_id", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -140,7 +119,6 @@ def description(self, value: Optional[pulumi.Input[str]]): class _ApplicationFederatedIdentityCredentialState: def __init__(__self__, *, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, audiences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, credential_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, @@ -150,7 +128,6 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering ApplicationFederatedIdentityCredential resources. :param pulumi.Input[str] application_id: The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this federated identity credential should be created :param pulumi.Input[Sequence[pulumi.Input[str]]] audiences: List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. :param pulumi.Input[str] credential_id: A UUID used to uniquely identify this federated identity credential. :param pulumi.Input[str] description: A description for the federated identity credential. @@ -160,11 +137,6 @@ def __init__(__self__, *, """ if application_id is not None: pulumi.set(__self__, "application_id", application_id) - if application_object_id is not None: - warnings.warn("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_object_id is deprecated: The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_object_id is not None: - pulumi.set(__self__, "application_object_id", application_object_id) if audiences is not None: pulumi.set(__self__, "audiences", audiences) if credential_id is not None: @@ -190,19 +162,6 @@ def application_id(self) -> Optional[pulumi.Input[str]]: def application_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "application_id", value) - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> Optional[pulumi.Input[str]]: - """ - The object ID of the application for which this federated identity credential should be created - """ - return pulumi.get(self, "application_object_id") - - @application_object_id.setter - def application_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_object_id", value) - @property @pulumi.getter def audiences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -282,7 +241,6 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, audiences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, @@ -319,7 +277,6 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this federated identity credential should be created :param pulumi.Input[Sequence[pulumi.Input[str]]] audiences: List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. :param pulumi.Input[str] description: A description for the federated identity credential. :param pulumi.Input[str] display_name: A unique display name for the federated identity credential. Changing this forces a new resource to be created. @@ -375,7 +332,6 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, audiences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, @@ -390,8 +346,9 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = ApplicationFederatedIdentityCredentialArgs.__new__(ApplicationFederatedIdentityCredentialArgs) + if application_id is None and not opts.urn: + raise TypeError("Missing required property 'application_id'") __props__.__dict__["application_id"] = application_id - __props__.__dict__["application_object_id"] = application_object_id if audiences is None and not opts.urn: raise TypeError("Missing required property 'audiences'") __props__.__dict__["audiences"] = audiences @@ -417,7 +374,6 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, audiences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, credential_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, @@ -432,7 +388,6 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The resource ID of the application for which this federated identity credential should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this federated identity credential should be created :param pulumi.Input[Sequence[pulumi.Input[str]]] audiences: List of audiences that can appear in the external token. This specifies what should be accepted in the `aud` claim of incoming tokens. :param pulumi.Input[str] credential_id: A UUID used to uniquely identify this federated identity credential. :param pulumi.Input[str] description: A description for the federated identity credential. @@ -445,7 +400,6 @@ def get(resource_name: str, __props__ = _ApplicationFederatedIdentityCredentialState.__new__(_ApplicationFederatedIdentityCredentialState) __props__.__dict__["application_id"] = application_id - __props__.__dict__["application_object_id"] = application_object_id __props__.__dict__["audiences"] = audiences __props__.__dict__["credential_id"] = credential_id __props__.__dict__["description"] = description @@ -462,15 +416,6 @@ def application_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "application_id") - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> pulumi.Output[str]: - """ - The object ID of the application for which this federated identity credential should be created - """ - return pulumi.get(self, "application_object_id") - @property @pulumi.getter def audiences(self) -> pulumi.Output[Sequence[str]]: diff --git a/sdk/python/pulumi_azuread/application_password.py b/sdk/python/pulumi_azuread/application_password.py index 3e4ca158e..0bf41ddd4 100644 --- a/sdk/python/pulumi_azuread/application_password.py +++ b/sdk/python/pulumi_azuread/application_password.py @@ -19,8 +19,7 @@ @pulumi.input_type class ApplicationPasswordInitArgs: def __init__(__self__, *, - application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, + application_id: pulumi.Input[str], display_name: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -29,24 +28,20 @@ def __init__(__self__, *, """ The set of arguments for constructing a ApplicationPassword resource. :param pulumi.Input[str] application_id: The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this password should be created :param pulumi.Input[str] display_name: A display name for the password. Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date: The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date_relative: A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] rotate_when_changed: A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. """ - if application_id is not None: - pulumi.set(__self__, "application_id", application_id) - if application_object_id is not None: - warnings.warn("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_object_id is deprecated: The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_object_id is not None: - pulumi.set(__self__, "application_object_id", application_object_id) + pulumi.set(__self__, "application_id", application_id) if display_name is not None: pulumi.set(__self__, "display_name", display_name) if end_date is not None: pulumi.set(__self__, "end_date", end_date) + if end_date_relative is not None: + warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning) + pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") if end_date_relative is not None: pulumi.set(__self__, "end_date_relative", end_date_relative) if rotate_when_changed is not None: @@ -56,29 +51,16 @@ def __init__(__self__, *, @property @pulumi.getter(name="applicationId") - def application_id(self) -> Optional[pulumi.Input[str]]: + def application_id(self) -> pulumi.Input[str]: """ The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "application_id") @application_id.setter - def application_id(self, value: Optional[pulumi.Input[str]]): + def application_id(self, value: pulumi.Input[str]): pulumi.set(self, "application_id", value) - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> Optional[pulumi.Input[str]]: - """ - The object ID of the application for which this password should be created - """ - return pulumi.get(self, "application_object_id") - - @application_object_id.setter - def application_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_object_id", value) - @property @pulumi.getter(name="displayName") def display_name(self) -> Optional[pulumi.Input[str]]: @@ -105,6 +87,7 @@ def end_date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> Optional[pulumi.Input[str]]: """ A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -144,7 +127,6 @@ def start_date(self, value: Optional[pulumi.Input[str]]): class _ApplicationPasswordState: def __init__(__self__, *, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -155,7 +137,6 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering ApplicationPassword resources. :param pulumi.Input[str] application_id: The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this password should be created :param pulumi.Input[str] display_name: A display name for the password. Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date: The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date_relative: A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -166,15 +147,13 @@ def __init__(__self__, *, """ if application_id is not None: pulumi.set(__self__, "application_id", application_id) - if application_object_id is not None: - warnings.warn("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_object_id is deprecated: The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_object_id is not None: - pulumi.set(__self__, "application_object_id", application_object_id) if display_name is not None: pulumi.set(__self__, "display_name", display_name) if end_date is not None: pulumi.set(__self__, "end_date", end_date) + if end_date_relative is not None: + warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning) + pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") if end_date_relative is not None: pulumi.set(__self__, "end_date_relative", end_date_relative) if key_id is not None: @@ -198,19 +177,6 @@ def application_id(self) -> Optional[pulumi.Input[str]]: def application_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "application_id", value) - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> Optional[pulumi.Input[str]]: - """ - The object ID of the application for which this password should be created - """ - return pulumi.get(self, "application_object_id") - - @application_object_id.setter - def application_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_object_id", value) - @property @pulumi.getter(name="displayName") def display_name(self) -> Optional[pulumi.Input[str]]: @@ -237,6 +203,7 @@ def end_date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> Optional[pulumi.Input[str]]: """ A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -302,7 +269,6 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -345,7 +311,6 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this password should be created :param pulumi.Input[str] display_name: A display name for the password. Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date: The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date_relative: A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -356,7 +321,7 @@ def __init__(__self__, @overload def __init__(__self__, resource_name: str, - args: Optional[ApplicationPasswordInitArgs] = None, + args: ApplicationPasswordInitArgs, opts: Optional[pulumi.ResourceOptions] = None): """ ## Example Usage @@ -407,7 +372,6 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -422,8 +386,9 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = ApplicationPasswordInitArgs.__new__(ApplicationPasswordInitArgs) + if application_id is None and not opts.urn: + raise TypeError("Missing required property 'application_id'") __props__.__dict__["application_id"] = application_id - __props__.__dict__["application_object_id"] = application_object_id __props__.__dict__["display_name"] = display_name __props__.__dict__["end_date"] = end_date __props__.__dict__["end_date_relative"] = end_date_relative @@ -444,7 +409,6 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, end_date: Optional[pulumi.Input[str]] = None, end_date_relative: Optional[pulumi.Input[str]] = None, @@ -460,7 +424,6 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The resource ID of the application for which this password should be created. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application for which this password should be created :param pulumi.Input[str] display_name: A display name for the password. Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date: The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date_relative: A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -474,7 +437,6 @@ def get(resource_name: str, __props__ = _ApplicationPasswordState.__new__(_ApplicationPasswordState) __props__.__dict__["application_id"] = application_id - __props__.__dict__["application_object_id"] = application_object_id __props__.__dict__["display_name"] = display_name __props__.__dict__["end_date"] = end_date __props__.__dict__["end_date_relative"] = end_date_relative @@ -492,15 +454,6 @@ def application_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "application_id") - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> pulumi.Output[str]: - """ - The object ID of the application for which this password should be created - """ - return pulumi.get(self, "application_object_id") - @property @pulumi.getter(name="displayName") def display_name(self) -> pulumi.Output[str]: @@ -519,6 +472,7 @@ def end_date(self) -> pulumi.Output[str]: @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> pulumi.Output[Optional[str]]: """ A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. diff --git a/sdk/python/pulumi_azuread/application_pre_authorized.py b/sdk/python/pulumi_azuread/application_pre_authorized.py index 7a1fca097..55e7ae8f0 100644 --- a/sdk/python/pulumi_azuread/application_pre_authorized.py +++ b/sdk/python/pulumi_azuread/application_pre_authorized.py @@ -19,126 +19,70 @@ @pulumi.input_type class ApplicationPreAuthorizedArgs: def __init__(__self__, *, - permission_ids: pulumi.Input[Sequence[pulumi.Input[str]]], - application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, - authorized_app_id: Optional[pulumi.Input[str]] = None, - authorized_client_id: Optional[pulumi.Input[str]] = None): + application_id: pulumi.Input[str], + authorized_client_id: pulumi.Input[str], + permission_ids: pulumi.Input[Sequence[pulumi.Input[str]]]): """ The set of arguments for constructing a ApplicationPreAuthorized resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] permission_ids: A set of permission scope IDs required by the authorized application. :param pulumi.Input[str] application_id: The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application to which this pre-authorized application should be added - :param pulumi.Input[str] authorized_app_id: The application ID of the pre-authorized application :param pulumi.Input[str] authorized_client_id: The client ID of the application being authorized. Changing this field forces a new resource to be created. + :param pulumi.Input[Sequence[pulumi.Input[str]]] permission_ids: A set of permission scope IDs required by the authorized application. """ + pulumi.set(__self__, "application_id", application_id) + pulumi.set(__self__, "authorized_client_id", authorized_client_id) pulumi.set(__self__, "permission_ids", permission_ids) - if application_id is not None: - pulumi.set(__self__, "application_id", application_id) - if application_object_id is not None: - warnings.warn("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_object_id is deprecated: The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_object_id is not None: - pulumi.set(__self__, "application_object_id", application_object_id) - if authorized_app_id is not None: - warnings.warn("""The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""authorized_app_id is deprecated: The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider""") - if authorized_app_id is not None: - pulumi.set(__self__, "authorized_app_id", authorized_app_id) - if authorized_client_id is not None: - pulumi.set(__self__, "authorized_client_id", authorized_client_id) - - @property - @pulumi.getter(name="permissionIds") - def permission_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - A set of permission scope IDs required by the authorized application. - """ - return pulumi.get(self, "permission_ids") - - @permission_ids.setter - def permission_ids(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "permission_ids", value) @property @pulumi.getter(name="applicationId") - def application_id(self) -> Optional[pulumi.Input[str]]: + def application_id(self) -> pulumi.Input[str]: """ The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. """ return pulumi.get(self, "application_id") @application_id.setter - def application_id(self, value: Optional[pulumi.Input[str]]): + def application_id(self, value: pulumi.Input[str]): pulumi.set(self, "application_id", value) - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> Optional[pulumi.Input[str]]: - """ - The object ID of the application to which this pre-authorized application should be added - """ - return pulumi.get(self, "application_object_id") - - @application_object_id.setter - def application_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_object_id", value) - - @property - @pulumi.getter(name="authorizedAppId") - @_utilities.deprecated("""The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider""") - def authorized_app_id(self) -> Optional[pulumi.Input[str]]: - """ - The application ID of the pre-authorized application - """ - return pulumi.get(self, "authorized_app_id") - - @authorized_app_id.setter - def authorized_app_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "authorized_app_id", value) - @property @pulumi.getter(name="authorizedClientId") - def authorized_client_id(self) -> Optional[pulumi.Input[str]]: + def authorized_client_id(self) -> pulumi.Input[str]: """ The client ID of the application being authorized. Changing this field forces a new resource to be created. """ return pulumi.get(self, "authorized_client_id") @authorized_client_id.setter - def authorized_client_id(self, value: Optional[pulumi.Input[str]]): + def authorized_client_id(self, value: pulumi.Input[str]): pulumi.set(self, "authorized_client_id", value) + @property + @pulumi.getter(name="permissionIds") + def permission_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + A set of permission scope IDs required by the authorized application. + """ + return pulumi.get(self, "permission_ids") + + @permission_ids.setter + def permission_ids(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "permission_ids", value) + @pulumi.input_type class _ApplicationPreAuthorizedState: def __init__(__self__, *, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, - authorized_app_id: Optional[pulumi.Input[str]] = None, authorized_client_id: Optional[pulumi.Input[str]] = None, permission_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering ApplicationPreAuthorized resources. :param pulumi.Input[str] application_id: The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application to which this pre-authorized application should be added - :param pulumi.Input[str] authorized_app_id: The application ID of the pre-authorized application :param pulumi.Input[str] authorized_client_id: The client ID of the application being authorized. Changing this field forces a new resource to be created. :param pulumi.Input[Sequence[pulumi.Input[str]]] permission_ids: A set of permission scope IDs required by the authorized application. """ if application_id is not None: pulumi.set(__self__, "application_id", application_id) - if application_object_id is not None: - warnings.warn("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_object_id is deprecated: The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_object_id is not None: - pulumi.set(__self__, "application_object_id", application_object_id) - if authorized_app_id is not None: - warnings.warn("""The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""authorized_app_id is deprecated: The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider""") - if authorized_app_id is not None: - pulumi.set(__self__, "authorized_app_id", authorized_app_id) if authorized_client_id is not None: pulumi.set(__self__, "authorized_client_id", authorized_client_id) if permission_ids is not None: @@ -156,32 +100,6 @@ def application_id(self) -> Optional[pulumi.Input[str]]: def application_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "application_id", value) - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> Optional[pulumi.Input[str]]: - """ - The object ID of the application to which this pre-authorized application should be added - """ - return pulumi.get(self, "application_object_id") - - @application_object_id.setter - def application_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_object_id", value) - - @property - @pulumi.getter(name="authorizedAppId") - @_utilities.deprecated("""The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider""") - def authorized_app_id(self) -> Optional[pulumi.Input[str]]: - """ - The application ID of the pre-authorized application - """ - return pulumi.get(self, "authorized_app_id") - - @authorized_app_id.setter - def authorized_app_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "authorized_app_id", value) - @property @pulumi.getter(name="authorizedClientId") def authorized_client_id(self) -> Optional[pulumi.Input[str]]: @@ -213,8 +131,6 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, - authorized_app_id: Optional[pulumi.Input[str]] = None, authorized_client_id: Optional[pulumi.Input[str]] = None, permission_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): @@ -272,8 +188,6 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application to which this pre-authorized application should be added - :param pulumi.Input[str] authorized_app_id: The application ID of the pre-authorized application :param pulumi.Input[str] authorized_client_id: The client ID of the application being authorized. Changing this field forces a new resource to be created. :param pulumi.Input[Sequence[pulumi.Input[str]]] permission_ids: A set of permission scope IDs required by the authorized application. """ @@ -350,8 +264,6 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, - authorized_app_id: Optional[pulumi.Input[str]] = None, authorized_client_id: Optional[pulumi.Input[str]] = None, permission_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): @@ -363,9 +275,11 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = ApplicationPreAuthorizedArgs.__new__(ApplicationPreAuthorizedArgs) + if application_id is None and not opts.urn: + raise TypeError("Missing required property 'application_id'") __props__.__dict__["application_id"] = application_id - __props__.__dict__["application_object_id"] = application_object_id - __props__.__dict__["authorized_app_id"] = authorized_app_id + if authorized_client_id is None and not opts.urn: + raise TypeError("Missing required property 'authorized_client_id'") __props__.__dict__["authorized_client_id"] = authorized_client_id if permission_ids is None and not opts.urn: raise TypeError("Missing required property 'permission_ids'") @@ -381,8 +295,6 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, - application_object_id: Optional[pulumi.Input[str]] = None, - authorized_app_id: Optional[pulumi.Input[str]] = None, authorized_client_id: Optional[pulumi.Input[str]] = None, permission_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'ApplicationPreAuthorized': """ @@ -393,8 +305,6 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The resource ID of the application for which permissions are being authorized. Changing this field forces a new resource to be created. - :param pulumi.Input[str] application_object_id: The object ID of the application to which this pre-authorized application should be added - :param pulumi.Input[str] authorized_app_id: The application ID of the pre-authorized application :param pulumi.Input[str] authorized_client_id: The client ID of the application being authorized. Changing this field forces a new resource to be created. :param pulumi.Input[Sequence[pulumi.Input[str]]] permission_ids: A set of permission scope IDs required by the authorized application. """ @@ -403,8 +313,6 @@ def get(resource_name: str, __props__ = _ApplicationPreAuthorizedState.__new__(_ApplicationPreAuthorizedState) __props__.__dict__["application_id"] = application_id - __props__.__dict__["application_object_id"] = application_object_id - __props__.__dict__["authorized_app_id"] = authorized_app_id __props__.__dict__["authorized_client_id"] = authorized_client_id __props__.__dict__["permission_ids"] = permission_ids return ApplicationPreAuthorized(resource_name, opts=opts, __props__=__props__) @@ -417,24 +325,6 @@ def application_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "application_id") - @property - @pulumi.getter(name="applicationObjectId") - @_utilities.deprecated("""The `application_object_id` property has been replaced with the `application_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_object_id(self) -> pulumi.Output[str]: - """ - The object ID of the application to which this pre-authorized application should be added - """ - return pulumi.get(self, "application_object_id") - - @property - @pulumi.getter(name="authorizedAppId") - @_utilities.deprecated("""The `authorized_app_id` property has been replaced with the `authorized_client_id` property and will be removed in version 3.0 of the AzureAD provider""") - def authorized_app_id(self) -> pulumi.Output[str]: - """ - The application ID of the pre-authorized application - """ - return pulumi.get(self, "authorized_app_id") - @property @pulumi.getter(name="authorizedClientId") def authorized_client_id(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_azuread/conditional_access_policy.py b/sdk/python/pulumi_azuread/conditional_access_policy.py index a261a66df..e636cc0b3 100644 --- a/sdk/python/pulumi_azuread/conditional_access_policy.py +++ b/sdk/python/pulumi_azuread/conditional_access_policy.py @@ -113,6 +113,7 @@ def __init__(__self__, *, conditions: Optional[pulumi.Input['ConditionalAccessPolicyConditionsArgs']] = None, display_name: Optional[pulumi.Input[str]] = None, grant_controls: Optional[pulumi.Input['ConditionalAccessPolicyGrantControlsArgs']] = None, + object_id: Optional[pulumi.Input[str]] = None, session_controls: Optional[pulumi.Input['ConditionalAccessPolicySessionControlsArgs']] = None, state: Optional[pulumi.Input[str]] = None): """ @@ -120,6 +121,7 @@ def __init__(__self__, *, :param pulumi.Input['ConditionalAccessPolicyConditionsArgs'] conditions: A `conditions` block as documented below, which specifies the rules that must be met for the policy to apply. :param pulumi.Input[str] display_name: The friendly name for this Conditional Access Policy. :param pulumi.Input['ConditionalAccessPolicyGrantControlsArgs'] grant_controls: A `grant_controls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy. + :param pulumi.Input[str] object_id: The object ID of the policy :param pulumi.Input['ConditionalAccessPolicySessionControlsArgs'] session_controls: A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in. > Note: At least one of `grant_controls` and/or `session_controls` blocks must be specified. @@ -131,6 +133,8 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if grant_controls is not None: pulumi.set(__self__, "grant_controls", grant_controls) + if object_id is not None: + pulumi.set(__self__, "object_id", object_id) if session_controls is not None: pulumi.set(__self__, "session_controls", session_controls) if state is not None: @@ -172,6 +176,18 @@ def grant_controls(self) -> Optional[pulumi.Input['ConditionalAccessPolicyGrantC def grant_controls(self, value: Optional[pulumi.Input['ConditionalAccessPolicyGrantControlsArgs']]): pulumi.set(self, "grant_controls", value) + @property + @pulumi.getter(name="objectId") + def object_id(self) -> Optional[pulumi.Input[str]]: + """ + The object ID of the policy + """ + return pulumi.get(self, "object_id") + + @object_id.setter + def object_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "object_id", value) + @property @pulumi.getter(name="sessionControls") def session_controls(self) -> Optional[pulumi.Input['ConditionalAccessPolicySessionControlsArgs']]: @@ -502,6 +518,7 @@ def _internal_init(__self__, if state is None and not opts.urn: raise TypeError("Missing required property 'state'") __props__.__dict__["state"] = state + __props__.__dict__["object_id"] = None super(ConditionalAccessPolicy, __self__).__init__( 'azuread:index/conditionalAccessPolicy:ConditionalAccessPolicy', resource_name, @@ -515,6 +532,7 @@ def get(resource_name: str, conditions: Optional[pulumi.Input[Union['ConditionalAccessPolicyConditionsArgs', 'ConditionalAccessPolicyConditionsArgsDict']]] = None, display_name: Optional[pulumi.Input[str]] = None, grant_controls: Optional[pulumi.Input[Union['ConditionalAccessPolicyGrantControlsArgs', 'ConditionalAccessPolicyGrantControlsArgsDict']]] = None, + object_id: Optional[pulumi.Input[str]] = None, session_controls: Optional[pulumi.Input[Union['ConditionalAccessPolicySessionControlsArgs', 'ConditionalAccessPolicySessionControlsArgsDict']]] = None, state: Optional[pulumi.Input[str]] = None) -> 'ConditionalAccessPolicy': """ @@ -527,6 +545,7 @@ def get(resource_name: str, :param pulumi.Input[Union['ConditionalAccessPolicyConditionsArgs', 'ConditionalAccessPolicyConditionsArgsDict']] conditions: A `conditions` block as documented below, which specifies the rules that must be met for the policy to apply. :param pulumi.Input[str] display_name: The friendly name for this Conditional Access Policy. :param pulumi.Input[Union['ConditionalAccessPolicyGrantControlsArgs', 'ConditionalAccessPolicyGrantControlsArgsDict']] grant_controls: A `grant_controls` block as documented below, which specifies the grant controls that must be fulfilled to pass the policy. + :param pulumi.Input[str] object_id: The object ID of the policy :param pulumi.Input[Union['ConditionalAccessPolicySessionControlsArgs', 'ConditionalAccessPolicySessionControlsArgsDict']] session_controls: A `session_controls` block as documented below, which specifies the session controls that are enforced after sign-in. > Note: At least one of `grant_controls` and/or `session_controls` blocks must be specified. @@ -539,6 +558,7 @@ def get(resource_name: str, __props__.__dict__["conditions"] = conditions __props__.__dict__["display_name"] = display_name __props__.__dict__["grant_controls"] = grant_controls + __props__.__dict__["object_id"] = object_id __props__.__dict__["session_controls"] = session_controls __props__.__dict__["state"] = state return ConditionalAccessPolicy(resource_name, opts=opts, __props__=__props__) @@ -567,6 +587,14 @@ def grant_controls(self) -> pulumi.Output[Optional['outputs.ConditionalAccessPol """ return pulumi.get(self, "grant_controls") + @property + @pulumi.getter(name="objectId") + def object_id(self) -> pulumi.Output[str]: + """ + The object ID of the policy + """ + return pulumi.get(self, "object_id") + @property @pulumi.getter(name="sessionControls") def session_controls(self) -> pulumi.Output[Optional['outputs.ConditionalAccessPolicySessionControls']]: diff --git a/sdk/python/pulumi_azuread/directory_role_assignment.py b/sdk/python/pulumi_azuread/directory_role_assignment.py index 3ac5e5036..f27c4cf11 100644 --- a/sdk/python/pulumi_azuread/directory_role_assignment.py +++ b/sdk/python/pulumi_azuread/directory_role_assignment.py @@ -22,31 +22,20 @@ def __init__(__self__, *, principal_object_id: pulumi.Input[str], role_id: pulumi.Input[str], app_scope_id: Optional[pulumi.Input[str]] = None, - app_scope_object_id: Optional[pulumi.Input[str]] = None, - directory_scope_id: Optional[pulumi.Input[str]] = None, - directory_scope_object_id: Optional[pulumi.Input[str]] = None): + directory_scope_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a DirectoryRoleAssignment resource. :param pulumi.Input[str] principal_object_id: The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. :param pulumi.Input[str] role_id: The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. :param pulumi.Input[str] app_scope_id: Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directory_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. - :param pulumi.Input[str] app_scope_object_id: Identifier of the app-specific scope when the assignment scope is app-specific :param pulumi.Input[str] directory_scope_id: Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. - :param pulumi.Input[str] directory_scope_object_id: Identifier of the directory object representing the scope of the assignment """ pulumi.set(__self__, "principal_object_id", principal_object_id) pulumi.set(__self__, "role_id", role_id) if app_scope_id is not None: pulumi.set(__self__, "app_scope_id", app_scope_id) - if app_scope_object_id is not None: - warnings.warn("""`app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider""", DeprecationWarning) - pulumi.log.warn("""app_scope_object_id is deprecated: `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider""") - if app_scope_object_id is not None: - pulumi.set(__self__, "app_scope_object_id", app_scope_object_id) if directory_scope_id is not None: pulumi.set(__self__, "directory_scope_id", directory_scope_id) - if directory_scope_object_id is not None: - pulumi.set(__self__, "directory_scope_object_id", directory_scope_object_id) @property @pulumi.getter(name="principalObjectId") @@ -84,19 +73,6 @@ def app_scope_id(self) -> Optional[pulumi.Input[str]]: def app_scope_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "app_scope_id", value) - @property - @pulumi.getter(name="appScopeObjectId") - @_utilities.deprecated("""`app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider""") - def app_scope_object_id(self) -> Optional[pulumi.Input[str]]: - """ - Identifier of the app-specific scope when the assignment scope is app-specific - """ - return pulumi.get(self, "app_scope_object_id") - - @app_scope_object_id.setter - def app_scope_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "app_scope_object_id", value) - @property @pulumi.getter(name="directoryScopeId") def directory_scope_id(self) -> Optional[pulumi.Input[str]]: @@ -109,48 +85,25 @@ def directory_scope_id(self) -> Optional[pulumi.Input[str]]: def directory_scope_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "directory_scope_id", value) - @property - @pulumi.getter(name="directoryScopeObjectId") - def directory_scope_object_id(self) -> Optional[pulumi.Input[str]]: - """ - Identifier of the directory object representing the scope of the assignment - """ - return pulumi.get(self, "directory_scope_object_id") - - @directory_scope_object_id.setter - def directory_scope_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "directory_scope_object_id", value) - @pulumi.input_type class _DirectoryRoleAssignmentState: def __init__(__self__, *, app_scope_id: Optional[pulumi.Input[str]] = None, - app_scope_object_id: Optional[pulumi.Input[str]] = None, directory_scope_id: Optional[pulumi.Input[str]] = None, - directory_scope_object_id: Optional[pulumi.Input[str]] = None, principal_object_id: Optional[pulumi.Input[str]] = None, role_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering DirectoryRoleAssignment resources. :param pulumi.Input[str] app_scope_id: Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directory_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. - :param pulumi.Input[str] app_scope_object_id: Identifier of the app-specific scope when the assignment scope is app-specific :param pulumi.Input[str] directory_scope_id: Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. - :param pulumi.Input[str] directory_scope_object_id: Identifier of the directory object representing the scope of the assignment :param pulumi.Input[str] principal_object_id: The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. :param pulumi.Input[str] role_id: The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. """ if app_scope_id is not None: pulumi.set(__self__, "app_scope_id", app_scope_id) - if app_scope_object_id is not None: - warnings.warn("""`app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider""", DeprecationWarning) - pulumi.log.warn("""app_scope_object_id is deprecated: `app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider""") - if app_scope_object_id is not None: - pulumi.set(__self__, "app_scope_object_id", app_scope_object_id) if directory_scope_id is not None: pulumi.set(__self__, "directory_scope_id", directory_scope_id) - if directory_scope_object_id is not None: - pulumi.set(__self__, "directory_scope_object_id", directory_scope_object_id) if principal_object_id is not None: pulumi.set(__self__, "principal_object_id", principal_object_id) if role_id is not None: @@ -168,19 +121,6 @@ def app_scope_id(self) -> Optional[pulumi.Input[str]]: def app_scope_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "app_scope_id", value) - @property - @pulumi.getter(name="appScopeObjectId") - @_utilities.deprecated("""`app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider""") - def app_scope_object_id(self) -> Optional[pulumi.Input[str]]: - """ - Identifier of the app-specific scope when the assignment scope is app-specific - """ - return pulumi.get(self, "app_scope_object_id") - - @app_scope_object_id.setter - def app_scope_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "app_scope_object_id", value) - @property @pulumi.getter(name="directoryScopeId") def directory_scope_id(self) -> Optional[pulumi.Input[str]]: @@ -193,18 +133,6 @@ def directory_scope_id(self) -> Optional[pulumi.Input[str]]: def directory_scope_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "directory_scope_id", value) - @property - @pulumi.getter(name="directoryScopeObjectId") - def directory_scope_object_id(self) -> Optional[pulumi.Input[str]]: - """ - Identifier of the directory object representing the scope of the assignment - """ - return pulumi.get(self, "directory_scope_object_id") - - @directory_scope_object_id.setter - def directory_scope_object_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "directory_scope_object_id", value) - @property @pulumi.getter(name="principalObjectId") def principal_object_id(self) -> Optional[pulumi.Input[str]]: @@ -236,9 +164,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, app_scope_id: Optional[pulumi.Input[str]] = None, - app_scope_object_id: Optional[pulumi.Input[str]] = None, directory_scope_id: Optional[pulumi.Input[str]] = None, - directory_scope_object_id: Optional[pulumi.Input[str]] = None, principal_object_id: Optional[pulumi.Input[str]] = None, role_id: Optional[pulumi.Input[str]] = None, __props__=None): @@ -305,9 +231,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] app_scope_id: Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directory_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. - :param pulumi.Input[str] app_scope_object_id: Identifier of the app-specific scope when the assignment scope is app-specific :param pulumi.Input[str] directory_scope_id: Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. - :param pulumi.Input[str] directory_scope_object_id: Identifier of the directory object representing the scope of the assignment :param pulumi.Input[str] principal_object_id: The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. :param pulumi.Input[str] role_id: The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. """ @@ -393,9 +317,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, app_scope_id: Optional[pulumi.Input[str]] = None, - app_scope_object_id: Optional[pulumi.Input[str]] = None, directory_scope_id: Optional[pulumi.Input[str]] = None, - directory_scope_object_id: Optional[pulumi.Input[str]] = None, principal_object_id: Optional[pulumi.Input[str]] = None, role_id: Optional[pulumi.Input[str]] = None, __props__=None): @@ -408,9 +330,7 @@ def _internal_init(__self__, __props__ = DirectoryRoleAssignmentArgs.__new__(DirectoryRoleAssignmentArgs) __props__.__dict__["app_scope_id"] = app_scope_id - __props__.__dict__["app_scope_object_id"] = app_scope_object_id __props__.__dict__["directory_scope_id"] = directory_scope_id - __props__.__dict__["directory_scope_object_id"] = directory_scope_object_id if principal_object_id is None and not opts.urn: raise TypeError("Missing required property 'principal_object_id'") __props__.__dict__["principal_object_id"] = principal_object_id @@ -428,9 +348,7 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, app_scope_id: Optional[pulumi.Input[str]] = None, - app_scope_object_id: Optional[pulumi.Input[str]] = None, directory_scope_id: Optional[pulumi.Input[str]] = None, - directory_scope_object_id: Optional[pulumi.Input[str]] = None, principal_object_id: Optional[pulumi.Input[str]] = None, role_id: Optional[pulumi.Input[str]] = None) -> 'DirectoryRoleAssignment': """ @@ -441,9 +359,7 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] app_scope_id: Identifier of the app-specific scope when the assignment scope is app-specific. Cannot be used with `directory_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. - :param pulumi.Input[str] app_scope_object_id: Identifier of the app-specific scope when the assignment scope is app-specific :param pulumi.Input[str] directory_scope_id: Identifier of the directory object representing the scope of the assignment. Cannot be used with `app_scope_id`. See [official documentation](https://docs.microsoft.com/en-us/graph/api/rbacapplication-post-roleassignments?view=graph-rest-1.0&tabs=http) for example usage. Changing this forces a new resource to be created. - :param pulumi.Input[str] directory_scope_object_id: Identifier of the directory object representing the scope of the assignment :param pulumi.Input[str] principal_object_id: The object ID of the principal for you want to create a role assignment. Supported object types are Users, Groups or Service Principals. Changing this forces a new resource to be created. :param pulumi.Input[str] role_id: The template ID (in the case of built-in roles) or object ID (in the case of custom roles) of the directory role you want to assign. Changing this forces a new resource to be created. """ @@ -452,9 +368,7 @@ def get(resource_name: str, __props__ = _DirectoryRoleAssignmentState.__new__(_DirectoryRoleAssignmentState) __props__.__dict__["app_scope_id"] = app_scope_id - __props__.__dict__["app_scope_object_id"] = app_scope_object_id __props__.__dict__["directory_scope_id"] = directory_scope_id - __props__.__dict__["directory_scope_object_id"] = directory_scope_object_id __props__.__dict__["principal_object_id"] = principal_object_id __props__.__dict__["role_id"] = role_id return DirectoryRoleAssignment(resource_name, opts=opts, __props__=__props__) @@ -467,15 +381,6 @@ def app_scope_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "app_scope_id") - @property - @pulumi.getter(name="appScopeObjectId") - @_utilities.deprecated("""`app_scope_object_id` has been renamed to `app_scope_id` and will be removed in version 3.0 or the AzureAD Provider""") - def app_scope_object_id(self) -> pulumi.Output[str]: - """ - Identifier of the app-specific scope when the assignment scope is app-specific - """ - return pulumi.get(self, "app_scope_object_id") - @property @pulumi.getter(name="directoryScopeId") def directory_scope_id(self) -> pulumi.Output[str]: @@ -484,14 +389,6 @@ def directory_scope_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "directory_scope_id") - @property - @pulumi.getter(name="directoryScopeObjectId") - def directory_scope_object_id(self) -> pulumi.Output[str]: - """ - Identifier of the directory object representing the scope of the assignment - """ - return pulumi.get(self, "directory_scope_object_id") - @property @pulumi.getter(name="principalObjectId") def principal_object_id(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_azuread/get_application.py b/sdk/python/pulumi_azuread/get_application.py index a5b7e141a..2eb6f4484 100644 --- a/sdk/python/pulumi_azuread/get_application.py +++ b/sdk/python/pulumi_azuread/get_application.py @@ -27,7 +27,7 @@ class GetApplicationResult: """ A collection of values returned by getApplication. """ - def __init__(__self__, apis=None, app_role_ids=None, app_roles=None, application_id=None, client_id=None, description=None, device_only_auth_enabled=None, disabled_by_microsoft=None, display_name=None, fallback_public_client_enabled=None, feature_tags=None, group_membership_claims=None, id=None, identifier_uri=None, identifier_uris=None, logo_url=None, marketing_url=None, notes=None, oauth2_permission_scope_ids=None, oauth2_post_response_required=None, object_id=None, optional_claims=None, owners=None, privacy_statement_url=None, public_clients=None, publisher_domain=None, required_resource_accesses=None, service_management_reference=None, sign_in_audience=None, single_page_applications=None, support_url=None, tags=None, terms_of_service_url=None, webs=None): + def __init__(__self__, apis=None, app_role_ids=None, app_roles=None, client_id=None, description=None, device_only_auth_enabled=None, disabled_by_microsoft=None, display_name=None, fallback_public_client_enabled=None, feature_tags=None, group_membership_claims=None, id=None, identifier_uri=None, identifier_uris=None, logo_url=None, marketing_url=None, notes=None, oauth2_permission_scope_ids=None, oauth2_post_response_required=None, object_id=None, optional_claims=None, owners=None, privacy_statement_url=None, public_clients=None, publisher_domain=None, required_resource_accesses=None, service_management_reference=None, sign_in_audience=None, single_page_applications=None, support_url=None, tags=None, terms_of_service_url=None, webs=None): if apis and not isinstance(apis, list): raise TypeError("Expected argument 'apis' to be a list") pulumi.set(__self__, "apis", apis) @@ -37,9 +37,6 @@ def __init__(__self__, apis=None, app_role_ids=None, app_roles=None, application if app_roles and not isinstance(app_roles, list): raise TypeError("Expected argument 'app_roles' to be a list") pulumi.set(__self__, "app_roles", app_roles) - if application_id and not isinstance(application_id, str): - raise TypeError("Expected argument 'application_id' to be a str") - pulumi.set(__self__, "application_id", application_id) if client_id and not isinstance(client_id, str): raise TypeError("Expected argument 'client_id' to be a str") pulumi.set(__self__, "client_id", client_id) @@ -155,12 +152,6 @@ def app_roles(self) -> Sequence['outputs.GetApplicationAppRoleResult']: """ return pulumi.get(self, "app_roles") - @property - @pulumi.getter(name="applicationId") - @_utilities.deprecated("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_id(self) -> str: - return pulumi.get(self, "application_id") - @property @pulumi.getter(name="clientId") def client_id(self) -> str: @@ -408,7 +399,6 @@ def __await__(self): apis=self.apis, app_role_ids=self.app_role_ids, app_roles=self.app_roles, - application_id=self.application_id, client_id=self.client_id, description=self.description, device_only_auth_enabled=self.device_only_auth_enabled, @@ -441,8 +431,7 @@ def __await__(self): webs=self.webs) -def get_application(application_id: Optional[str] = None, - client_id: Optional[str] = None, +def get_application(client_id: Optional[str] = None, display_name: Optional[str] = None, identifier_uri: Optional[str] = None, object_id: Optional[str] = None, @@ -477,7 +466,6 @@ def get_application(application_id: Optional[str] = None, :param str object_id: Specifies the Object ID of the application. """ __args__ = dict() - __args__['applicationId'] = application_id __args__['clientId'] = client_id __args__['displayName'] = display_name __args__['identifierUri'] = identifier_uri @@ -489,7 +477,6 @@ def get_application(application_id: Optional[str] = None, apis=pulumi.get(__ret__, 'apis'), app_role_ids=pulumi.get(__ret__, 'app_role_ids'), app_roles=pulumi.get(__ret__, 'app_roles'), - application_id=pulumi.get(__ret__, 'application_id'), client_id=pulumi.get(__ret__, 'client_id'), description=pulumi.get(__ret__, 'description'), device_only_auth_enabled=pulumi.get(__ret__, 'device_only_auth_enabled'), @@ -520,8 +507,7 @@ def get_application(application_id: Optional[str] = None, tags=pulumi.get(__ret__, 'tags'), terms_of_service_url=pulumi.get(__ret__, 'terms_of_service_url'), webs=pulumi.get(__ret__, 'webs')) -def get_application_output(application_id: Optional[pulumi.Input[Optional[str]]] = None, - client_id: Optional[pulumi.Input[Optional[str]]] = None, +def get_application_output(client_id: Optional[pulumi.Input[Optional[str]]] = None, display_name: Optional[pulumi.Input[Optional[str]]] = None, identifier_uri: Optional[pulumi.Input[Optional[str]]] = None, object_id: Optional[pulumi.Input[Optional[str]]] = None, @@ -556,7 +542,6 @@ def get_application_output(application_id: Optional[pulumi.Input[Optional[str]]] :param str object_id: Specifies the Object ID of the application. """ __args__ = dict() - __args__['applicationId'] = application_id __args__['clientId'] = client_id __args__['displayName'] = display_name __args__['identifierUri'] = identifier_uri @@ -567,7 +552,6 @@ def get_application_output(application_id: Optional[pulumi.Input[Optional[str]]] apis=pulumi.get(__response__, 'apis'), app_role_ids=pulumi.get(__response__, 'app_role_ids'), app_roles=pulumi.get(__response__, 'app_roles'), - application_id=pulumi.get(__response__, 'application_id'), client_id=pulumi.get(__response__, 'client_id'), description=pulumi.get(__response__, 'description'), device_only_auth_enabled=pulumi.get(__response__, 'device_only_auth_enabled'), diff --git a/sdk/python/pulumi_azuread/get_service_principal.py b/sdk/python/pulumi_azuread/get_service_principal.py index 3119eea3d..8645eee56 100644 --- a/sdk/python/pulumi_azuread/get_service_principal.py +++ b/sdk/python/pulumi_azuread/get_service_principal.py @@ -27,7 +27,7 @@ class GetServicePrincipalResult: """ A collection of values returned by getServicePrincipal. """ - def __init__(__self__, account_enabled=None, alternative_names=None, app_role_assignment_required=None, app_role_ids=None, app_roles=None, application_id=None, application_tenant_id=None, client_id=None, description=None, display_name=None, feature_tags=None, features=None, homepage_url=None, id=None, login_url=None, logout_url=None, notes=None, notification_email_addresses=None, oauth2_permission_scope_ids=None, oauth2_permission_scopes=None, object_id=None, preferred_single_sign_on_mode=None, redirect_uris=None, saml_metadata_url=None, saml_single_sign_ons=None, service_principal_names=None, sign_in_audience=None, tags=None, type=None): + def __init__(__self__, account_enabled=None, alternative_names=None, app_role_assignment_required=None, app_role_ids=None, app_roles=None, application_tenant_id=None, client_id=None, description=None, display_name=None, feature_tags=None, features=None, homepage_url=None, id=None, login_url=None, logout_url=None, notes=None, notification_email_addresses=None, oauth2_permission_scope_ids=None, oauth2_permission_scopes=None, object_id=None, preferred_single_sign_on_mode=None, redirect_uris=None, saml_metadata_url=None, saml_single_sign_ons=None, service_principal_names=None, sign_in_audience=None, tags=None, type=None): if account_enabled and not isinstance(account_enabled, bool): raise TypeError("Expected argument 'account_enabled' to be a bool") pulumi.set(__self__, "account_enabled", account_enabled) @@ -43,9 +43,6 @@ def __init__(__self__, account_enabled=None, alternative_names=None, app_role_as if app_roles and not isinstance(app_roles, list): raise TypeError("Expected argument 'app_roles' to be a list") pulumi.set(__self__, "app_roles", app_roles) - if application_id and not isinstance(application_id, str): - raise TypeError("Expected argument 'application_id' to be a str") - pulumi.set(__self__, "application_id", application_id) if application_tenant_id and not isinstance(application_tenant_id, str): raise TypeError("Expected argument 'application_tenant_id' to be a str") pulumi.set(__self__, "application_tenant_id", application_tenant_id) @@ -156,12 +153,6 @@ def app_roles(self) -> Sequence['outputs.GetServicePrincipalAppRoleResult']: """ return pulumi.get(self, "app_roles") - @property - @pulumi.getter(name="applicationId") - @_utilities.deprecated("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_id(self) -> str: - return pulumi.get(self, "application_id") - @property @pulumi.getter(name="applicationTenantId") def application_tenant_id(self) -> str: @@ -356,7 +347,6 @@ def __await__(self): app_role_assignment_required=self.app_role_assignment_required, app_role_ids=self.app_role_ids, app_roles=self.app_roles, - application_id=self.application_id, application_tenant_id=self.application_tenant_id, client_id=self.client_id, description=self.description, @@ -382,8 +372,7 @@ def __await__(self): type=self.type) -def get_service_principal(application_id: Optional[str] = None, - client_id: Optional[str] = None, +def get_service_principal(client_id: Optional[str] = None, display_name: Optional[str] = None, object_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetServicePrincipalResult: @@ -435,7 +424,6 @@ def get_service_principal(application_id: Optional[str] = None, > One of `client_id`, `display_name` or `object_id` must be specified. """ __args__ = dict() - __args__['applicationId'] = application_id __args__['clientId'] = client_id __args__['displayName'] = display_name __args__['objectId'] = object_id @@ -448,7 +436,6 @@ def get_service_principal(application_id: Optional[str] = None, app_role_assignment_required=pulumi.get(__ret__, 'app_role_assignment_required'), app_role_ids=pulumi.get(__ret__, 'app_role_ids'), app_roles=pulumi.get(__ret__, 'app_roles'), - application_id=pulumi.get(__ret__, 'application_id'), application_tenant_id=pulumi.get(__ret__, 'application_tenant_id'), client_id=pulumi.get(__ret__, 'client_id'), description=pulumi.get(__ret__, 'description'), @@ -472,8 +459,7 @@ def get_service_principal(application_id: Optional[str] = None, sign_in_audience=pulumi.get(__ret__, 'sign_in_audience'), tags=pulumi.get(__ret__, 'tags'), type=pulumi.get(__ret__, 'type')) -def get_service_principal_output(application_id: Optional[pulumi.Input[Optional[str]]] = None, - client_id: Optional[pulumi.Input[Optional[str]]] = None, +def get_service_principal_output(client_id: Optional[pulumi.Input[Optional[str]]] = None, display_name: Optional[pulumi.Input[Optional[str]]] = None, object_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetServicePrincipalResult]: @@ -525,7 +511,6 @@ def get_service_principal_output(application_id: Optional[pulumi.Input[Optional[ > One of `client_id`, `display_name` or `object_id` must be specified. """ __args__ = dict() - __args__['applicationId'] = application_id __args__['clientId'] = client_id __args__['displayName'] = display_name __args__['objectId'] = object_id @@ -537,7 +522,6 @@ def get_service_principal_output(application_id: Optional[pulumi.Input[Optional[ app_role_assignment_required=pulumi.get(__response__, 'app_role_assignment_required'), app_role_ids=pulumi.get(__response__, 'app_role_ids'), app_roles=pulumi.get(__response__, 'app_roles'), - application_id=pulumi.get(__response__, 'application_id'), application_tenant_id=pulumi.get(__response__, 'application_tenant_id'), client_id=pulumi.get(__response__, 'client_id'), description=pulumi.get(__response__, 'description'), diff --git a/sdk/python/pulumi_azuread/get_service_principals.py b/sdk/python/pulumi_azuread/get_service_principals.py index 54c4fbf0a..008272c3d 100644 --- a/sdk/python/pulumi_azuread/get_service_principals.py +++ b/sdk/python/pulumi_azuread/get_service_principals.py @@ -27,10 +27,7 @@ class GetServicePrincipalsResult: """ A collection of values returned by getServicePrincipals. """ - def __init__(__self__, application_ids=None, client_ids=None, display_names=None, id=None, ignore_missing=None, object_ids=None, return_all=None, service_principals=None): - if application_ids and not isinstance(application_ids, list): - raise TypeError("Expected argument 'application_ids' to be a list") - pulumi.set(__self__, "application_ids", application_ids) + def __init__(__self__, client_ids=None, display_names=None, id=None, ignore_missing=None, object_ids=None, return_all=None, service_principals=None): if client_ids and not isinstance(client_ids, list): raise TypeError("Expected argument 'client_ids' to be a list") pulumi.set(__self__, "client_ids", client_ids) @@ -53,15 +50,6 @@ def __init__(__self__, application_ids=None, client_ids=None, display_names=None raise TypeError("Expected argument 'service_principals' to be a list") pulumi.set(__self__, "service_principals", service_principals) - @property - @pulumi.getter(name="applicationIds") - @_utilities.deprecated("""The `application_ids` property has been replaced with the `client_ids` property and will be removed in version 3.0 of the AzureAD provider""") - def application_ids(self) -> Sequence[str]: - """ - A list of client IDs of the applications associated with the service principals. - """ - return pulumi.get(self, "application_ids") - @property @pulumi.getter(name="clientIds") def client_ids(self) -> Sequence[str]: @@ -119,7 +107,6 @@ def __await__(self): if False: yield self return GetServicePrincipalsResult( - application_ids=self.application_ids, client_ids=self.client_ids, display_names=self.display_names, id=self.id, @@ -129,8 +116,7 @@ def __await__(self): service_principals=self.service_principals) -def get_service_principals(application_ids: Optional[Sequence[str]] = None, - client_ids: Optional[Sequence[str]] = None, +def get_service_principals(client_ids: Optional[Sequence[str]] = None, display_names: Optional[Sequence[str]] = None, ignore_missing: Optional[bool] = None, object_ids: Optional[Sequence[str]] = None, @@ -188,7 +174,6 @@ def get_service_principals(application_ids: Optional[Sequence[str]] = None, ``` - :param Sequence[str] application_ids: A list of client IDs of the applications associated with the service principals. :param Sequence[str] client_ids: A list of client IDs of the applications associated with the service principals. :param Sequence[str] display_names: A list of display names of the applications associated with the service principals. :param bool ignore_missing: Ignore missing service principals and return all service principals that are found. The data source will still fail if no service principals are found. Defaults to false. @@ -198,7 +183,6 @@ def get_service_principals(application_ids: Optional[Sequence[str]] = None, > Either `return_all`, or one of `client_ids`, `display_names` or `object_ids` must be specified. These _may_ be specified as an empty list, in which case no results will be returned. """ __args__ = dict() - __args__['applicationIds'] = application_ids __args__['clientIds'] = client_ids __args__['displayNames'] = display_names __args__['ignoreMissing'] = ignore_missing @@ -208,7 +192,6 @@ def get_service_principals(application_ids: Optional[Sequence[str]] = None, __ret__ = pulumi.runtime.invoke('azuread:index/getServicePrincipals:getServicePrincipals', __args__, opts=opts, typ=GetServicePrincipalsResult).value return AwaitableGetServicePrincipalsResult( - application_ids=pulumi.get(__ret__, 'application_ids'), client_ids=pulumi.get(__ret__, 'client_ids'), display_names=pulumi.get(__ret__, 'display_names'), id=pulumi.get(__ret__, 'id'), @@ -216,8 +199,7 @@ def get_service_principals(application_ids: Optional[Sequence[str]] = None, object_ids=pulumi.get(__ret__, 'object_ids'), return_all=pulumi.get(__ret__, 'return_all'), service_principals=pulumi.get(__ret__, 'service_principals')) -def get_service_principals_output(application_ids: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, - client_ids: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, +def get_service_principals_output(client_ids: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, display_names: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, ignore_missing: Optional[pulumi.Input[Optional[bool]]] = None, object_ids: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, @@ -275,7 +257,6 @@ def get_service_principals_output(application_ids: Optional[pulumi.Input[Optiona ``` - :param Sequence[str] application_ids: A list of client IDs of the applications associated with the service principals. :param Sequence[str] client_ids: A list of client IDs of the applications associated with the service principals. :param Sequence[str] display_names: A list of display names of the applications associated with the service principals. :param bool ignore_missing: Ignore missing service principals and return all service principals that are found. The data source will still fail if no service principals are found. Defaults to false. @@ -285,7 +266,6 @@ def get_service_principals_output(application_ids: Optional[pulumi.Input[Optiona > Either `return_all`, or one of `client_ids`, `display_names` or `object_ids` must be specified. These _may_ be specified as an empty list, in which case no results will be returned. """ __args__ = dict() - __args__['applicationIds'] = application_ids __args__['clientIds'] = client_ids __args__['displayNames'] = display_names __args__['ignoreMissing'] = ignore_missing @@ -294,7 +274,6 @@ def get_service_principals_output(application_ids: Optional[pulumi.Input[Optiona opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('azuread:index/getServicePrincipals:getServicePrincipals', __args__, opts=opts, typ=GetServicePrincipalsResult) return __ret__.apply(lambda __response__: GetServicePrincipalsResult( - application_ids=pulumi.get(__response__, 'application_ids'), client_ids=pulumi.get(__response__, 'client_ids'), display_names=pulumi.get(__response__, 'display_names'), id=pulumi.get(__response__, 'id'), diff --git a/sdk/python/pulumi_azuread/outputs.py b/sdk/python/pulumi_azuread/outputs.py index f905058a3..e9aeec5a9 100644 --- a/sdk/python/pulumi_azuread/outputs.py +++ b/sdk/python/pulumi_azuread/outputs.py @@ -1076,7 +1076,7 @@ def __init__(__self__, *, oauth2_permission_scopes: Optional[Sequence['outputs.ApplicationApiOauth2PermissionScope']] = None, requested_access_token_version: Optional[int] = None): """ - :param Sequence[str] known_client_applications: A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + :param Sequence[str] known_client_applications: A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. :param bool mapped_claims_enabled: Allows an application to use claims mapping without specifying a custom signing key. Defaults to `false`. :param Sequence['ApplicationApiOauth2PermissionScopeArgs'] oauth2_permission_scopes: One or more `oauth2_permission_scope` blocks as documented below, to describe delegated permissions exposed by the web API represented by this application. :param int requested_access_token_version: The access token version expected by this resource. Must be one of `1` or `2`, and must be `2` when `sign_in_audience` is either `AzureADandPersonalMicrosoftAccount` or `PersonalMicrosoftAccount` Defaults to `1`. @@ -1094,7 +1094,7 @@ def __init__(__self__, *, @pulumi.getter(name="knownClientApplications") def known_client_applications(self) -> Optional[Sequence[str]]: """ - A set of application IDs (client IDs), used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. + A set of client IDs, used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. """ return pulumi.get(self, "known_client_applications") @@ -6208,7 +6208,6 @@ class GetServicePrincipalsServicePrincipalResult(dict): def __init__(__self__, *, account_enabled: bool, app_role_assignment_required: bool, - application_id: str, application_tenant_id: str, client_id: str, display_name: str, @@ -6222,7 +6221,6 @@ def __init__(__self__, *, """ :param bool account_enabled: Whether the service principal account is enabled. :param bool app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. - :param str application_id: The application ID (client ID) for the associated application :param str application_tenant_id: The tenant ID where the associated application is registered. :param str client_id: The application ID (client ID) for the associated application :param str display_name: The display name of the application associated with this service principal. @@ -6236,7 +6234,6 @@ def __init__(__self__, *, """ pulumi.set(__self__, "account_enabled", account_enabled) pulumi.set(__self__, "app_role_assignment_required", app_role_assignment_required) - pulumi.set(__self__, "application_id", application_id) pulumi.set(__self__, "application_tenant_id", application_tenant_id) pulumi.set(__self__, "client_id", client_id) pulumi.set(__self__, "display_name", display_name) @@ -6264,15 +6261,6 @@ def app_role_assignment_required(self) -> bool: """ return pulumi.get(self, "app_role_assignment_required") - @property - @pulumi.getter(name="applicationId") - @_utilities.deprecated("""The `application_id` attribute has been replaced by the `client_id` attribute and will be removed in version 3.0 of the AzureAD provider""") - def application_id(self) -> str: - """ - The application ID (client ID) for the associated application - """ - return pulumi.get(self, "application_id") - @property @pulumi.getter(name="applicationTenantId") def application_tenant_id(self) -> str: diff --git a/sdk/python/pulumi_azuread/pulumi-plugin.json b/sdk/python/pulumi_azuread/pulumi-plugin.json index 45a7ee76e..274f9055d 100644 --- a/sdk/python/pulumi_azuread/pulumi-plugin.json +++ b/sdk/python/pulumi_azuread/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "azuread", - "version": "5.0.0-alpha.0+dev" + "version": "6.0.0-alpha.0+dev" } diff --git a/sdk/python/pulumi_azuread/service_principal.py b/sdk/python/pulumi_azuread/service_principal.py index 2f6e3d1ff..3cc972c62 100644 --- a/sdk/python/pulumi_azuread/service_principal.py +++ b/sdk/python/pulumi_azuread/service_principal.py @@ -21,11 +21,10 @@ @pulumi.input_type class ServicePrincipalArgs: def __init__(__self__, *, + client_id: pulumi.Input[str], account_enabled: Optional[pulumi.Input[bool]] = None, alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, app_role_assignment_required: Optional[pulumi.Input[bool]] = None, - application_id: Optional[pulumi.Input[str]] = None, - client_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]]] = None, features: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]]] = None, @@ -39,11 +38,10 @@ def __init__(__self__, *, use_existing: Optional[pulumi.Input[bool]] = None): """ The set of arguments for constructing a ServicePrincipal resource. + :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal. :param pulumi.Input[bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`. :param pulumi.Input[Sequence[pulumi.Input[str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities. :param pulumi.Input[bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`. - :param pulumi.Input[str] application_id: The application ID (client ID) of the application for which to create a service principal - :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal. :param pulumi.Input[str] description: A description of the service principal provided for internal end-users. :param pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]] feature_tags: A `feature_tags` block as described below. Cannot be used together with the `tags` property. @@ -60,19 +58,13 @@ def __init__(__self__, *, > **Tags and Features** Azure Active Directory uses special tag values to configure the behavior of service principals. These can be specified using either the `tags` property or with the `feature_tags` block. If you need to set any custom tag values not supported by the `feature_tags` block, it's recommended to use the `tags` property. Tag values set for the linked application will also propagate to this service principal. :param pulumi.Input[bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error """ + pulumi.set(__self__, "client_id", client_id) if account_enabled is not None: pulumi.set(__self__, "account_enabled", account_enabled) if alternative_names is not None: pulumi.set(__self__, "alternative_names", alternative_names) if app_role_assignment_required is not None: pulumi.set(__self__, "app_role_assignment_required", app_role_assignment_required) - if application_id is not None: - warnings.warn("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_id is deprecated: The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_id is not None: - pulumi.set(__self__, "application_id", application_id) - if client_id is not None: - pulumi.set(__self__, "client_id", client_id) if description is not None: pulumi.set(__self__, "description", description) if feature_tags is not None: @@ -99,6 +91,18 @@ def __init__(__self__, *, if use_existing is not None: pulumi.set(__self__, "use_existing", use_existing) + @property + @pulumi.getter(name="clientId") + def client_id(self) -> pulumi.Input[str]: + """ + The client ID of the application for which to create a service principal. + """ + return pulumi.get(self, "client_id") + + @client_id.setter + def client_id(self, value: pulumi.Input[str]): + pulumi.set(self, "client_id", value) + @property @pulumi.getter(name="accountEnabled") def account_enabled(self) -> Optional[pulumi.Input[bool]]: @@ -135,31 +139,6 @@ def app_role_assignment_required(self) -> Optional[pulumi.Input[bool]]: def app_role_assignment_required(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "app_role_assignment_required", value) - @property - @pulumi.getter(name="applicationId") - @_utilities.deprecated("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_id(self) -> Optional[pulumi.Input[str]]: - """ - The application ID (client ID) of the application for which to create a service principal - """ - return pulumi.get(self, "application_id") - - @application_id.setter - def application_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_id", value) - - @property - @pulumi.getter(name="clientId") - def client_id(self) -> Optional[pulumi.Input[str]]: - """ - The client ID of the application for which to create a service principal. - """ - return pulumi.get(self, "client_id") - - @client_id.setter - def client_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "client_id", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -306,7 +285,6 @@ def __init__(__self__, *, app_role_assignment_required: Optional[pulumi.Input[bool]] = None, app_role_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, app_roles: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalAppRoleArgs']]]] = None, - application_id: Optional[pulumi.Input[str]] = None, application_tenant_id: Optional[pulumi.Input[str]] = None, client_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, @@ -338,7 +316,6 @@ def __init__(__self__, *, :param pulumi.Input[bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] app_role_ids: A mapping of app role values to app role IDs, as published by the associated application, intended to be useful when referencing app roles in other resources in your configuration. :param pulumi.Input[Sequence[pulumi.Input['ServicePrincipalAppRoleArgs']]] app_roles: A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). - :param pulumi.Input[str] application_id: The application ID (client ID) of the application for which to create a service principal :param pulumi.Input[str] application_tenant_id: The tenant ID where the associated application is registered. :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal. :param pulumi.Input[str] description: A description of the service principal provided for internal end-users. @@ -378,11 +355,6 @@ def __init__(__self__, *, pulumi.set(__self__, "app_role_ids", app_role_ids) if app_roles is not None: pulumi.set(__self__, "app_roles", app_roles) - if application_id is not None: - warnings.warn("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning) - pulumi.log.warn("""application_id is deprecated: The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""") - if application_id is not None: - pulumi.set(__self__, "application_id", application_id) if application_tenant_id is not None: pulumi.set(__self__, "application_tenant_id", application_tenant_id) if client_id is not None: @@ -495,19 +467,6 @@ def app_roles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrinc def app_roles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalAppRoleArgs']]]]): pulumi.set(self, "app_roles", value) - @property - @pulumi.getter(name="applicationId") - @_utilities.deprecated("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_id(self) -> Optional[pulumi.Input[str]]: - """ - The application ID (client ID) of the application for which to create a service principal - """ - return pulumi.get(self, "application_id") - - @application_id.setter - def application_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "application_id", value) - @property @pulumi.getter(name="applicationTenantId") def application_tenant_id(self) -> Optional[pulumi.Input[str]]: @@ -810,7 +769,6 @@ def __init__(__self__, account_enabled: Optional[pulumi.Input[bool]] = None, alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, app_role_assignment_required: Optional[pulumi.Input[bool]] = None, - application_id: Optional[pulumi.Input[str]] = None, client_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureTagArgs', 'ServicePrincipalFeatureTagArgsDict']]]]] = None, @@ -903,7 +861,6 @@ def __init__(__self__, :param pulumi.Input[bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`. :param pulumi.Input[Sequence[pulumi.Input[str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities. :param pulumi.Input[bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`. - :param pulumi.Input[str] application_id: The application ID (client ID) of the application for which to create a service principal :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal. :param pulumi.Input[str] description: A description of the service principal provided for internal end-users. :param pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureTagArgs', 'ServicePrincipalFeatureTagArgsDict']]]] feature_tags: A `feature_tags` block as described below. Cannot be used together with the `tags` property. @@ -925,7 +882,7 @@ def __init__(__self__, @overload def __init__(__self__, resource_name: str, - args: Optional[ServicePrincipalArgs] = None, + args: ServicePrincipalArgs, opts: Optional[pulumi.ResourceOptions] = None): """ ## Example Usage @@ -1019,7 +976,6 @@ def _internal_init(__self__, account_enabled: Optional[pulumi.Input[bool]] = None, alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, app_role_assignment_required: Optional[pulumi.Input[bool]] = None, - application_id: Optional[pulumi.Input[str]] = None, client_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureTagArgs', 'ServicePrincipalFeatureTagArgsDict']]]]] = None, @@ -1044,7 +1000,8 @@ def _internal_init(__self__, __props__.__dict__["account_enabled"] = account_enabled __props__.__dict__["alternative_names"] = alternative_names __props__.__dict__["app_role_assignment_required"] = app_role_assignment_required - __props__.__dict__["application_id"] = application_id + if client_id is None and not opts.urn: + raise TypeError("Missing required property 'client_id'") __props__.__dict__["client_id"] = client_id __props__.__dict__["description"] = description __props__.__dict__["feature_tags"] = feature_tags @@ -1086,7 +1043,6 @@ def get(resource_name: str, app_role_assignment_required: Optional[pulumi.Input[bool]] = None, app_role_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, app_roles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalAppRoleArgs', 'ServicePrincipalAppRoleArgsDict']]]]] = None, - application_id: Optional[pulumi.Input[str]] = None, application_tenant_id: Optional[pulumi.Input[str]] = None, client_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, @@ -1123,7 +1079,6 @@ def get(resource_name: str, :param pulumi.Input[bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] app_role_ids: A mapping of app role values to app role IDs, as published by the associated application, intended to be useful when referencing app roles in other resources in your configuration. :param pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalAppRoleArgs', 'ServicePrincipalAppRoleArgsDict']]]] app_roles: A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles). - :param pulumi.Input[str] application_id: The application ID (client ID) of the application for which to create a service principal :param pulumi.Input[str] application_tenant_id: The tenant ID where the associated application is registered. :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal. :param pulumi.Input[str] description: A description of the service principal provided for internal end-users. @@ -1162,7 +1117,6 @@ def get(resource_name: str, __props__.__dict__["app_role_assignment_required"] = app_role_assignment_required __props__.__dict__["app_role_ids"] = app_role_ids __props__.__dict__["app_roles"] = app_roles - __props__.__dict__["application_id"] = application_id __props__.__dict__["application_tenant_id"] = application_tenant_id __props__.__dict__["client_id"] = client_id __props__.__dict__["description"] = description @@ -1229,15 +1183,6 @@ def app_roles(self) -> pulumi.Output[Sequence['outputs.ServicePrincipalAppRole'] """ return pulumi.get(self, "app_roles") - @property - @pulumi.getter(name="applicationId") - @_utilities.deprecated("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""") - def application_id(self) -> pulumi.Output[str]: - """ - The application ID (client ID) of the application for which to create a service principal - """ - return pulumi.get(self, "application_id") - @property @pulumi.getter(name="applicationTenantId") def application_tenant_id(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_azuread/service_principal_certificate.py b/sdk/python/pulumi_azuread/service_principal_certificate.py index a572d2d89..e906d2f8d 100644 --- a/sdk/python/pulumi_azuread/service_principal_certificate.py +++ b/sdk/python/pulumi_azuread/service_principal_certificate.py @@ -29,7 +29,7 @@ def __init__(__self__, *, type: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ServicePrincipalCertificate resource. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument. :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`. @@ -48,6 +48,9 @@ def __init__(__self__, *, pulumi.set(__self__, "encoding", encoding) if end_date is not None: pulumi.set(__self__, "end_date", end_date) + if end_date_relative is not None: + warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning) + pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") if end_date_relative is not None: pulumi.set(__self__, "end_date_relative", end_date_relative) if key_id is not None: @@ -61,7 +64,7 @@ def __init__(__self__, *, @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Input[str]: """ - The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -109,6 +112,7 @@ def end_date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> Optional[pulumi.Input[str]]: """ A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. @@ -179,7 +183,7 @@ def __init__(__self__, *, > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD. :param pulumi.Input[str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. :param pulumi.Input[str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created. :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument. @@ -188,6 +192,9 @@ def __init__(__self__, *, pulumi.set(__self__, "encoding", encoding) if end_date is not None: pulumi.set(__self__, "end_date", end_date) + if end_date_relative is not None: + warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning) + pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") if end_date_relative is not None: pulumi.set(__self__, "end_date_relative", end_date_relative) if key_id is not None: @@ -229,6 +236,7 @@ def end_date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> Optional[pulumi.Input[str]]: """ A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. @@ -257,7 +265,7 @@ def key_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> Optional[pulumi.Input[str]]: """ - The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -327,7 +335,7 @@ def __init__(__self__, import pulumi_std as std example = azuread.Application("example", display_name="example") - example_service_principal = azuread.ServicePrincipal("example", application_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_certificate = azuread.ServicePrincipalCertificate("example", service_principal_id=example_service_principal.id, type="AsymmetricX509Cert", @@ -343,7 +351,7 @@ def __init__(__self__, import pulumi_std as std example = azuread.Application("example", display_name="example") - example_service_principal = azuread.ServicePrincipal("example", application_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_certificate = azuread.ServicePrincipalCertificate("example", service_principal_id=example_service_principal.id, type="AsymmetricX509Cert", @@ -372,7 +380,7 @@ def __init__(__self__, > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD. :param pulumi.Input[str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. :param pulumi.Input[str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created. :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument. @@ -394,7 +402,7 @@ def __init__(__self__, import pulumi_std as std example = azuread.Application("example", display_name="example") - example_service_principal = azuread.ServicePrincipal("example", application_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_certificate = azuread.ServicePrincipalCertificate("example", service_principal_id=example_service_principal.id, type="AsymmetricX509Cert", @@ -410,7 +418,7 @@ def __init__(__self__, import pulumi_std as std example = azuread.Application("example", display_name="example") - example_service_principal = azuread.ServicePrincipal("example", application_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_certificate = azuread.ServicePrincipalCertificate("example", service_principal_id=example_service_principal.id, type="AsymmetricX509Cert", @@ -508,7 +516,7 @@ def get(resource_name: str, > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD. :param pulumi.Input[str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created. :param pulumi.Input[str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created. :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument. @@ -547,6 +555,7 @@ def end_date(self) -> pulumi.Output[str]: @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> pulumi.Output[Optional[str]]: """ A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created. @@ -567,7 +576,7 @@ def key_id(self) -> pulumi.Output[str]: @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Output[str]: """ - The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") diff --git a/sdk/python/pulumi_azuread/service_principal_claims_mapping_policy_assignment.py b/sdk/python/pulumi_azuread/service_principal_claims_mapping_policy_assignment.py index e4b336353..d3132d310 100644 --- a/sdk/python/pulumi_azuread/service_principal_claims_mapping_policy_assignment.py +++ b/sdk/python/pulumi_azuread/service_principal_claims_mapping_policy_assignment.py @@ -24,7 +24,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a ServicePrincipalClaimsMappingPolicyAssignment resource. :param pulumi.Input[str] claims_mapping_policy_id: The ID of the claims mapping policy to assign. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for the policy assignment. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for the policy assignment. """ pulumi.set(__self__, "claims_mapping_policy_id", claims_mapping_policy_id) pulumi.set(__self__, "service_principal_id", service_principal_id) @@ -45,7 +45,7 @@ def claims_mapping_policy_id(self, value: pulumi.Input[str]): @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Input[str]: """ - The object ID of the service principal for the policy assignment. + The ID of the service principal for the policy assignment. """ return pulumi.get(self, "service_principal_id") @@ -62,7 +62,7 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering ServicePrincipalClaimsMappingPolicyAssignment resources. :param pulumi.Input[str] claims_mapping_policy_id: The ID of the claims mapping policy to assign. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for the policy assignment. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for the policy assignment. """ if claims_mapping_policy_id is not None: pulumi.set(__self__, "claims_mapping_policy_id", claims_mapping_policy_id) @@ -85,7 +85,7 @@ def claims_mapping_policy_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> Optional[pulumi.Input[str]]: """ - The object ID of the service principal for the policy assignment. + The ID of the service principal for the policy assignment. """ return pulumi.get(self, "service_principal_id") @@ -135,7 +135,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] claims_mapping_policy_id: The ID of the claims mapping policy to assign. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for the policy assignment. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for the policy assignment. """ ... @overload @@ -225,7 +225,7 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] claims_mapping_policy_id: The ID of the claims mapping policy to assign. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for the policy assignment. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for the policy assignment. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -247,7 +247,7 @@ def claims_mapping_policy_id(self) -> pulumi.Output[str]: @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Output[str]: """ - The object ID of the service principal for the policy assignment. + The ID of the service principal for the policy assignment. """ return pulumi.get(self, "service_principal_id") diff --git a/sdk/python/pulumi_azuread/service_principal_delegated_permission_grant.py b/sdk/python/pulumi_azuread/service_principal_delegated_permission_grant.py index 57dd4aa39..aafba6eb5 100644 --- a/sdk/python/pulumi_azuread/service_principal_delegated_permission_grant.py +++ b/sdk/python/pulumi_azuread/service_principal_delegated_permission_grant.py @@ -213,7 +213,7 @@ def __init__(__self__, }, ], }]) - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_delegated_permission_grant = azuread.ServicePrincipalDelegatedPermissionGrant("example", service_principal_object_id=example_service_principal.object_id, resource_service_principal_object_id=msgraph.object_id, @@ -248,7 +248,7 @@ def __init__(__self__, }, ], }]) - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_user = azuread.User("example", display_name="J. Doe", user_principal_name="jdoe@example.com", @@ -325,7 +325,7 @@ def __init__(__self__, }, ], }]) - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_delegated_permission_grant = azuread.ServicePrincipalDelegatedPermissionGrant("example", service_principal_object_id=example_service_principal.object_id, resource_service_principal_object_id=msgraph.object_id, @@ -360,7 +360,7 @@ def __init__(__self__, }, ], }]) - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_user = azuread.User("example", display_name="J. Doe", user_principal_name="jdoe@example.com", diff --git a/sdk/python/pulumi_azuread/service_principal_password.py b/sdk/python/pulumi_azuread/service_principal_password.py index 39c7edcf0..213203be4 100644 --- a/sdk/python/pulumi_azuread/service_principal_password.py +++ b/sdk/python/pulumi_azuread/service_principal_password.py @@ -27,7 +27,7 @@ def __init__(__self__, *, start_date: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ServicePrincipalPassword resource. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] display_name: A display name for the password. :param pulumi.Input[str] end_date: The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date_relative: A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -39,6 +39,9 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if end_date is not None: pulumi.set(__self__, "end_date", end_date) + if end_date_relative is not None: + warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning) + pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") if end_date_relative is not None: pulumi.set(__self__, "end_date_relative", end_date_relative) if rotate_when_changed is not None: @@ -50,7 +53,7 @@ def __init__(__self__, *, @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Input[str]: """ - The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -84,6 +87,7 @@ def end_date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> Optional[pulumi.Input[str]]: """ A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -137,7 +141,7 @@ def __init__(__self__, *, :param pulumi.Input[str] end_date_relative: A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. :param pulumi.Input[str] key_id: A UUID used to uniquely identify this password credential. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] rotate_when_changed: A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. :param pulumi.Input[str] value: The password for this service principal, which is generated by Azure Active Directory. """ @@ -145,6 +149,9 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if end_date is not None: pulumi.set(__self__, "end_date", end_date) + if end_date_relative is not None: + warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning) + pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") if end_date_relative is not None: pulumi.set(__self__, "end_date_relative", end_date_relative) if key_id is not None: @@ -184,6 +191,7 @@ def end_date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> Optional[pulumi.Input[str]]: """ A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -222,7 +230,7 @@ def rotate_when_changed(self, value: Optional[pulumi.Input[Mapping[str, pulumi.I @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> Optional[pulumi.Input[str]]: """ - The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -278,7 +286,7 @@ def __init__(__self__, example = azuread.Application("example", display_name="example") example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) - example_service_principal_password = azuread.ServicePrincipalPassword("example", service_principal_id=example_service_principal.object_id) + example_service_principal_password = azuread.ServicePrincipalPassword("example", service_principal_id=example_service_principal.id) ``` *Time-based rotation* @@ -292,7 +300,7 @@ def __init__(__self__, example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_rotating = time.Rotating("example", rotation_days=7) example_service_principal_password = azuread.ServicePrincipalPassword("example", - service_principal_id=example_service_principal.object_id, + service_principal_id=example_service_principal.id, rotate_when_changed={ "rotation": example_rotating.id, }) @@ -308,7 +316,7 @@ def __init__(__self__, :param pulumi.Input[str] end_date: The end date until which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. :param pulumi.Input[str] end_date_relative: A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] rotate_when_changed: A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. """ ... @@ -328,7 +336,7 @@ def __init__(__self__, example = azuread.Application("example", display_name="example") example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) - example_service_principal_password = azuread.ServicePrincipalPassword("example", service_principal_id=example_service_principal.object_id) + example_service_principal_password = azuread.ServicePrincipalPassword("example", service_principal_id=example_service_principal.id) ``` *Time-based rotation* @@ -342,7 +350,7 @@ def __init__(__self__, example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_rotating = time.Rotating("example", rotation_days=7) example_service_principal_password = azuread.ServicePrincipalPassword("example", - service_principal_id=example_service_principal.object_id, + service_principal_id=example_service_principal.id, rotate_when_changed={ "rotation": example_rotating.id, }) @@ -424,7 +432,7 @@ def get(resource_name: str, :param pulumi.Input[str] end_date_relative: A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. :param pulumi.Input[str] key_id: A UUID used to uniquely identify this password credential. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] rotate_when_changed: A map of arbitrary key/value pairs that will force recreation of the password when they change, enabling password rotation based on external conditions such as a rotating timestamp. Changing this forces a new resource to be created. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the password is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the current date is used. Changing this field forces a new resource to be created. :param pulumi.Input[str] value: The password for this service principal, which is generated by Azure Active Directory. """ @@ -460,6 +468,7 @@ def end_date(self) -> pulumi.Output[str]: @property @pulumi.getter(name="endDateRelative") + @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""") def end_date_relative(self) -> pulumi.Output[Optional[str]]: """ A relative duration for which the password is valid until, for example `240h` (10 days) or `2400h30m`. Changing this field forces a new resource to be created. @@ -486,7 +495,7 @@ def rotate_when_changed(self) -> pulumi.Output[Optional[Mapping[str, str]]]: @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Output[str]: """ - The object ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this password should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") diff --git a/sdk/python/pulumi_azuread/service_principal_token_signing_certificate.py b/sdk/python/pulumi_azuread/service_principal_token_signing_certificate.py index f3ca972b5..1188ba96d 100644 --- a/sdk/python/pulumi_azuread/service_principal_token_signing_certificate.py +++ b/sdk/python/pulumi_azuread/service_principal_token_signing_certificate.py @@ -24,7 +24,7 @@ def __init__(__self__, *, end_date: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ServicePrincipalTokenSigningCertificate resource. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] display_name: Specifies a friendly name for the certificate. Must start with `CN=`. Changing this field forces a new resource to be created. > If not specified, it will default to `CN=Microsoft Azure Federated SSO Certificate`. @@ -40,7 +40,7 @@ def __init__(__self__, *, @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Input[str]: """ - The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -92,7 +92,7 @@ def __init__(__self__, *, > If not specified, it will default to `CN=Microsoft Azure Federated SSO Certificate`. :param pulumi.Input[str] end_date: The end date until which the token signing certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. :param pulumi.Input[str] key_id: A UUID used to uniquely identify the verify certificate. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). :param pulumi.Input[str] thumbprint: A SHA-1 generated thumbprint of the token signing certificate, which can be used to set the preferred signing certificate for a service principal. :param pulumi.Input[str] value: The certificate data, which is PEM encoded but does not include the header `-----BEGIN CERTIFICATE-----\\n` or the footer `\\n-----END CERTIFICATE-----`. @@ -154,7 +154,7 @@ def key_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> Optional[pulumi.Input[str]]: """ - The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -218,7 +218,7 @@ def __init__(__self__, import pulumi_azuread as azuread example = azuread.Application("example", display_name="example") - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_token_signing_certificate = azuread.ServicePrincipalTokenSigningCertificate("example", service_principal_id=example_service_principal.id) ``` @@ -229,7 +229,7 @@ def __init__(__self__, import pulumi_azuread as azuread example = azuread.Application("example", display_name="example") - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_token_signing_certificate = azuread.ServicePrincipalTokenSigningCertificate("example", service_principal_id=example_service_principal.id, display_name="CN=example.com", @@ -252,7 +252,7 @@ def __init__(__self__, > If not specified, it will default to `CN=Microsoft Azure Federated SSO Certificate`. :param pulumi.Input[str] end_date: The end date until which the token signing certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. """ ... @overload @@ -270,7 +270,7 @@ def __init__(__self__, import pulumi_azuread as azuread example = azuread.Application("example", display_name="example") - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_token_signing_certificate = azuread.ServicePrincipalTokenSigningCertificate("example", service_principal_id=example_service_principal.id) ``` @@ -281,7 +281,7 @@ def __init__(__self__, import pulumi_azuread as azuread example = azuread.Application("example", display_name="example") - example_service_principal = azuread.ServicePrincipal("example", client_id=example.application_id) + example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id) example_service_principal_token_signing_certificate = azuread.ServicePrincipalTokenSigningCertificate("example", service_principal_id=example_service_principal.id, display_name="CN=example.com", @@ -365,7 +365,7 @@ def get(resource_name: str, > If not specified, it will default to `CN=Microsoft Azure Federated SSO Certificate`. :param pulumi.Input[str] end_date: The end date until which the token signing certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created. :param pulumi.Input[str] key_id: A UUID used to uniquely identify the verify certificate. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). :param pulumi.Input[str] thumbprint: A SHA-1 generated thumbprint of the token signing certificate, which can be used to set the preferred signing certificate for a service principal. :param pulumi.Input[str] value: The certificate data, which is PEM encoded but does not include the header `-----BEGIN CERTIFICATE-----\\n` or the footer `\\n-----END CERTIFICATE-----`. @@ -413,7 +413,7 @@ def key_id(self) -> pulumi.Output[str]: @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Output[str]: """ - The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") diff --git a/sdk/python/pulumi_azuread/synchronization_job.py b/sdk/python/pulumi_azuread/synchronization_job.py index 52496d9f7..5f4f6a3b2 100644 --- a/sdk/python/pulumi_azuread/synchronization_job.py +++ b/sdk/python/pulumi_azuread/synchronization_job.py @@ -26,9 +26,9 @@ def __init__(__self__, *, enabled: Optional[pulumi.Input[bool]] = None): """ The set of arguments for constructing a SynchronizationJob resource. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] template_id: Identifier of the synchronization template this job is based on. - :param pulumi.Input[bool] enabled: Whether or not the provisioning job is enabled. Default state is `true`. + :param pulumi.Input[bool] enabled: Whether the provisioning job is enabled. Default state is `true`. """ pulumi.set(__self__, "service_principal_id", service_principal_id) pulumi.set(__self__, "template_id", template_id) @@ -39,7 +39,7 @@ def __init__(__self__, *, @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Input[str]: """ - The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -63,7 +63,7 @@ def template_id(self, value: pulumi.Input[str]): @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: """ - Whether or not the provisioning job is enabled. Default state is `true`. + Whether the provisioning job is enabled. Default state is `true`. """ return pulumi.get(self, "enabled") @@ -81,9 +81,9 @@ def __init__(__self__, *, template_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering SynchronizationJob resources. - :param pulumi.Input[bool] enabled: Whether or not the provisioning job is enabled. Default state is `true`. + :param pulumi.Input[bool] enabled: Whether the provisioning job is enabled. Default state is `true`. :param pulumi.Input[Sequence[pulumi.Input['SynchronizationJobScheduleArgs']]] schedules: A `schedule` list as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] template_id: Identifier of the synchronization template this job is based on. """ if enabled is not None: @@ -99,7 +99,7 @@ def __init__(__self__, *, @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: """ - Whether or not the provisioning job is enabled. Default state is `true`. + Whether the provisioning job is enabled. Default state is `true`. """ return pulumi.get(self, "enabled") @@ -123,7 +123,7 @@ def schedules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Synchron @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> Optional[pulumi.Input[str]]: """ - The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -171,18 +171,12 @@ def __init__(__self__, import pulumi_azuread as azuread example = azuread.get_application_template(display_name="Azure Databricks SCIM Provisioning Connector") - example_application = azuread.Application("example", + example_application_from_template = azuread.ApplicationFromTemplate("example", display_name="example", - template_id=example.template_id, - feature_tags=[{ - "enterprise": True, - "gallery": True, - }]) - example_service_principal = azuread.ServicePrincipal("example", - client_id=example_application.application_id, - use_existing=True) + template_id=example.template_id) + example_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id) example_synchronization_secret = azuread.SynchronizationSecret("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, credentials=[ { "key": "BaseAddress", @@ -194,7 +188,7 @@ def __init__(__self__, }, ]) example_synchronization_job = azuread.SynchronizationJob("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, template_id="dataBricks", enabled=True) ``` @@ -211,8 +205,8 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] enabled: Whether or not the provisioning job is enabled. Default state is `true`. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[bool] enabled: Whether the provisioning job is enabled. Default state is `true`. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] template_id: Identifier of the synchronization template this job is based on. """ ... @@ -239,18 +233,12 @@ def __init__(__self__, import pulumi_azuread as azuread example = azuread.get_application_template(display_name="Azure Databricks SCIM Provisioning Connector") - example_application = azuread.Application("example", + example_application_from_template = azuread.ApplicationFromTemplate("example", display_name="example", - template_id=example.template_id, - feature_tags=[{ - "enterprise": True, - "gallery": True, - }]) - example_service_principal = azuread.ServicePrincipal("example", - client_id=example_application.application_id, - use_existing=True) + template_id=example.template_id) + example_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id) example_synchronization_secret = azuread.SynchronizationSecret("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, credentials=[ { "key": "BaseAddress", @@ -262,7 +250,7 @@ def __init__(__self__, }, ]) example_synchronization_job = azuread.SynchronizationJob("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, template_id="dataBricks", enabled=True) ``` @@ -333,9 +321,9 @@ def get(resource_name: str, :param str resource_name: The unique name of the resulting resource. :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] enabled: Whether or not the provisioning job is enabled. Default state is `true`. + :param pulumi.Input[bool] enabled: Whether the provisioning job is enabled. Default state is `true`. :param pulumi.Input[Sequence[pulumi.Input[Union['SynchronizationJobScheduleArgs', 'SynchronizationJobScheduleArgsDict']]]] schedules: A `schedule` list as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. :param pulumi.Input[str] template_id: Identifier of the synchronization template this job is based on. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -352,7 +340,7 @@ def get(resource_name: str, @pulumi.getter def enabled(self) -> pulumi.Output[Optional[bool]]: """ - Whether or not the provisioning job is enabled. Default state is `true`. + Whether the provisioning job is enabled. Default state is `true`. """ return pulumi.get(self, "enabled") @@ -368,7 +356,7 @@ def schedules(self) -> pulumi.Output[Sequence['outputs.SynchronizationJobSchedul @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Output[str]: """ - The object ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. + The ID of the service principal for which this synchronization job should be created. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") diff --git a/sdk/python/pulumi_azuread/synchronization_job_provision_on_demand.py b/sdk/python/pulumi_azuread/synchronization_job_provision_on_demand.py index fb28ce002..cde03aaa0 100644 --- a/sdk/python/pulumi_azuread/synchronization_job_provision_on_demand.py +++ b/sdk/python/pulumi_azuread/synchronization_job_provision_on_demand.py @@ -28,8 +28,8 @@ def __init__(__self__, *, """ The set of arguments for constructing a SynchronizationJobProvisionOnDemand resource. :param pulumi.Input[Sequence[pulumi.Input['SynchronizationJobProvisionOnDemandParameterArgs']]] parameters: One or more `parameter` blocks as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for the synchronization job. - :param pulumi.Input[str] synchronization_job_id: Identifier of the synchronization template this job is based on. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for the synchronization job. + :param pulumi.Input[str] synchronization_job_id: The ID of the synchronization job. """ pulumi.set(__self__, "parameters", parameters) pulumi.set(__self__, "service_principal_id", service_principal_id) @@ -53,7 +53,7 @@ def parameters(self, value: pulumi.Input[Sequence[pulumi.Input['SynchronizationJ @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Input[str]: """ - The object ID of the service principal for the synchronization job. + The ID of the service principal for the synchronization job. """ return pulumi.get(self, "service_principal_id") @@ -65,7 +65,7 @@ def service_principal_id(self, value: pulumi.Input[str]): @pulumi.getter(name="synchronizationJobId") def synchronization_job_id(self) -> pulumi.Input[str]: """ - Identifier of the synchronization template this job is based on. + The ID of the synchronization job. """ return pulumi.get(self, "synchronization_job_id") @@ -93,8 +93,8 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering SynchronizationJobProvisionOnDemand resources. :param pulumi.Input[Sequence[pulumi.Input['SynchronizationJobProvisionOnDemandParameterArgs']]] parameters: One or more `parameter` blocks as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for the synchronization job. - :param pulumi.Input[str] synchronization_job_id: Identifier of the synchronization template this job is based on. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for the synchronization job. + :param pulumi.Input[str] synchronization_job_id: The ID of the synchronization job. """ if parameters is not None: pulumi.set(__self__, "parameters", parameters) @@ -121,7 +121,7 @@ def parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Synchro @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> Optional[pulumi.Input[str]]: """ - The object ID of the service principal for the synchronization job. + The ID of the service principal for the synchronization job. """ return pulumi.get(self, "service_principal_id") @@ -133,7 +133,7 @@ def service_principal_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="synchronizationJobId") def synchronization_job_id(self) -> Optional[pulumi.Input[str]]: """ - Identifier of the synchronization template this job is based on. + The ID of the synchronization job. """ return pulumi.get(self, "synchronization_job_id") @@ -184,18 +184,12 @@ def __init__(__self__, owners=[current.object_id], security_enabled=True) example = azuread.get_application_template(display_name="Azure Databricks SCIM Provisioning Connector") - example_application = azuread.Application("example", + example_application_from_template = azuread.ApplicationFromTemplate("example", display_name="example", - template_id=example.template_id, - feature_tags=[{ - "enterprise": True, - "gallery": True, - }]) - example_service_principal = azuread.ServicePrincipal("example", - client_id=example_application.client_id, - use_existing=True) + template_id=example.template_id) + example_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id) example_synchronization_secret = azuread.SynchronizationSecret("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, credentials=[ { "key": "BaseAddress", @@ -207,11 +201,11 @@ def __init__(__self__, }, ]) example_synchronization_job = azuread.SynchronizationJob("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, template_id="dataBricks", enabled=True) example_synchronization_job_provision_on_demand = azuread.SynchronizationJobProvisionOnDemand("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_synchronization_job.service_principal_id, synchronization_job_id=example_synchronization_job.id, parameters=[{ "rule_id": "", @@ -229,8 +223,8 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[Union['SynchronizationJobProvisionOnDemandParameterArgs', 'SynchronizationJobProvisionOnDemandParameterArgsDict']]]] parameters: One or more `parameter` blocks as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for the synchronization job. - :param pulumi.Input[str] synchronization_job_id: Identifier of the synchronization template this job is based on. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for the synchronization job. + :param pulumi.Input[str] synchronization_job_id: The ID of the synchronization job. """ ... @overload @@ -261,18 +255,12 @@ def __init__(__self__, owners=[current.object_id], security_enabled=True) example = azuread.get_application_template(display_name="Azure Databricks SCIM Provisioning Connector") - example_application = azuread.Application("example", + example_application_from_template = azuread.ApplicationFromTemplate("example", display_name="example", - template_id=example.template_id, - feature_tags=[{ - "enterprise": True, - "gallery": True, - }]) - example_service_principal = azuread.ServicePrincipal("example", - client_id=example_application.client_id, - use_existing=True) + template_id=example.template_id) + example_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id) example_synchronization_secret = azuread.SynchronizationSecret("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, credentials=[ { "key": "BaseAddress", @@ -284,11 +272,11 @@ def __init__(__self__, }, ]) example_synchronization_job = azuread.SynchronizationJob("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, template_id="dataBricks", enabled=True) example_synchronization_job_provision_on_demand = azuread.SynchronizationJobProvisionOnDemand("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_synchronization_job.service_principal_id, synchronization_job_id=example_synchronization_job.id, parameters=[{ "rule_id": "", @@ -363,8 +351,8 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[Union['SynchronizationJobProvisionOnDemandParameterArgs', 'SynchronizationJobProvisionOnDemandParameterArgsDict']]]] parameters: One or more `parameter` blocks as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for the synchronization job. - :param pulumi.Input[str] synchronization_job_id: Identifier of the synchronization template this job is based on. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for the synchronization job. + :param pulumi.Input[str] synchronization_job_id: The ID of the synchronization job. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -388,7 +376,7 @@ def parameters(self) -> pulumi.Output[Sequence['outputs.SynchronizationJobProvis @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Output[str]: """ - The object ID of the service principal for the synchronization job. + The ID of the service principal for the synchronization job. """ return pulumi.get(self, "service_principal_id") @@ -396,7 +384,7 @@ def service_principal_id(self) -> pulumi.Output[str]: @pulumi.getter(name="synchronizationJobId") def synchronization_job_id(self) -> pulumi.Output[str]: """ - Identifier of the synchronization template this job is based on. + The ID of the synchronization job. """ return pulumi.get(self, "synchronization_job_id") diff --git a/sdk/python/pulumi_azuread/synchronization_secret.py b/sdk/python/pulumi_azuread/synchronization_secret.py index dc3f23d1d..94428f952 100644 --- a/sdk/python/pulumi_azuread/synchronization_secret.py +++ b/sdk/python/pulumi_azuread/synchronization_secret.py @@ -25,7 +25,7 @@ def __init__(__self__, *, credentials: Optional[pulumi.Input[Sequence[pulumi.Input['SynchronizationSecretCredentialArgs']]]] = None): """ The set of arguments for constructing a SynchronizationSecret resource. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. :param pulumi.Input[Sequence[pulumi.Input['SynchronizationSecretCredentialArgs']]] credentials: One or more `credential` blocks as documented below. """ pulumi.set(__self__, "service_principal_id", service_principal_id) @@ -36,7 +36,7 @@ def __init__(__self__, *, @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Input[str]: """ - The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -65,7 +65,7 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering SynchronizationSecret resources. :param pulumi.Input[Sequence[pulumi.Input['SynchronizationSecretCredentialArgs']]] credentials: One or more `credential` blocks as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. """ if credentials is not None: pulumi.set(__self__, "credentials", credentials) @@ -88,7 +88,7 @@ def credentials(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Synchr @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> Optional[pulumi.Input[str]]: """ - The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") @@ -123,18 +123,12 @@ def __init__(__self__, import pulumi_azuread as azuread example = azuread.get_application_template(display_name="Azure Databricks SCIM Provisioning Connector") - example_application = azuread.Application("example", + example_application_from_template = azuread.ApplicationFromTemplate("example", display_name="example", - template_id=example.template_id, - feature_tags=[{ - "enterprise": True, - "gallery": True, - }]) - example_service_principal = azuread.ServicePrincipal("example", - client_id=example_application.application_id, - use_existing=True) + template_id=example.template_id) + example_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id) example_synchronization_secret = azuread.SynchronizationSecret("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, credentials=[ { "key": "BaseAddress", @@ -154,7 +148,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[Union['SynchronizationSecretCredentialArgs', 'SynchronizationSecretCredentialArgsDict']]]] credentials: One or more `credential` blocks as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. """ ... @overload @@ -180,18 +174,12 @@ def __init__(__self__, import pulumi_azuread as azuread example = azuread.get_application_template(display_name="Azure Databricks SCIM Provisioning Connector") - example_application = azuread.Application("example", + example_application_from_template = azuread.ApplicationFromTemplate("example", display_name="example", - template_id=example.template_id, - feature_tags=[{ - "enterprise": True, - "gallery": True, - }]) - example_service_principal = azuread.ServicePrincipal("example", - client_id=example_application.application_id, - use_existing=True) + template_id=example.template_id) + example_get_service_principal = azuread.get_service_principal_output(object_id=example_application_from_template.service_principal_object_id) example_synchronization_secret = azuread.SynchronizationSecret("example", - service_principal_id=example_service_principal.id, + service_principal_id=example_get_service_principal.id, credentials=[ { "key": "BaseAddress", @@ -258,7 +246,7 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[Union['SynchronizationSecretCredentialArgs', 'SynchronizationSecretCredentialArgsDict']]]] credentials: One or more `credential` blocks as documented below. - :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + :param pulumi.Input[str] service_principal_id: The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -280,7 +268,7 @@ def credentials(self) -> pulumi.Output[Optional[Sequence['outputs.Synchronizatio @pulumi.getter(name="servicePrincipalId") def service_principal_id(self) -> pulumi.Output[str]: """ - The object ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. + The ID of the service principal for which this synchronization secrets should be stored. Changing this field forces a new resource to be created. """ return pulumi.get(self, "service_principal_id") diff --git a/sdk/python/pyproject.toml b/sdk/python/pyproject.toml index 9ff0ae006..795e133e6 100644 --- a/sdk/python/pyproject.toml +++ b/sdk/python/pyproject.toml @@ -5,7 +5,7 @@ keywords = ["pulumi", "azuread"] readme = "README.md" requires-python = ">=3.8" - version = "5.0.0a0+dev" + version = "6.0.0a0+dev" [project.license] text = "Apache-2.0" [project.urls]