1. Packages
  2. Azuredevops Provider
  3. API Docs
  4. ServiceEndpointAzureRM
Azure DevOps v3.4.0 published on Wednesday, Oct 30, 2024 by Pulumi

azuredevops.ServiceEndpointAzureRM

Explore with Pulumi AI

azuredevops logo
Azure DevOps v3.4.0 published on Wednesday, Oct 30, 2024 by Pulumi

    Manages Manual or Automatic AzureRM service endpoint within Azure DevOps.

    Requirements (Manual AzureRM Service Endpoint)

    Before to create a service end point in Azure DevOps, you need to create a Service Principal in your Azure subscription.

    For detailed steps to create a service principal with Azure cli see the documentation

    Example Usage

    Service Principal Manual AzureRM Service Endpoint (Subscription Scoped)

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.Project("example", {
        name: "Example Project",
        visibility: "private",
        versionControl: "Git",
        workItemTemplate: "Agile",
        description: "Managed by Terraform",
    });
    const exampleServiceEndpointAzureRM = new azuredevops.ServiceEndpointAzureRM("example", {
        projectId: example.id,
        serviceEndpointName: "Example AzureRM",
        description: "Managed by Terraform",
        serviceEndpointAuthenticationScheme: "ServicePrincipal",
        credentials: {
            serviceprincipalid: "00000000-0000-0000-0000-000000000000",
            serviceprincipalkey: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        },
        azurermSpnTenantid: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionId: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionName: "Example Subscription Name",
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.Project("example",
        name="Example Project",
        visibility="private",
        version_control="Git",
        work_item_template="Agile",
        description="Managed by Terraform")
    example_service_endpoint_azure_rm = azuredevops.ServiceEndpointAzureRM("example",
        project_id=example.id,
        service_endpoint_name="Example AzureRM",
        description="Managed by Terraform",
        service_endpoint_authentication_scheme="ServicePrincipal",
        credentials={
            "serviceprincipalid": "00000000-0000-0000-0000-000000000000",
            "serviceprincipalkey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        },
        azurerm_spn_tenantid="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_id="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_name="Example Subscription Name")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azuredevops/sdk/v3/go/azuredevops"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := azuredevops.NewProject(ctx, "example", &azuredevops.ProjectArgs{
    			Name:             pulumi.String("Example Project"),
    			Visibility:       pulumi.String("private"),
    			VersionControl:   pulumi.String("Git"),
    			WorkItemTemplate: pulumi.String("Agile"),
    			Description:      pulumi.String("Managed by Terraform"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewServiceEndpointAzureRM(ctx, "example", &azuredevops.ServiceEndpointAzureRMArgs{
    			ProjectId:                           example.ID(),
    			ServiceEndpointName:                 pulumi.String("Example AzureRM"),
    			Description:                         pulumi.String("Managed by Terraform"),
    			ServiceEndpointAuthenticationScheme: pulumi.String("ServicePrincipal"),
    			Credentials: &azuredevops.ServiceEndpointAzureRMCredentialsArgs{
    				Serviceprincipalid:  pulumi.String("00000000-0000-0000-0000-000000000000"),
    				Serviceprincipalkey: pulumi.String("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"),
    			},
    			AzurermSpnTenantid:      pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionId:   pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionName: pulumi.String("Example Subscription Name"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureDevOps = Pulumi.AzureDevOps;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new AzureDevOps.Project("example", new()
        {
            Name = "Example Project",
            Visibility = "private",
            VersionControl = "Git",
            WorkItemTemplate = "Agile",
            Description = "Managed by Terraform",
        });
    
        var exampleServiceEndpointAzureRM = new AzureDevOps.ServiceEndpointAzureRM("example", new()
        {
            ProjectId = example.Id,
            ServiceEndpointName = "Example AzureRM",
            Description = "Managed by Terraform",
            ServiceEndpointAuthenticationScheme = "ServicePrincipal",
            Credentials = new AzureDevOps.Inputs.ServiceEndpointAzureRMCredentialsArgs
            {
                Serviceprincipalid = "00000000-0000-0000-0000-000000000000",
                Serviceprincipalkey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
            },
            AzurermSpnTenantid = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionId = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionName = "Example Subscription Name",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.Project;
    import com.pulumi.azuredevops.ProjectArgs;
    import com.pulumi.azuredevops.ServiceEndpointAzureRM;
    import com.pulumi.azuredevops.ServiceEndpointAzureRMArgs;
    import com.pulumi.azuredevops.inputs.ServiceEndpointAzureRMCredentialsArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Project("example", ProjectArgs.builder()
                .name("Example Project")
                .visibility("private")
                .versionControl("Git")
                .workItemTemplate("Agile")
                .description("Managed by Terraform")
                .build());
    
            var exampleServiceEndpointAzureRM = new ServiceEndpointAzureRM("exampleServiceEndpointAzureRM", ServiceEndpointAzureRMArgs.builder()
                .projectId(example.id())
                .serviceEndpointName("Example AzureRM")
                .description("Managed by Terraform")
                .serviceEndpointAuthenticationScheme("ServicePrincipal")
                .credentials(ServiceEndpointAzureRMCredentialsArgs.builder()
                    .serviceprincipalid("00000000-0000-0000-0000-000000000000")
                    .serviceprincipalkey("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")
                    .build())
                .azurermSpnTenantid("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionId("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionName("Example Subscription Name")
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:Project
        properties:
          name: Example Project
          visibility: private
          versionControl: Git
          workItemTemplate: Agile
          description: Managed by Terraform
      exampleServiceEndpointAzureRM:
        type: azuredevops:ServiceEndpointAzureRM
        name: example
        properties:
          projectId: ${example.id}
          serviceEndpointName: Example AzureRM
          description: Managed by Terraform
          serviceEndpointAuthenticationScheme: ServicePrincipal
          credentials:
            serviceprincipalid: 00000000-0000-0000-0000-000000000000
            serviceprincipalkey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          azurermSpnTenantid: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionId: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionName: Example Subscription Name
    

    Service Principal Manual AzureRM Service Endpoint (ManagementGroup Scoped)

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.Project("example", {
        name: "Example Project",
        visibility: "private",
        versionControl: "Git",
        workItemTemplate: "Agile",
        description: "Managed by Terraform",
    });
    const exampleServiceEndpointAzureRM = new azuredevops.ServiceEndpointAzureRM("example", {
        projectId: example.id,
        serviceEndpointName: "Example AzureRM",
        description: "Managed by Terraform",
        serviceEndpointAuthenticationScheme: "ServicePrincipal",
        credentials: {
            serviceprincipalid: "00000000-0000-0000-0000-000000000000",
            serviceprincipalkey: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        },
        azurermSpnTenantid: "00000000-0000-0000-0000-000000000000",
        azurermManagementGroupId: "managementGroup",
        azurermManagementGroupName: "managementGroup",
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.Project("example",
        name="Example Project",
        visibility="private",
        version_control="Git",
        work_item_template="Agile",
        description="Managed by Terraform")
    example_service_endpoint_azure_rm = azuredevops.ServiceEndpointAzureRM("example",
        project_id=example.id,
        service_endpoint_name="Example AzureRM",
        description="Managed by Terraform",
        service_endpoint_authentication_scheme="ServicePrincipal",
        credentials={
            "serviceprincipalid": "00000000-0000-0000-0000-000000000000",
            "serviceprincipalkey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        },
        azurerm_spn_tenantid="00000000-0000-0000-0000-000000000000",
        azurerm_management_group_id="managementGroup",
        azurerm_management_group_name="managementGroup")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azuredevops/sdk/v3/go/azuredevops"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := azuredevops.NewProject(ctx, "example", &azuredevops.ProjectArgs{
    			Name:             pulumi.String("Example Project"),
    			Visibility:       pulumi.String("private"),
    			VersionControl:   pulumi.String("Git"),
    			WorkItemTemplate: pulumi.String("Agile"),
    			Description:      pulumi.String("Managed by Terraform"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewServiceEndpointAzureRM(ctx, "example", &azuredevops.ServiceEndpointAzureRMArgs{
    			ProjectId:                           example.ID(),
    			ServiceEndpointName:                 pulumi.String("Example AzureRM"),
    			Description:                         pulumi.String("Managed by Terraform"),
    			ServiceEndpointAuthenticationScheme: pulumi.String("ServicePrincipal"),
    			Credentials: &azuredevops.ServiceEndpointAzureRMCredentialsArgs{
    				Serviceprincipalid:  pulumi.String("00000000-0000-0000-0000-000000000000"),
    				Serviceprincipalkey: pulumi.String("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"),
    			},
    			AzurermSpnTenantid:         pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermManagementGroupId:   pulumi.String("managementGroup"),
    			AzurermManagementGroupName: pulumi.String("managementGroup"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureDevOps = Pulumi.AzureDevOps;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new AzureDevOps.Project("example", new()
        {
            Name = "Example Project",
            Visibility = "private",
            VersionControl = "Git",
            WorkItemTemplate = "Agile",
            Description = "Managed by Terraform",
        });
    
        var exampleServiceEndpointAzureRM = new AzureDevOps.ServiceEndpointAzureRM("example", new()
        {
            ProjectId = example.Id,
            ServiceEndpointName = "Example AzureRM",
            Description = "Managed by Terraform",
            ServiceEndpointAuthenticationScheme = "ServicePrincipal",
            Credentials = new AzureDevOps.Inputs.ServiceEndpointAzureRMCredentialsArgs
            {
                Serviceprincipalid = "00000000-0000-0000-0000-000000000000",
                Serviceprincipalkey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
            },
            AzurermSpnTenantid = "00000000-0000-0000-0000-000000000000",
            AzurermManagementGroupId = "managementGroup",
            AzurermManagementGroupName = "managementGroup",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.Project;
    import com.pulumi.azuredevops.ProjectArgs;
    import com.pulumi.azuredevops.ServiceEndpointAzureRM;
    import com.pulumi.azuredevops.ServiceEndpointAzureRMArgs;
    import com.pulumi.azuredevops.inputs.ServiceEndpointAzureRMCredentialsArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Project("example", ProjectArgs.builder()
                .name("Example Project")
                .visibility("private")
                .versionControl("Git")
                .workItemTemplate("Agile")
                .description("Managed by Terraform")
                .build());
    
            var exampleServiceEndpointAzureRM = new ServiceEndpointAzureRM("exampleServiceEndpointAzureRM", ServiceEndpointAzureRMArgs.builder()
                .projectId(example.id())
                .serviceEndpointName("Example AzureRM")
                .description("Managed by Terraform")
                .serviceEndpointAuthenticationScheme("ServicePrincipal")
                .credentials(ServiceEndpointAzureRMCredentialsArgs.builder()
                    .serviceprincipalid("00000000-0000-0000-0000-000000000000")
                    .serviceprincipalkey("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")
                    .build())
                .azurermSpnTenantid("00000000-0000-0000-0000-000000000000")
                .azurermManagementGroupId("managementGroup")
                .azurermManagementGroupName("managementGroup")
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:Project
        properties:
          name: Example Project
          visibility: private
          versionControl: Git
          workItemTemplate: Agile
          description: Managed by Terraform
      exampleServiceEndpointAzureRM:
        type: azuredevops:ServiceEndpointAzureRM
        name: example
        properties:
          projectId: ${example.id}
          serviceEndpointName: Example AzureRM
          description: Managed by Terraform
          serviceEndpointAuthenticationScheme: ServicePrincipal
          credentials:
            serviceprincipalid: 00000000-0000-0000-0000-000000000000
            serviceprincipalkey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          azurermSpnTenantid: 00000000-0000-0000-0000-000000000000
          azurermManagementGroupId: managementGroup
          azurermManagementGroupName: managementGroup
    

    Service Principal Automatic AzureRM Service Endpoint

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.Project("example", {
        name: "Example Project",
        visibility: "private",
        versionControl: "Git",
        workItemTemplate: "Agile",
    });
    const exampleServiceEndpointAzureRM = new azuredevops.ServiceEndpointAzureRM("example", {
        projectId: example.id,
        serviceEndpointName: "Example AzureRM",
        serviceEndpointAuthenticationScheme: "ServicePrincipal",
        azurermSpnTenantid: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionId: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionName: "Example Subscription Name",
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.Project("example",
        name="Example Project",
        visibility="private",
        version_control="Git",
        work_item_template="Agile")
    example_service_endpoint_azure_rm = azuredevops.ServiceEndpointAzureRM("example",
        project_id=example.id,
        service_endpoint_name="Example AzureRM",
        service_endpoint_authentication_scheme="ServicePrincipal",
        azurerm_spn_tenantid="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_id="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_name="Example Subscription Name")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azuredevops/sdk/v3/go/azuredevops"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := azuredevops.NewProject(ctx, "example", &azuredevops.ProjectArgs{
    			Name:             pulumi.String("Example Project"),
    			Visibility:       pulumi.String("private"),
    			VersionControl:   pulumi.String("Git"),
    			WorkItemTemplate: pulumi.String("Agile"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewServiceEndpointAzureRM(ctx, "example", &azuredevops.ServiceEndpointAzureRMArgs{
    			ProjectId:                           example.ID(),
    			ServiceEndpointName:                 pulumi.String("Example AzureRM"),
    			ServiceEndpointAuthenticationScheme: pulumi.String("ServicePrincipal"),
    			AzurermSpnTenantid:                  pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionId:               pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionName:             pulumi.String("Example Subscription Name"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureDevOps = Pulumi.AzureDevOps;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new AzureDevOps.Project("example", new()
        {
            Name = "Example Project",
            Visibility = "private",
            VersionControl = "Git",
            WorkItemTemplate = "Agile",
        });
    
        var exampleServiceEndpointAzureRM = new AzureDevOps.ServiceEndpointAzureRM("example", new()
        {
            ProjectId = example.Id,
            ServiceEndpointName = "Example AzureRM",
            ServiceEndpointAuthenticationScheme = "ServicePrincipal",
            AzurermSpnTenantid = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionId = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionName = "Example Subscription Name",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.Project;
    import com.pulumi.azuredevops.ProjectArgs;
    import com.pulumi.azuredevops.ServiceEndpointAzureRM;
    import com.pulumi.azuredevops.ServiceEndpointAzureRMArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Project("example", ProjectArgs.builder()
                .name("Example Project")
                .visibility("private")
                .versionControl("Git")
                .workItemTemplate("Agile")
                .build());
    
            var exampleServiceEndpointAzureRM = new ServiceEndpointAzureRM("exampleServiceEndpointAzureRM", ServiceEndpointAzureRMArgs.builder()
                .projectId(example.id())
                .serviceEndpointName("Example AzureRM")
                .serviceEndpointAuthenticationScheme("ServicePrincipal")
                .azurermSpnTenantid("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionId("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionName("Example Subscription Name")
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:Project
        properties:
          name: Example Project
          visibility: private
          versionControl: Git
          workItemTemplate: Agile
      exampleServiceEndpointAzureRM:
        type: azuredevops:ServiceEndpointAzureRM
        name: example
        properties:
          projectId: ${example.id}
          serviceEndpointName: Example AzureRM
          serviceEndpointAuthenticationScheme: ServicePrincipal
          azurermSpnTenantid: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionId: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionName: Example Subscription Name
    

    Workload Identity Federation Manual AzureRM Service Endpoint (Subscription Scoped)

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const serviceConnectionName = "example-federated-sc";
    const example = new azuredevops.Project("example", {
        name: "Example Project",
        visibility: "private",
        versionControl: "Git",
        workItemTemplate: "Agile",
        description: "Managed by Terraform",
    });
    const identity = new azure.core.ResourceGroup("identity", {
        name: "identity",
        location: "UK South",
    });
    const exampleUserAssignedIdentity = new azure.authorization.UserAssignedIdentity("example", {
        location: identity.location,
        name: "example-identity",
        resourceGroupName: "azurerm_resource_group.identity.name",
    });
    const exampleServiceEndpointAzureRM = new azuredevops.ServiceEndpointAzureRM("example", {
        projectId: example.id,
        serviceEndpointName: serviceConnectionName,
        description: "Managed by Terraform",
        serviceEndpointAuthenticationScheme: "WorkloadIdentityFederation",
        credentials: {
            serviceprincipalid: exampleUserAssignedIdentity.clientId,
        },
        azurermSpnTenantid: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionId: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionName: "Example Subscription Name",
    });
    const exampleFederatedIdentityCredential = new azure.armmsi.FederatedIdentityCredential("example", {
        name: "example-federated-credential",
        resourceGroupName: identity.name,
        parentId: exampleUserAssignedIdentity.id,
        audience: "api://AzureADTokenExchange",
        issuer: exampleServiceEndpointAzureRM.workloadIdentityFederationIssuer,
        subject: exampleServiceEndpointAzureRM.workloadIdentityFederationSubject,
    });
    
    import pulumi
    import pulumi_azure as azure
    import pulumi_azuredevops as azuredevops
    
    service_connection_name = "example-federated-sc"
    example = azuredevops.Project("example",
        name="Example Project",
        visibility="private",
        version_control="Git",
        work_item_template="Agile",
        description="Managed by Terraform")
    identity = azure.core.ResourceGroup("identity",
        name="identity",
        location="UK South")
    example_user_assigned_identity = azure.authorization.UserAssignedIdentity("example",
        location=identity.location,
        name="example-identity",
        resource_group_name="azurerm_resource_group.identity.name")
    example_service_endpoint_azure_rm = azuredevops.ServiceEndpointAzureRM("example",
        project_id=example.id,
        service_endpoint_name=service_connection_name,
        description="Managed by Terraform",
        service_endpoint_authentication_scheme="WorkloadIdentityFederation",
        credentials={
            "serviceprincipalid": example_user_assigned_identity.client_id,
        },
        azurerm_spn_tenantid="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_id="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_name="Example Subscription Name")
    example_federated_identity_credential = azure.armmsi.FederatedIdentityCredential("example",
        name="example-federated-credential",
        resource_group_name=identity.name,
        parent_id=example_user_assigned_identity.id,
        audience="api://AzureADTokenExchange",
        issuer=example_service_endpoint_azure_rm.workload_identity_federation_issuer,
        subject=example_service_endpoint_azure_rm.workload_identity_federation_subject)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/armmsi"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
    	"github.com/pulumi/pulumi-azuredevops/sdk/v3/go/azuredevops"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		serviceConnectionName := "example-federated-sc"
    		example, err := azuredevops.NewProject(ctx, "example", &azuredevops.ProjectArgs{
    			Name:             pulumi.String("Example Project"),
    			Visibility:       pulumi.String("private"),
    			VersionControl:   pulumi.String("Git"),
    			WorkItemTemplate: pulumi.String("Agile"),
    			Description:      pulumi.String("Managed by Terraform"),
    		})
    		if err != nil {
    			return err
    		}
    		identity, err := core.NewResourceGroup(ctx, "identity", &core.ResourceGroupArgs{
    			Name:     pulumi.String("identity"),
    			Location: pulumi.String("UK South"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleUserAssignedIdentity, err := authorization.NewUserAssignedIdentity(ctx, "example", &authorization.UserAssignedIdentityArgs{
    			Location:          identity.Location,
    			Name:              pulumi.String("example-identity"),
    			ResourceGroupName: pulumi.String("azurerm_resource_group.identity.name"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleServiceEndpointAzureRM, err := azuredevops.NewServiceEndpointAzureRM(ctx, "example", &azuredevops.ServiceEndpointAzureRMArgs{
    			ProjectId:                           example.ID(),
    			ServiceEndpointName:                 pulumi.String(serviceConnectionName),
    			Description:                         pulumi.String("Managed by Terraform"),
    			ServiceEndpointAuthenticationScheme: pulumi.String("WorkloadIdentityFederation"),
    			Credentials: &azuredevops.ServiceEndpointAzureRMCredentialsArgs{
    				Serviceprincipalid: exampleUserAssignedIdentity.ClientId,
    			},
    			AzurermSpnTenantid:      pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionId:   pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionName: pulumi.String("Example Subscription Name"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = armmsi.NewFederatedIdentityCredential(ctx, "example", &armmsi.FederatedIdentityCredentialArgs{
    			Name:              pulumi.String("example-federated-credential"),
    			ResourceGroupName: identity.Name,
    			ParentId:          exampleUserAssignedIdentity.ID(),
    			Audience:          pulumi.String("api://AzureADTokenExchange"),
    			Issuer:            exampleServiceEndpointAzureRM.WorkloadIdentityFederationIssuer,
    			Subject:           exampleServiceEndpointAzureRM.WorkloadIdentityFederationSubject,
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    using AzureDevOps = Pulumi.AzureDevOps;
    
    return await Deployment.RunAsync(() => 
    {
        var serviceConnectionName = "example-federated-sc";
    
        var example = new AzureDevOps.Project("example", new()
        {
            Name = "Example Project",
            Visibility = "private",
            VersionControl = "Git",
            WorkItemTemplate = "Agile",
            Description = "Managed by Terraform",
        });
    
        var identity = new Azure.Core.ResourceGroup("identity", new()
        {
            Name = "identity",
            Location = "UK South",
        });
    
        var exampleUserAssignedIdentity = new Azure.Authorization.UserAssignedIdentity("example", new()
        {
            Location = identity.Location,
            Name = "example-identity",
            ResourceGroupName = "azurerm_resource_group.identity.name",
        });
    
        var exampleServiceEndpointAzureRM = new AzureDevOps.ServiceEndpointAzureRM("example", new()
        {
            ProjectId = example.Id,
            ServiceEndpointName = serviceConnectionName,
            Description = "Managed by Terraform",
            ServiceEndpointAuthenticationScheme = "WorkloadIdentityFederation",
            Credentials = new AzureDevOps.Inputs.ServiceEndpointAzureRMCredentialsArgs
            {
                Serviceprincipalid = exampleUserAssignedIdentity.ClientId,
            },
            AzurermSpnTenantid = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionId = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionName = "Example Subscription Name",
        });
    
        var exampleFederatedIdentityCredential = new Azure.ArmMsi.FederatedIdentityCredential("example", new()
        {
            Name = "example-federated-credential",
            ResourceGroupName = identity.Name,
            ParentId = exampleUserAssignedIdentity.Id,
            Audience = "api://AzureADTokenExchange",
            Issuer = exampleServiceEndpointAzureRM.WorkloadIdentityFederationIssuer,
            Subject = exampleServiceEndpointAzureRM.WorkloadIdentityFederationSubject,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.Project;
    import com.pulumi.azuredevops.ProjectArgs;
    import com.pulumi.azure.core.ResourceGroup;
    import com.pulumi.azure.core.ResourceGroupArgs;
    import com.pulumi.azure.authorization.UserAssignedIdentity;
    import com.pulumi.azure.authorization.UserAssignedIdentityArgs;
    import com.pulumi.azuredevops.ServiceEndpointAzureRM;
    import com.pulumi.azuredevops.ServiceEndpointAzureRMArgs;
    import com.pulumi.azuredevops.inputs.ServiceEndpointAzureRMCredentialsArgs;
    import com.pulumi.azure.armmsi.FederatedIdentityCredential;
    import com.pulumi.azure.armmsi.FederatedIdentityCredentialArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var serviceConnectionName = "example-federated-sc";
    
            var example = new Project("example", ProjectArgs.builder()
                .name("Example Project")
                .visibility("private")
                .versionControl("Git")
                .workItemTemplate("Agile")
                .description("Managed by Terraform")
                .build());
    
            var identity = new ResourceGroup("identity", ResourceGroupArgs.builder()
                .name("identity")
                .location("UK South")
                .build());
    
            var exampleUserAssignedIdentity = new UserAssignedIdentity("exampleUserAssignedIdentity", UserAssignedIdentityArgs.builder()
                .location(identity.location())
                .name("example-identity")
                .resourceGroupName("azurerm_resource_group.identity.name")
                .build());
    
            var exampleServiceEndpointAzureRM = new ServiceEndpointAzureRM("exampleServiceEndpointAzureRM", ServiceEndpointAzureRMArgs.builder()
                .projectId(example.id())
                .serviceEndpointName(serviceConnectionName)
                .description("Managed by Terraform")
                .serviceEndpointAuthenticationScheme("WorkloadIdentityFederation")
                .credentials(ServiceEndpointAzureRMCredentialsArgs.builder()
                    .serviceprincipalid(exampleUserAssignedIdentity.clientId())
                    .build())
                .azurermSpnTenantid("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionId("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionName("Example Subscription Name")
                .build());
    
            var exampleFederatedIdentityCredential = new FederatedIdentityCredential("exampleFederatedIdentityCredential", FederatedIdentityCredentialArgs.builder()
                .name("example-federated-credential")
                .resourceGroupName(identity.name())
                .parentId(exampleUserAssignedIdentity.id())
                .audience("api://AzureADTokenExchange")
                .issuer(exampleServiceEndpointAzureRM.workloadIdentityFederationIssuer())
                .subject(exampleServiceEndpointAzureRM.workloadIdentityFederationSubject())
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:Project
        properties:
          name: Example Project
          visibility: private
          versionControl: Git
          workItemTemplate: Agile
          description: Managed by Terraform
      identity:
        type: azure:core:ResourceGroup
        properties:
          name: identity
          location: UK South
      exampleUserAssignedIdentity:
        type: azure:authorization:UserAssignedIdentity
        name: example
        properties:
          location: ${identity.location}
          name: example-identity
          resourceGroupName: azurerm_resource_group.identity.name
      exampleServiceEndpointAzureRM:
        type: azuredevops:ServiceEndpointAzureRM
        name: example
        properties:
          projectId: ${example.id}
          serviceEndpointName: ${serviceConnectionName}
          description: Managed by Terraform
          serviceEndpointAuthenticationScheme: WorkloadIdentityFederation
          credentials:
            serviceprincipalid: ${exampleUserAssignedIdentity.clientId}
          azurermSpnTenantid: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionId: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionName: Example Subscription Name
      exampleFederatedIdentityCredential:
        type: azure:armmsi:FederatedIdentityCredential
        name: example
        properties:
          name: example-federated-credential
          resourceGroupName: ${identity.name}
          parentId: ${exampleUserAssignedIdentity.id}
          audience: api://AzureADTokenExchange
          issuer: ${exampleServiceEndpointAzureRM.workloadIdentityFederationIssuer}
          subject: ${exampleServiceEndpointAzureRM.workloadIdentityFederationSubject}
    variables:
      serviceConnectionName: example-federated-sc
    

    Workload Identity Federation Automatic AzureRM Service Endpoint

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.Project("example", {
        name: "Example Project",
        visibility: "private",
        versionControl: "Git",
        workItemTemplate: "Agile",
    });
    const exampleServiceEndpointAzureRM = new azuredevops.ServiceEndpointAzureRM("example", {
        projectId: example.id,
        serviceEndpointName: "Example AzureRM",
        serviceEndpointAuthenticationScheme: "WorkloadIdentityFederation",
        azurermSpnTenantid: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionId: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionName: "Example Subscription Name",
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.Project("example",
        name="Example Project",
        visibility="private",
        version_control="Git",
        work_item_template="Agile")
    example_service_endpoint_azure_rm = azuredevops.ServiceEndpointAzureRM("example",
        project_id=example.id,
        service_endpoint_name="Example AzureRM",
        service_endpoint_authentication_scheme="WorkloadIdentityFederation",
        azurerm_spn_tenantid="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_id="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_name="Example Subscription Name")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azuredevops/sdk/v3/go/azuredevops"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := azuredevops.NewProject(ctx, "example", &azuredevops.ProjectArgs{
    			Name:             pulumi.String("Example Project"),
    			Visibility:       pulumi.String("private"),
    			VersionControl:   pulumi.String("Git"),
    			WorkItemTemplate: pulumi.String("Agile"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewServiceEndpointAzureRM(ctx, "example", &azuredevops.ServiceEndpointAzureRMArgs{
    			ProjectId:                           example.ID(),
    			ServiceEndpointName:                 pulumi.String("Example AzureRM"),
    			ServiceEndpointAuthenticationScheme: pulumi.String("WorkloadIdentityFederation"),
    			AzurermSpnTenantid:                  pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionId:               pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionName:             pulumi.String("Example Subscription Name"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureDevOps = Pulumi.AzureDevOps;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new AzureDevOps.Project("example", new()
        {
            Name = "Example Project",
            Visibility = "private",
            VersionControl = "Git",
            WorkItemTemplate = "Agile",
        });
    
        var exampleServiceEndpointAzureRM = new AzureDevOps.ServiceEndpointAzureRM("example", new()
        {
            ProjectId = example.Id,
            ServiceEndpointName = "Example AzureRM",
            ServiceEndpointAuthenticationScheme = "WorkloadIdentityFederation",
            AzurermSpnTenantid = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionId = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionName = "Example Subscription Name",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.Project;
    import com.pulumi.azuredevops.ProjectArgs;
    import com.pulumi.azuredevops.ServiceEndpointAzureRM;
    import com.pulumi.azuredevops.ServiceEndpointAzureRMArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Project("example", ProjectArgs.builder()
                .name("Example Project")
                .visibility("private")
                .versionControl("Git")
                .workItemTemplate("Agile")
                .build());
    
            var exampleServiceEndpointAzureRM = new ServiceEndpointAzureRM("exampleServiceEndpointAzureRM", ServiceEndpointAzureRMArgs.builder()
                .projectId(example.id())
                .serviceEndpointName("Example AzureRM")
                .serviceEndpointAuthenticationScheme("WorkloadIdentityFederation")
                .azurermSpnTenantid("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionId("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionName("Example Subscription Name")
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:Project
        properties:
          name: Example Project
          visibility: private
          versionControl: Git
          workItemTemplate: Agile
      exampleServiceEndpointAzureRM:
        type: azuredevops:ServiceEndpointAzureRM
        name: example
        properties:
          projectId: ${example.id}
          serviceEndpointName: Example AzureRM
          serviceEndpointAuthenticationScheme: WorkloadIdentityFederation
          azurermSpnTenantid: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionId: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionName: Example Subscription Name
    

    Managed Identity AzureRM Service Endpoint

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.Project("example", {
        name: "Example Project",
        visibility: "private",
        versionControl: "Git",
        workItemTemplate: "Agile",
    });
    const exampleServiceEndpointAzureRM = new azuredevops.ServiceEndpointAzureRM("example", {
        projectId: example.id,
        serviceEndpointName: "Example AzureRM",
        serviceEndpointAuthenticationScheme: "ManagedServiceIdentity",
        azurermSpnTenantid: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionId: "00000000-0000-0000-0000-000000000000",
        azurermSubscriptionName: "Example Subscription Name",
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.Project("example",
        name="Example Project",
        visibility="private",
        version_control="Git",
        work_item_template="Agile")
    example_service_endpoint_azure_rm = azuredevops.ServiceEndpointAzureRM("example",
        project_id=example.id,
        service_endpoint_name="Example AzureRM",
        service_endpoint_authentication_scheme="ManagedServiceIdentity",
        azurerm_spn_tenantid="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_id="00000000-0000-0000-0000-000000000000",
        azurerm_subscription_name="Example Subscription Name")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azuredevops/sdk/v3/go/azuredevops"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := azuredevops.NewProject(ctx, "example", &azuredevops.ProjectArgs{
    			Name:             pulumi.String("Example Project"),
    			Visibility:       pulumi.String("private"),
    			VersionControl:   pulumi.String("Git"),
    			WorkItemTemplate: pulumi.String("Agile"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewServiceEndpointAzureRM(ctx, "example", &azuredevops.ServiceEndpointAzureRMArgs{
    			ProjectId:                           example.ID(),
    			ServiceEndpointName:                 pulumi.String("Example AzureRM"),
    			ServiceEndpointAuthenticationScheme: pulumi.String("ManagedServiceIdentity"),
    			AzurermSpnTenantid:                  pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionId:               pulumi.String("00000000-0000-0000-0000-000000000000"),
    			AzurermSubscriptionName:             pulumi.String("Example Subscription Name"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureDevOps = Pulumi.AzureDevOps;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new AzureDevOps.Project("example", new()
        {
            Name = "Example Project",
            Visibility = "private",
            VersionControl = "Git",
            WorkItemTemplate = "Agile",
        });
    
        var exampleServiceEndpointAzureRM = new AzureDevOps.ServiceEndpointAzureRM("example", new()
        {
            ProjectId = example.Id,
            ServiceEndpointName = "Example AzureRM",
            ServiceEndpointAuthenticationScheme = "ManagedServiceIdentity",
            AzurermSpnTenantid = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionId = "00000000-0000-0000-0000-000000000000",
            AzurermSubscriptionName = "Example Subscription Name",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.Project;
    import com.pulumi.azuredevops.ProjectArgs;
    import com.pulumi.azuredevops.ServiceEndpointAzureRM;
    import com.pulumi.azuredevops.ServiceEndpointAzureRMArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Project("example", ProjectArgs.builder()
                .name("Example Project")
                .visibility("private")
                .versionControl("Git")
                .workItemTemplate("Agile")
                .build());
    
            var exampleServiceEndpointAzureRM = new ServiceEndpointAzureRM("exampleServiceEndpointAzureRM", ServiceEndpointAzureRMArgs.builder()
                .projectId(example.id())
                .serviceEndpointName("Example AzureRM")
                .serviceEndpointAuthenticationScheme("ManagedServiceIdentity")
                .azurermSpnTenantid("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionId("00000000-0000-0000-0000-000000000000")
                .azurermSubscriptionName("Example Subscription Name")
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:Project
        properties:
          name: Example Project
          visibility: private
          versionControl: Git
          workItemTemplate: Agile
      exampleServiceEndpointAzureRM:
        type: azuredevops:ServiceEndpointAzureRM
        name: example
        properties:
          projectId: ${example.id}
          serviceEndpointName: Example AzureRM
          serviceEndpointAuthenticationScheme: ManagedServiceIdentity
          azurermSpnTenantid: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionId: 00000000-0000-0000-0000-000000000000
          azurermSubscriptionName: Example Subscription Name
    

    Create ServiceEndpointAzureRM Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ServiceEndpointAzureRM(name: string, args: ServiceEndpointAzureRMArgs, opts?: CustomResourceOptions);
    @overload
    def ServiceEndpointAzureRM(resource_name: str,
                               args: ServiceEndpointAzureRMArgs,
                               opts: Optional[ResourceOptions] = None)
    
    @overload
    def ServiceEndpointAzureRM(resource_name: str,
                               opts: Optional[ResourceOptions] = None,
                               azurerm_spn_tenantid: Optional[str] = None,
                               service_endpoint_name: Optional[str] = None,
                               project_id: Optional[str] = None,
                               credentials: Optional[ServiceEndpointAzureRMCredentialsArgs] = None,
                               azurerm_subscription_id: Optional[str] = None,
                               azurerm_subscription_name: Optional[str] = None,
                               authorization: Optional[Mapping[str, str]] = None,
                               description: Optional[str] = None,
                               environment: Optional[str] = None,
                               features: Optional[ServiceEndpointAzureRMFeaturesArgs] = None,
                               azurerm_management_group_name: Optional[str] = None,
                               resource_group: Optional[str] = None,
                               service_endpoint_authentication_scheme: Optional[str] = None,
                               azurerm_management_group_id: Optional[str] = None)
    func NewServiceEndpointAzureRM(ctx *Context, name string, args ServiceEndpointAzureRMArgs, opts ...ResourceOption) (*ServiceEndpointAzureRM, error)
    public ServiceEndpointAzureRM(string name, ServiceEndpointAzureRMArgs args, CustomResourceOptions? opts = null)
    public ServiceEndpointAzureRM(String name, ServiceEndpointAzureRMArgs args)
    public ServiceEndpointAzureRM(String name, ServiceEndpointAzureRMArgs args, CustomResourceOptions options)
    
    type: azuredevops:ServiceEndpointAzureRM
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ServiceEndpointAzureRMArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ServiceEndpointAzureRMArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ServiceEndpointAzureRMArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ServiceEndpointAzureRMArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ServiceEndpointAzureRMArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var serviceEndpointAzureRMResource = new AzureDevOps.ServiceEndpointAzureRM("serviceEndpointAzureRMResource", new()
    {
        AzurermSpnTenantid = "string",
        ServiceEndpointName = "string",
        ProjectId = "string",
        Credentials = new AzureDevOps.Inputs.ServiceEndpointAzureRMCredentialsArgs
        {
            Serviceprincipalid = "string",
            Serviceprincipalkey = "string",
        },
        AzurermSubscriptionId = "string",
        AzurermSubscriptionName = "string",
        Authorization = 
        {
            { "string", "string" },
        },
        Description = "string",
        Environment = "string",
        Features = new AzureDevOps.Inputs.ServiceEndpointAzureRMFeaturesArgs
        {
            Validate = false,
        },
        AzurermManagementGroupName = "string",
        ResourceGroup = "string",
        ServiceEndpointAuthenticationScheme = "string",
        AzurermManagementGroupId = "string",
    });
    
    example, err := azuredevops.NewServiceEndpointAzureRM(ctx, "serviceEndpointAzureRMResource", &azuredevops.ServiceEndpointAzureRMArgs{
    	AzurermSpnTenantid:  pulumi.String("string"),
    	ServiceEndpointName: pulumi.String("string"),
    	ProjectId:           pulumi.String("string"),
    	Credentials: &azuredevops.ServiceEndpointAzureRMCredentialsArgs{
    		Serviceprincipalid:  pulumi.String("string"),
    		Serviceprincipalkey: pulumi.String("string"),
    	},
    	AzurermSubscriptionId:   pulumi.String("string"),
    	AzurermSubscriptionName: pulumi.String("string"),
    	Authorization: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Description: pulumi.String("string"),
    	Environment: pulumi.String("string"),
    	Features: &azuredevops.ServiceEndpointAzureRMFeaturesArgs{
    		Validate: pulumi.Bool(false),
    	},
    	AzurermManagementGroupName:          pulumi.String("string"),
    	ResourceGroup:                       pulumi.String("string"),
    	ServiceEndpointAuthenticationScheme: pulumi.String("string"),
    	AzurermManagementGroupId:            pulumi.String("string"),
    })
    
    var serviceEndpointAzureRMResource = new ServiceEndpointAzureRM("serviceEndpointAzureRMResource", ServiceEndpointAzureRMArgs.builder()
        .azurermSpnTenantid("string")
        .serviceEndpointName("string")
        .projectId("string")
        .credentials(ServiceEndpointAzureRMCredentialsArgs.builder()
            .serviceprincipalid("string")
            .serviceprincipalkey("string")
            .build())
        .azurermSubscriptionId("string")
        .azurermSubscriptionName("string")
        .authorization(Map.of("string", "string"))
        .description("string")
        .environment("string")
        .features(ServiceEndpointAzureRMFeaturesArgs.builder()
            .validate(false)
            .build())
        .azurermManagementGroupName("string")
        .resourceGroup("string")
        .serviceEndpointAuthenticationScheme("string")
        .azurermManagementGroupId("string")
        .build());
    
    service_endpoint_azure_rm_resource = azuredevops.ServiceEndpointAzureRM("serviceEndpointAzureRMResource",
        azurerm_spn_tenantid="string",
        service_endpoint_name="string",
        project_id="string",
        credentials={
            "serviceprincipalid": "string",
            "serviceprincipalkey": "string",
        },
        azurerm_subscription_id="string",
        azurerm_subscription_name="string",
        authorization={
            "string": "string",
        },
        description="string",
        environment="string",
        features={
            "validate": False,
        },
        azurerm_management_group_name="string",
        resource_group="string",
        service_endpoint_authentication_scheme="string",
        azurerm_management_group_id="string")
    
    const serviceEndpointAzureRMResource = new azuredevops.ServiceEndpointAzureRM("serviceEndpointAzureRMResource", {
        azurermSpnTenantid: "string",
        serviceEndpointName: "string",
        projectId: "string",
        credentials: {
            serviceprincipalid: "string",
            serviceprincipalkey: "string",
        },
        azurermSubscriptionId: "string",
        azurermSubscriptionName: "string",
        authorization: {
            string: "string",
        },
        description: "string",
        environment: "string",
        features: {
            validate: false,
        },
        azurermManagementGroupName: "string",
        resourceGroup: "string",
        serviceEndpointAuthenticationScheme: "string",
        azurermManagementGroupId: "string",
    });
    
    type: azuredevops:ServiceEndpointAzureRM
    properties:
        authorization:
            string: string
        azurermManagementGroupId: string
        azurermManagementGroupName: string
        azurermSpnTenantid: string
        azurermSubscriptionId: string
        azurermSubscriptionName: string
        credentials:
            serviceprincipalid: string
            serviceprincipalkey: string
        description: string
        environment: string
        features:
            validate: false
        projectId: string
        resourceGroup: string
        serviceEndpointAuthenticationScheme: string
        serviceEndpointName: string
    

    ServiceEndpointAzureRM Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The ServiceEndpointAzureRM resource accepts the following input properties:

    AzurermSpnTenantid string
    The Tenant ID if the service principal.
    ProjectId string
    The ID of the project.
    ServiceEndpointName string
    The Service Endpoint Name.
    Authorization Dictionary<string, string>
    AzurermManagementGroupId string
    The Management group ID of the Azure targets.
    AzurermManagementGroupName string
    The Management group Name of the targets.
    AzurermSubscriptionId string
    The Subscription ID of the Azure targets.
    AzurermSubscriptionName string
    The Subscription Name of the targets.
    Credentials Pulumi.AzureDevOps.Inputs.ServiceEndpointAzureRMCredentials
    A credentials block.
    Description string
    Service connection description.
    Environment string

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    Features Pulumi.AzureDevOps.Inputs.ServiceEndpointAzureRMFeatures
    A features block.
    ResourceGroup string
    The resource group used for scope of automatic service endpoint.
    ServiceEndpointAuthenticationScheme string

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    AzurermSpnTenantid string
    The Tenant ID if the service principal.
    ProjectId string
    The ID of the project.
    ServiceEndpointName string
    The Service Endpoint Name.
    Authorization map[string]string
    AzurermManagementGroupId string
    The Management group ID of the Azure targets.
    AzurermManagementGroupName string
    The Management group Name of the targets.
    AzurermSubscriptionId string
    The Subscription ID of the Azure targets.
    AzurermSubscriptionName string
    The Subscription Name of the targets.
    Credentials ServiceEndpointAzureRMCredentialsArgs
    A credentials block.
    Description string
    Service connection description.
    Environment string

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    Features ServiceEndpointAzureRMFeaturesArgs
    A features block.
    ResourceGroup string
    The resource group used for scope of automatic service endpoint.
    ServiceEndpointAuthenticationScheme string

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    azurermSpnTenantid String
    The Tenant ID if the service principal.
    projectId String
    The ID of the project.
    serviceEndpointName String
    The Service Endpoint Name.
    authorization Map<String,String>
    azurermManagementGroupId String
    The Management group ID of the Azure targets.
    azurermManagementGroupName String
    The Management group Name of the targets.
    azurermSubscriptionId String
    The Subscription ID of the Azure targets.
    azurermSubscriptionName String
    The Subscription Name of the targets.
    credentials ServiceEndpointAzureRMCredentials
    A credentials block.
    description String
    Service connection description.
    environment String

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    features ServiceEndpointAzureRMFeatures
    A features block.
    resourceGroup String
    The resource group used for scope of automatic service endpoint.
    serviceEndpointAuthenticationScheme String

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    azurermSpnTenantid string
    The Tenant ID if the service principal.
    projectId string
    The ID of the project.
    serviceEndpointName string
    The Service Endpoint Name.
    authorization {[key: string]: string}
    azurermManagementGroupId string
    The Management group ID of the Azure targets.
    azurermManagementGroupName string
    The Management group Name of the targets.
    azurermSubscriptionId string
    The Subscription ID of the Azure targets.
    azurermSubscriptionName string
    The Subscription Name of the targets.
    credentials ServiceEndpointAzureRMCredentials
    A credentials block.
    description string
    Service connection description.
    environment string

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    features ServiceEndpointAzureRMFeatures
    A features block.
    resourceGroup string
    The resource group used for scope of automatic service endpoint.
    serviceEndpointAuthenticationScheme string

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    azurerm_spn_tenantid str
    The Tenant ID if the service principal.
    project_id str
    The ID of the project.
    service_endpoint_name str
    The Service Endpoint Name.
    authorization Mapping[str, str]
    azurerm_management_group_id str
    The Management group ID of the Azure targets.
    azurerm_management_group_name str
    The Management group Name of the targets.
    azurerm_subscription_id str
    The Subscription ID of the Azure targets.
    azurerm_subscription_name str
    The Subscription Name of the targets.
    credentials ServiceEndpointAzureRMCredentialsArgs
    A credentials block.
    description str
    Service connection description.
    environment str

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    features ServiceEndpointAzureRMFeaturesArgs
    A features block.
    resource_group str
    The resource group used for scope of automatic service endpoint.
    service_endpoint_authentication_scheme str

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    azurermSpnTenantid String
    The Tenant ID if the service principal.
    projectId String
    The ID of the project.
    serviceEndpointName String
    The Service Endpoint Name.
    authorization Map<String>
    azurermManagementGroupId String
    The Management group ID of the Azure targets.
    azurermManagementGroupName String
    The Management group Name of the targets.
    azurermSubscriptionId String
    The Subscription ID of the Azure targets.
    azurermSubscriptionName String
    The Subscription Name of the targets.
    credentials Property Map
    A credentials block.
    description String
    Service connection description.
    environment String

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    features Property Map
    A features block.
    resourceGroup String
    The resource group used for scope of automatic service endpoint.
    serviceEndpointAuthenticationScheme String

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ServiceEndpointAzureRM resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    ServicePrincipalId string
    The Application(Client) ID of the Service Principal.
    WorkloadIdentityFederationIssuer string
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    WorkloadIdentityFederationSubject string
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    Id string
    The provider-assigned unique ID for this managed resource.
    ServicePrincipalId string
    The Application(Client) ID of the Service Principal.
    WorkloadIdentityFederationIssuer string
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    WorkloadIdentityFederationSubject string
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    id String
    The provider-assigned unique ID for this managed resource.
    servicePrincipalId String
    The Application(Client) ID of the Service Principal.
    workloadIdentityFederationIssuer String
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    workloadIdentityFederationSubject String
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    id string
    The provider-assigned unique ID for this managed resource.
    servicePrincipalId string
    The Application(Client) ID of the Service Principal.
    workloadIdentityFederationIssuer string
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    workloadIdentityFederationSubject string
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    id str
    The provider-assigned unique ID for this managed resource.
    service_principal_id str
    The Application(Client) ID of the Service Principal.
    workload_identity_federation_issuer str
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    workload_identity_federation_subject str
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    id String
    The provider-assigned unique ID for this managed resource.
    servicePrincipalId String
    The Application(Client) ID of the Service Principal.
    workloadIdentityFederationIssuer String
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    workloadIdentityFederationSubject String
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.

    Look up Existing ServiceEndpointAzureRM Resource

    Get an existing ServiceEndpointAzureRM resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ServiceEndpointAzureRMState, opts?: CustomResourceOptions): ServiceEndpointAzureRM
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            authorization: Optional[Mapping[str, str]] = None,
            azurerm_management_group_id: Optional[str] = None,
            azurerm_management_group_name: Optional[str] = None,
            azurerm_spn_tenantid: Optional[str] = None,
            azurerm_subscription_id: Optional[str] = None,
            azurerm_subscription_name: Optional[str] = None,
            credentials: Optional[ServiceEndpointAzureRMCredentialsArgs] = None,
            description: Optional[str] = None,
            environment: Optional[str] = None,
            features: Optional[ServiceEndpointAzureRMFeaturesArgs] = None,
            project_id: Optional[str] = None,
            resource_group: Optional[str] = None,
            service_endpoint_authentication_scheme: Optional[str] = None,
            service_endpoint_name: Optional[str] = None,
            service_principal_id: Optional[str] = None,
            workload_identity_federation_issuer: Optional[str] = None,
            workload_identity_federation_subject: Optional[str] = None) -> ServiceEndpointAzureRM
    func GetServiceEndpointAzureRM(ctx *Context, name string, id IDInput, state *ServiceEndpointAzureRMState, opts ...ResourceOption) (*ServiceEndpointAzureRM, error)
    public static ServiceEndpointAzureRM Get(string name, Input<string> id, ServiceEndpointAzureRMState? state, CustomResourceOptions? opts = null)
    public static ServiceEndpointAzureRM get(String name, Output<String> id, ServiceEndpointAzureRMState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Authorization Dictionary<string, string>
    AzurermManagementGroupId string
    The Management group ID of the Azure targets.
    AzurermManagementGroupName string
    The Management group Name of the targets.
    AzurermSpnTenantid string
    The Tenant ID if the service principal.
    AzurermSubscriptionId string
    The Subscription ID of the Azure targets.
    AzurermSubscriptionName string
    The Subscription Name of the targets.
    Credentials Pulumi.AzureDevOps.Inputs.ServiceEndpointAzureRMCredentials
    A credentials block.
    Description string
    Service connection description.
    Environment string

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    Features Pulumi.AzureDevOps.Inputs.ServiceEndpointAzureRMFeatures
    A features block.
    ProjectId string
    The ID of the project.
    ResourceGroup string
    The resource group used for scope of automatic service endpoint.
    ServiceEndpointAuthenticationScheme string

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    ServiceEndpointName string
    The Service Endpoint Name.
    ServicePrincipalId string
    The Application(Client) ID of the Service Principal.
    WorkloadIdentityFederationIssuer string
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    WorkloadIdentityFederationSubject string
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    Authorization map[string]string
    AzurermManagementGroupId string
    The Management group ID of the Azure targets.
    AzurermManagementGroupName string
    The Management group Name of the targets.
    AzurermSpnTenantid string
    The Tenant ID if the service principal.
    AzurermSubscriptionId string
    The Subscription ID of the Azure targets.
    AzurermSubscriptionName string
    The Subscription Name of the targets.
    Credentials ServiceEndpointAzureRMCredentialsArgs
    A credentials block.
    Description string
    Service connection description.
    Environment string

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    Features ServiceEndpointAzureRMFeaturesArgs
    A features block.
    ProjectId string
    The ID of the project.
    ResourceGroup string
    The resource group used for scope of automatic service endpoint.
    ServiceEndpointAuthenticationScheme string

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    ServiceEndpointName string
    The Service Endpoint Name.
    ServicePrincipalId string
    The Application(Client) ID of the Service Principal.
    WorkloadIdentityFederationIssuer string
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    WorkloadIdentityFederationSubject string
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    authorization Map<String,String>
    azurermManagementGroupId String
    The Management group ID of the Azure targets.
    azurermManagementGroupName String
    The Management group Name of the targets.
    azurermSpnTenantid String
    The Tenant ID if the service principal.
    azurermSubscriptionId String
    The Subscription ID of the Azure targets.
    azurermSubscriptionName String
    The Subscription Name of the targets.
    credentials ServiceEndpointAzureRMCredentials
    A credentials block.
    description String
    Service connection description.
    environment String

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    features ServiceEndpointAzureRMFeatures
    A features block.
    projectId String
    The ID of the project.
    resourceGroup String
    The resource group used for scope of automatic service endpoint.
    serviceEndpointAuthenticationScheme String

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    serviceEndpointName String
    The Service Endpoint Name.
    servicePrincipalId String
    The Application(Client) ID of the Service Principal.
    workloadIdentityFederationIssuer String
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    workloadIdentityFederationSubject String
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    authorization {[key: string]: string}
    azurermManagementGroupId string
    The Management group ID of the Azure targets.
    azurermManagementGroupName string
    The Management group Name of the targets.
    azurermSpnTenantid string
    The Tenant ID if the service principal.
    azurermSubscriptionId string
    The Subscription ID of the Azure targets.
    azurermSubscriptionName string
    The Subscription Name of the targets.
    credentials ServiceEndpointAzureRMCredentials
    A credentials block.
    description string
    Service connection description.
    environment string

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    features ServiceEndpointAzureRMFeatures
    A features block.
    projectId string
    The ID of the project.
    resourceGroup string
    The resource group used for scope of automatic service endpoint.
    serviceEndpointAuthenticationScheme string

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    serviceEndpointName string
    The Service Endpoint Name.
    servicePrincipalId string
    The Application(Client) ID of the Service Principal.
    workloadIdentityFederationIssuer string
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    workloadIdentityFederationSubject string
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    authorization Mapping[str, str]
    azurerm_management_group_id str
    The Management group ID of the Azure targets.
    azurerm_management_group_name str
    The Management group Name of the targets.
    azurerm_spn_tenantid str
    The Tenant ID if the service principal.
    azurerm_subscription_id str
    The Subscription ID of the Azure targets.
    azurerm_subscription_name str
    The Subscription Name of the targets.
    credentials ServiceEndpointAzureRMCredentialsArgs
    A credentials block.
    description str
    Service connection description.
    environment str

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    features ServiceEndpointAzureRMFeaturesArgs
    A features block.
    project_id str
    The ID of the project.
    resource_group str
    The resource group used for scope of automatic service endpoint.
    service_endpoint_authentication_scheme str

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    service_endpoint_name str
    The Service Endpoint Name.
    service_principal_id str
    The Application(Client) ID of the Service Principal.
    workload_identity_federation_issuer str
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    workload_identity_federation_subject str
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.
    authorization Map<String>
    azurermManagementGroupId String
    The Management group ID of the Azure targets.
    azurermManagementGroupName String
    The Management group Name of the targets.
    azurermSpnTenantid String
    The Tenant ID if the service principal.
    azurermSubscriptionId String
    The Subscription ID of the Azure targets.
    azurermSubscriptionName String
    The Subscription Name of the targets.
    credentials Property Map
    A credentials block.
    description String
    Service connection description.
    environment String

    The Cloud Environment to use. Defaults to AzureCloud. Possible values are AzureCloud, AzureChinaCloud, AzureUSGovernment, and AzureGermanCloud. Changing this forces a new resource to be created.

    NOTE: One of either Subscription scoped i.e. azurerm_subscription_id, azurerm_subscription_name or ManagementGroup scoped i.e. azurerm_management_group_id, azurerm_management_group_name values must be specified.

    features Property Map
    A features block.
    projectId String
    The ID of the project.
    resourceGroup String
    The resource group used for scope of automatic service endpoint.
    serviceEndpointAuthenticationScheme String

    Specifies the type of azurerm endpoint, either WorkloadIdentityFederation, ManagedServiceIdentity or ServicePrincipal. Defaults to ServicePrincipal for backwards compatibility.

    NOTE: The WorkloadIdentityFederation authentication scheme is currently in private preview. Your organisation must be part of the preview and the feature toggle must be turned on to use it. More details can be found here.

    serviceEndpointName String
    The Service Endpoint Name.
    servicePrincipalId String
    The Application(Client) ID of the Service Principal.
    workloadIdentityFederationIssuer String
    The issuer if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000, where the GUID is the Organization ID of your Azure DevOps Organisation.
    workloadIdentityFederationSubject String
    The subject if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation. This looks like sc://<organisation>/<project>/<service-connection-name>.

    Supporting Types

    ServiceEndpointAzureRMCredentials, ServiceEndpointAzureRMCredentialsArgs

    Serviceprincipalid string
    The service principal application Id
    Serviceprincipalkey string
    The service principal secret. This not required if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation.
    Serviceprincipalid string
    The service principal application Id
    Serviceprincipalkey string
    The service principal secret. This not required if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation.
    serviceprincipalid String
    The service principal application Id
    serviceprincipalkey String
    The service principal secret. This not required if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation.
    serviceprincipalid string
    The service principal application Id
    serviceprincipalkey string
    The service principal secret. This not required if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation.
    serviceprincipalid str
    The service principal application Id
    serviceprincipalkey str
    The service principal secret. This not required if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation.
    serviceprincipalid String
    The service principal application Id
    serviceprincipalkey String
    The service principal secret. This not required if service_endpoint_authentication_scheme is set to WorkloadIdentityFederation.

    ServiceEndpointAzureRMFeatures, ServiceEndpointAzureRMFeaturesArgs

    Validate bool
    Whether or not to validate connection with Azure after create or update operations. Defaults to false
    Validate bool
    Whether or not to validate connection with Azure after create or update operations. Defaults to false
    validate Boolean
    Whether or not to validate connection with Azure after create or update operations. Defaults to false
    validate boolean
    Whether or not to validate connection with Azure after create or update operations. Defaults to false
    validate bool
    Whether or not to validate connection with Azure after create or update operations. Defaults to false
    validate Boolean
    Whether or not to validate connection with Azure after create or update operations. Defaults to false

    Import

    Azure DevOps Service Endpoint Azure Resource Manage can be imported using projectID/serviceEndpointID or projectName/serviceEndpointID

    $ pulumi import azuredevops:index/serviceEndpointAzureRM:ServiceEndpointAzureRM example 00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000000
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure DevOps pulumi/pulumi-azuredevops
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azuredevops Terraform Provider.
    azuredevops logo
    Azure DevOps v3.4.0 published on Wednesday, Oct 30, 2024 by Pulumi