1. Packages
  2. Packages
  3. Ibm Provider
  4. API Docs
  5. IamIdp
Viewing docs for ibm 2.5.0
published on Wednesday, Aug 5, 2026 by ibm-cloud
Viewing docs for ibm 2.5.0
published on Wednesday, Aug 5, 2026 by ibm-cloud

    Create, update, and delete an IAM Identity Provider (IdP) with this resource. For more information, see the IAM Identity Services API documentation.

    Example Usage

    Create a SAML Identity Provider

    import * as pulumi from "@pulumi/pulumi";
    import * as ibm from "@pulumi/ibm";
    
    const samlIdp = new ibm.IamIdp("saml_idp", {
        accountId: accountId,
        name: "my-saml-idp",
        type: "saml",
        active: true,
        properties: {
            idp: {
                entityId: "https://idp.example.com/saml/metadata",
                redirectBindingUrl: "https://idp.example.com/saml/sso",
                wantRequestSigned: true,
                logoutUrl: "https://idp.example.com/saml/logout",
            },
            sp: {
                wantAssertionSigned: true,
                wantResponseSigned: true,
                encryptResponse: false,
                idpInitiatedLoginEnabled: false,
                logoutUrlEnabledWhenAvailable: true,
            },
        },
        secrets: {},
    });
    
    import pulumi
    import pulumi_ibm as ibm
    
    saml_idp = ibm.IamIdp("saml_idp",
        account_id=account_id,
        name="my-saml-idp",
        type="saml",
        active=True,
        properties={
            "idp": {
                "entity_id": "https://idp.example.com/saml/metadata",
                "redirect_binding_url": "https://idp.example.com/saml/sso",
                "want_request_signed": True,
                "logout_url": "https://idp.example.com/saml/logout",
            },
            "sp": {
                "want_assertion_signed": True,
                "want_response_signed": True,
                "encrypt_response": False,
                "idp_initiated_login_enabled": False,
                "logout_url_enabled_when_available": True,
            },
        },
        secrets={})
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/ibm/v2/ibm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := ibm.NewIamIdp(ctx, "saml_idp", &ibm.IamIdpArgs{
    			AccountId: pulumi.Any(accountId),
    			Name:      pulumi.String("my-saml-idp"),
    			Type:      pulumi.String("saml"),
    			Active:    pulumi.Bool(true),
    			Properties: &ibm.IamIdpPropertiesArgs{
    				Idp: &ibm.IamIdpPropertiesIdpArgs{
    					EntityId:           pulumi.String("https://idp.example.com/saml/metadata"),
    					RedirectBindingUrl: pulumi.String("https://idp.example.com/saml/sso"),
    					WantRequestSigned:  pulumi.Bool(true),
    					LogoutUrl:          pulumi.String("https://idp.example.com/saml/logout"),
    				},
    				Sp: &ibm.IamIdpPropertiesSpArgs{
    					WantAssertionSigned:           pulumi.Bool(true),
    					WantResponseSigned:            pulumi.Bool(true),
    					EncryptResponse:               pulumi.Bool(false),
    					IdpInitiatedLoginEnabled:      pulumi.Bool(false),
    					LogoutUrlEnabledWhenAvailable: pulumi.Bool(true),
    				},
    			},
    			Secrets: &ibm.IamIdpSecretsArgs{},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ibm = Pulumi.Ibm;
    
    return await Deployment.RunAsync(() => 
    {
        var samlIdp = new Ibm.IamIdp("saml_idp", new()
        {
            AccountId = accountId,
            Name = "my-saml-idp",
            Type = "saml",
            Active = true,
            Properties = new Ibm.Inputs.IamIdpPropertiesArgs
            {
                Idp = new Ibm.Inputs.IamIdpPropertiesIdpArgs
                {
                    EntityId = "https://idp.example.com/saml/metadata",
                    RedirectBindingUrl = "https://idp.example.com/saml/sso",
                    WantRequestSigned = true,
                    LogoutUrl = "https://idp.example.com/saml/logout",
                },
                Sp = new Ibm.Inputs.IamIdpPropertiesSpArgs
                {
                    WantAssertionSigned = true,
                    WantResponseSigned = true,
                    EncryptResponse = false,
                    IdpInitiatedLoginEnabled = false,
                    LogoutUrlEnabledWhenAvailable = true,
                },
            },
            Secrets = null,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ibm.IamIdp;
    import com.pulumi.ibm.IamIdpArgs;
    import com.pulumi.ibm.inputs.IamIdpPropertiesArgs;
    import com.pulumi.ibm.inputs.IamIdpPropertiesIdpArgs;
    import com.pulumi.ibm.inputs.IamIdpPropertiesSpArgs;
    import com.pulumi.ibm.inputs.IamIdpSecretsArgs;
    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 samlIdp = new IamIdp("samlIdp", IamIdpArgs.builder()
                .accountId(accountId)
                .name("my-saml-idp")
                .type("saml")
                .active(true)
                .properties(IamIdpPropertiesArgs.builder()
                    .idp(IamIdpPropertiesIdpArgs.builder()
                        .entityId("https://idp.example.com/saml/metadata")
                        .redirectBindingUrl("https://idp.example.com/saml/sso")
                        .wantRequestSigned(true)
                        .logoutUrl("https://idp.example.com/saml/logout")
                        .build())
                    .sp(IamIdpPropertiesSpArgs.builder()
                        .wantAssertionSigned(true)
                        .wantResponseSigned(true)
                        .encryptResponse(false)
                        .idpInitiatedLoginEnabled(false)
                        .logoutUrlEnabledWhenAvailable(true)
                        .build())
                    .build())
                .secrets(IamIdpSecretsArgs.builder()
                    .build())
                .build());
    
        }
    }
    
    resources:
      samlIdp:
        type: ibm:IamIdp
        name: saml_idp
        properties:
          accountId: ${accountId}
          name: my-saml-idp
          type: saml
          active: true
          properties:
            idp:
              entityId: https://idp.example.com/saml/metadata
              redirectBindingUrl: https://idp.example.com/saml/sso
              wantRequestSigned: true
              logoutUrl: https://idp.example.com/saml/logout
            sp:
              wantAssertionSigned: true
              wantResponseSigned: true
              encryptResponse: false
              idpInitiatedLoginEnabled: false
              logoutUrlEnabledWhenAvailable: true
          secrets: {}
    
    Example coming soon!
    

    Create an IdP and share it with another account

    import * as pulumi from "@pulumi/pulumi";
    import * as ibm from "@pulumi/ibm";
    
    const sharedIdp = new ibm.IamIdp("shared_idp", {
        accountId: accountId,
        name: "shared-saml-idp",
        type: "saml",
        active: true,
        properties: {
            idp: {
                entityId: "https://idp.example.com/saml/metadata",
                redirectBindingUrl: "https://idp.example.com/saml/sso",
            },
        },
        secrets: {},
        shareScopes: [{
            id: consumerAccountId,
            type: "account",
        }],
    });
    
    import pulumi
    import pulumi_ibm as ibm
    
    shared_idp = ibm.IamIdp("shared_idp",
        account_id=account_id,
        name="shared-saml-idp",
        type="saml",
        active=True,
        properties={
            "idp": {
                "entity_id": "https://idp.example.com/saml/metadata",
                "redirect_binding_url": "https://idp.example.com/saml/sso",
            },
        },
        secrets={},
        share_scopes=[{
            "id": consumer_account_id,
            "type": "account",
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/ibm/v2/ibm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := ibm.NewIamIdp(ctx, "shared_idp", &ibm.IamIdpArgs{
    			AccountId: pulumi.Any(accountId),
    			Name:      pulumi.String("shared-saml-idp"),
    			Type:      pulumi.String("saml"),
    			Active:    pulumi.Bool(true),
    			Properties: &ibm.IamIdpPropertiesArgs{
    				Idp: &ibm.IamIdpPropertiesIdpArgs{
    					EntityId:           pulumi.String("https://idp.example.com/saml/metadata"),
    					RedirectBindingUrl: pulumi.String("https://idp.example.com/saml/sso"),
    				},
    			},
    			Secrets: &ibm.IamIdpSecretsArgs{},
    			ShareScopes: ibm.IamIdpShareScopeArray{
    				&ibm.IamIdpShareScopeArgs{
    					Id:   pulumi.Any(consumerAccountId),
    					Type: pulumi.String("account"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ibm = Pulumi.Ibm;
    
    return await Deployment.RunAsync(() => 
    {
        var sharedIdp = new Ibm.IamIdp("shared_idp", new()
        {
            AccountId = accountId,
            Name = "shared-saml-idp",
            Type = "saml",
            Active = true,
            Properties = new Ibm.Inputs.IamIdpPropertiesArgs
            {
                Idp = new Ibm.Inputs.IamIdpPropertiesIdpArgs
                {
                    EntityId = "https://idp.example.com/saml/metadata",
                    RedirectBindingUrl = "https://idp.example.com/saml/sso",
                },
            },
            Secrets = null,
            ShareScopes = new[]
            {
                new Ibm.Inputs.IamIdpShareScopeArgs
                {
                    Id = consumerAccountId,
                    Type = "account",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ibm.IamIdp;
    import com.pulumi.ibm.IamIdpArgs;
    import com.pulumi.ibm.inputs.IamIdpPropertiesArgs;
    import com.pulumi.ibm.inputs.IamIdpPropertiesIdpArgs;
    import com.pulumi.ibm.inputs.IamIdpSecretsArgs;
    import com.pulumi.ibm.inputs.IamIdpShareScopeArgs;
    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 sharedIdp = new IamIdp("sharedIdp", IamIdpArgs.builder()
                .accountId(accountId)
                .name("shared-saml-idp")
                .type("saml")
                .active(true)
                .properties(IamIdpPropertiesArgs.builder()
                    .idp(IamIdpPropertiesIdpArgs.builder()
                        .entityId("https://idp.example.com/saml/metadata")
                        .redirectBindingUrl("https://idp.example.com/saml/sso")
                        .build())
                    .build())
                .secrets(IamIdpSecretsArgs.builder()
                    .build())
                .shareScopes(IamIdpShareScopeArgs.builder()
                    .id(consumerAccountId)
                    .type("account")
                    .build())
                .build());
    
        }
    }
    
    resources:
      sharedIdp:
        type: ibm:IamIdp
        name: shared_idp
        properties:
          accountId: ${accountId}
          name: shared-saml-idp
          type: saml
          active: true
          properties:
            idp:
              entityId: https://idp.example.com/saml/metadata
              redirectBindingUrl: https://idp.example.com/saml/sso
          secrets: {}
          shareScopes:
            - id: ${consumerAccountId}
              type: account
    
    Example coming soon!
    

    Create an IdP and share with an entire enterprise

    import * as pulumi from "@pulumi/pulumi";
    import * as ibm from "@pulumi/ibm";
    
    const enterpriseIdp = new ibm.IamIdp("enterprise_idp", {
        accountId: accountId,
        name: "enterprise-saml-idp",
        type: "saml",
        properties: {
            idp: {
                entityId: "https://idp.example.com/saml/metadata",
                redirectBindingUrl: "https://idp.example.com/saml/sso",
            },
        },
        secrets: {},
        shareScopes: [{
            id: enterpriseId,
            type: "enterprise",
        }],
    });
    
    import pulumi
    import pulumi_ibm as ibm
    
    enterprise_idp = ibm.IamIdp("enterprise_idp",
        account_id=account_id,
        name="enterprise-saml-idp",
        type="saml",
        properties={
            "idp": {
                "entity_id": "https://idp.example.com/saml/metadata",
                "redirect_binding_url": "https://idp.example.com/saml/sso",
            },
        },
        secrets={},
        share_scopes=[{
            "id": enterprise_id,
            "type": "enterprise",
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/ibm/v2/ibm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := ibm.NewIamIdp(ctx, "enterprise_idp", &ibm.IamIdpArgs{
    			AccountId: pulumi.Any(accountId),
    			Name:      pulumi.String("enterprise-saml-idp"),
    			Type:      pulumi.String("saml"),
    			Properties: &ibm.IamIdpPropertiesArgs{
    				Idp: &ibm.IamIdpPropertiesIdpArgs{
    					EntityId:           pulumi.String("https://idp.example.com/saml/metadata"),
    					RedirectBindingUrl: pulumi.String("https://idp.example.com/saml/sso"),
    				},
    			},
    			Secrets: &ibm.IamIdpSecretsArgs{},
    			ShareScopes: ibm.IamIdpShareScopeArray{
    				&ibm.IamIdpShareScopeArgs{
    					Id:   pulumi.Any(enterpriseId),
    					Type: pulumi.String("enterprise"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ibm = Pulumi.Ibm;
    
    return await Deployment.RunAsync(() => 
    {
        var enterpriseIdp = new Ibm.IamIdp("enterprise_idp", new()
        {
            AccountId = accountId,
            Name = "enterprise-saml-idp",
            Type = "saml",
            Properties = new Ibm.Inputs.IamIdpPropertiesArgs
            {
                Idp = new Ibm.Inputs.IamIdpPropertiesIdpArgs
                {
                    EntityId = "https://idp.example.com/saml/metadata",
                    RedirectBindingUrl = "https://idp.example.com/saml/sso",
                },
            },
            Secrets = null,
            ShareScopes = new[]
            {
                new Ibm.Inputs.IamIdpShareScopeArgs
                {
                    Id = enterpriseId,
                    Type = "enterprise",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ibm.IamIdp;
    import com.pulumi.ibm.IamIdpArgs;
    import com.pulumi.ibm.inputs.IamIdpPropertiesArgs;
    import com.pulumi.ibm.inputs.IamIdpPropertiesIdpArgs;
    import com.pulumi.ibm.inputs.IamIdpSecretsArgs;
    import com.pulumi.ibm.inputs.IamIdpShareScopeArgs;
    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 enterpriseIdp = new IamIdp("enterpriseIdp", IamIdpArgs.builder()
                .accountId(accountId)
                .name("enterprise-saml-idp")
                .type("saml")
                .properties(IamIdpPropertiesArgs.builder()
                    .idp(IamIdpPropertiesIdpArgs.builder()
                        .entityId("https://idp.example.com/saml/metadata")
                        .redirectBindingUrl("https://idp.example.com/saml/sso")
                        .build())
                    .build())
                .secrets(IamIdpSecretsArgs.builder()
                    .build())
                .shareScopes(IamIdpShareScopeArgs.builder()
                    .id(enterpriseId)
                    .type("enterprise")
                    .build())
                .build());
    
        }
    }
    
    resources:
      enterpriseIdp:
        type: ibm:IamIdp
        name: enterprise_idp
        properties:
          accountId: ${accountId}
          name: enterprise-saml-idp
          type: saml
          properties:
            idp:
              entityId: https://idp.example.com/saml/metadata
              redirectBindingUrl: https://idp.example.com/saml/sso
          secrets: {}
          shareScopes:
            - id: ${enterpriseId}
              type: enterprise
    
    Example coming soon!
    

    Create IamIdp Resource

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

    Constructor syntax

    new IamIdp(name: string, args: IamIdpArgs, opts?: CustomResourceOptions);
    @overload
    def IamIdp(resource_name: str,
               args: IamIdpArgs,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def IamIdp(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               account_id: Optional[str] = None,
               type: Optional[str] = None,
               active: Optional[bool] = None,
               iam_idp_id: Optional[str] = None,
               name: Optional[str] = None,
               properties: Optional[IamIdpPropertiesArgs] = None,
               secrets: Optional[IamIdpSecretsArgs] = None,
               share_scopes: Optional[Sequence[IamIdpShareScopeArgs]] = None)
    func NewIamIdp(ctx *Context, name string, args IamIdpArgs, opts ...ResourceOption) (*IamIdp, error)
    public IamIdp(string name, IamIdpArgs args, CustomResourceOptions? opts = null)
    public IamIdp(String name, IamIdpArgs args)
    public IamIdp(String name, IamIdpArgs args, CustomResourceOptions options)
    
    type: ibm:IamIdp
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "ibm_iam_idp" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args IamIdpArgs
    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 IamIdpArgs
    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 IamIdpArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args IamIdpArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args IamIdpArgs
    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 iamIdpResource = new Ibm.IamIdp("iamIdpResource", new()
    {
        AccountId = "string",
        Type = "string",
        Active = false,
        IamIdpId = "string",
        Name = "string",
        Properties = new Ibm.Inputs.IamIdpPropertiesArgs
        {
            Idp = new Ibm.Inputs.IamIdpPropertiesIdpArgs
            {
                EntityId = "string",
                LogoutUrl = "string",
                RedirectBindingUrl = "string",
                WantRequestSigned = false,
                XmlImport = false,
            },
            Sp = new Ibm.Inputs.IamIdpPropertiesSpArgs
            {
                EncryptResponse = false,
                IdpInitiatedLoginEnabled = false,
                IdpInitiatedUrls = new[]
                {
                    "string",
                },
                LogoutUrlEnabledWhenAvailable = false,
                WantAssertionSigned = false,
                WantResponseSigned = false,
            },
        },
        Secrets = new Ibm.Inputs.IamIdpSecretsArgs
        {
            Idp = new Ibm.Inputs.IamIdpSecretsIdpArgs
            {
                XmlImport = false,
            },
            Sp = null,
        },
        ShareScopes = new[]
        {
            new Ibm.Inputs.IamIdpShareScopeArgs
            {
                Id = "string",
                Type = "string",
            },
        },
    });
    
    example, err := ibm.NewIamIdp(ctx, "iamIdpResource", &ibm.IamIdpArgs{
    	AccountId: pulumi.String("string"),
    	Type:      pulumi.String("string"),
    	Active:    pulumi.Bool(false),
    	IamIdpId:  pulumi.String("string"),
    	Name:      pulumi.String("string"),
    	Properties: &ibm.IamIdpPropertiesArgs{
    		Idp: &ibm.IamIdpPropertiesIdpArgs{
    			EntityId:           pulumi.String("string"),
    			LogoutUrl:          pulumi.String("string"),
    			RedirectBindingUrl: pulumi.String("string"),
    			WantRequestSigned:  pulumi.Bool(false),
    			XmlImport:          pulumi.Bool(false),
    		},
    		Sp: &ibm.IamIdpPropertiesSpArgs{
    			EncryptResponse:          pulumi.Bool(false),
    			IdpInitiatedLoginEnabled: pulumi.Bool(false),
    			IdpInitiatedUrls: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			LogoutUrlEnabledWhenAvailable: pulumi.Bool(false),
    			WantAssertionSigned:           pulumi.Bool(false),
    			WantResponseSigned:            pulumi.Bool(false),
    		},
    	},
    	Secrets: &ibm.IamIdpSecretsArgs{
    		Idp: &ibm.IamIdpSecretsIdpArgs{
    			XmlImport: pulumi.Bool(false),
    		},
    		Sp: &ibm.IamIdpSecretsSpArgs{},
    	},
    	ShareScopes: ibm.IamIdpShareScopeArray{
    		&ibm.IamIdpShareScopeArgs{
    			Id:   pulumi.String("string"),
    			Type: pulumi.String("string"),
    		},
    	},
    })
    
    resource "ibm_iam_idp" "iamIdpResource" {
      lifecycle {
        create_before_destroy = true
      }
      account_id = "string"
      type       = "string"
      active     = false
      iam_idp_id = "string"
      name       = "string"
      properties = {
        idp = {
          entity_id            = "string"
          logout_url           = "string"
          redirect_binding_url = "string"
          want_request_signed  = false
          xml_import           = false
        }
        sp = {
          encrypt_response                  = false
          idp_initiated_login_enabled       = false
          idp_initiated_urls                = ["string"]
          logout_url_enabled_when_available = false
          want_assertion_signed             = false
          want_response_signed              = false
        }
      }
      secrets = {
        idp = {
          xml_import = false
        }
        sp = {}
      }
      share_scopes {
        id   = "string"
        type = "string"
      }
    }
    
    var iamIdpResource = new IamIdp("iamIdpResource", IamIdpArgs.builder()
        .accountId("string")
        .type("string")
        .active(false)
        .iamIdpId("string")
        .name("string")
        .properties(IamIdpPropertiesArgs.builder()
            .idp(IamIdpPropertiesIdpArgs.builder()
                .entityId("string")
                .logoutUrl("string")
                .redirectBindingUrl("string")
                .wantRequestSigned(false)
                .xmlImport(false)
                .build())
            .sp(IamIdpPropertiesSpArgs.builder()
                .encryptResponse(false)
                .idpInitiatedLoginEnabled(false)
                .idpInitiatedUrls("string")
                .logoutUrlEnabledWhenAvailable(false)
                .wantAssertionSigned(false)
                .wantResponseSigned(false)
                .build())
            .build())
        .secrets(IamIdpSecretsArgs.builder()
            .idp(IamIdpSecretsIdpArgs.builder()
                .xmlImport(false)
                .build())
            .sp(IamIdpSecretsSpArgs.builder()
                .build())
            .build())
        .shareScopes(IamIdpShareScopeArgs.builder()
            .id("string")
            .type("string")
            .build())
        .build());
    
    iam_idp_resource = ibm.IamIdp("iamIdpResource",
        account_id="string",
        type="string",
        active=False,
        iam_idp_id="string",
        name="string",
        properties={
            "idp": {
                "entity_id": "string",
                "logout_url": "string",
                "redirect_binding_url": "string",
                "want_request_signed": False,
                "xml_import": False,
            },
            "sp": {
                "encrypt_response": False,
                "idp_initiated_login_enabled": False,
                "idp_initiated_urls": ["string"],
                "logout_url_enabled_when_available": False,
                "want_assertion_signed": False,
                "want_response_signed": False,
            },
        },
        secrets={
            "idp": {
                "xml_import": False,
            },
            "sp": {},
        },
        share_scopes=[{
            "id": "string",
            "type": "string",
        }])
    
    const iamIdpResource = new ibm.IamIdp("iamIdpResource", {
        accountId: "string",
        type: "string",
        active: false,
        iamIdpId: "string",
        name: "string",
        properties: {
            idp: {
                entityId: "string",
                logoutUrl: "string",
                redirectBindingUrl: "string",
                wantRequestSigned: false,
                xmlImport: false,
            },
            sp: {
                encryptResponse: false,
                idpInitiatedLoginEnabled: false,
                idpInitiatedUrls: ["string"],
                logoutUrlEnabledWhenAvailable: false,
                wantAssertionSigned: false,
                wantResponseSigned: false,
            },
        },
        secrets: {
            idp: {
                xmlImport: false,
            },
            sp: {},
        },
        shareScopes: [{
            id: "string",
            type: "string",
        }],
    });
    
    type: ibm:IamIdp
    properties:
        accountId: string
        active: false
        iamIdpId: string
        name: string
        properties:
            idp:
                entityId: string
                logoutUrl: string
                redirectBindingUrl: string
                wantRequestSigned: false
                xmlImport: false
            sp:
                encryptResponse: false
                idpInitiatedLoginEnabled: false
                idpInitiatedUrls:
                    - string
                logoutUrlEnabledWhenAvailable: false
                wantAssertionSigned: false
                wantResponseSigned: false
        secrets:
            idp:
                xmlImport: false
            sp: {}
        shareScopes:
            - id: string
              type: string
        type: string
    

    IamIdp 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 IamIdp resource accepts the following input properties:

    AccountId string
    Account where the IdP resides. Changing this value creates a new resource.
    Type string
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    Active bool
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    IamIdpId string
    The unique identifier of the IDP (same as idp_id).
    Name string
    Speaking name of the Identity Provider.
    Properties IamIdpProperties
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    Secrets IamIdpSecrets
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    ShareScopes List<IamIdpShareScope>
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    AccountId string
    Account where the IdP resides. Changing this value creates a new resource.
    Type string
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    Active bool
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    IamIdpId string
    The unique identifier of the IDP (same as idp_id).
    Name string
    Speaking name of the Identity Provider.
    Properties IamIdpPropertiesArgs
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    Secrets IamIdpSecretsArgs
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    ShareScopes []IamIdpShareScopeArgs
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    account_id string
    Account where the IdP resides. Changing this value creates a new resource.
    type string
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    active bool
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    iam_idp_id string
    The unique identifier of the IDP (same as idp_id).
    name string
    Speaking name of the Identity Provider.
    properties object
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets object
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    share_scopes list(object)
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    accountId String
    Account where the IdP resides. Changing this value creates a new resource.
    type String
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    active Boolean
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    iamIdpId String
    The unique identifier of the IDP (same as idp_id).
    name String
    Speaking name of the Identity Provider.
    properties IamIdpProperties
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets IamIdpSecrets
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    shareScopes List<IamIdpShareScope>
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    accountId string
    Account where the IdP resides. Changing this value creates a new resource.
    type string
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    active boolean
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    iamIdpId string
    The unique identifier of the IDP (same as idp_id).
    name string
    Speaking name of the Identity Provider.
    properties IamIdpProperties
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets IamIdpSecrets
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    shareScopes IamIdpShareScope[]
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    account_id str
    Account where the IdP resides. Changing this value creates a new resource.
    type str
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    active bool
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    iam_idp_id str
    The unique identifier of the IDP (same as idp_id).
    name str
    Speaking name of the Identity Provider.
    properties IamIdpPropertiesArgs
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets IamIdpSecretsArgs
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    share_scopes Sequence[IamIdpShareScopeArgs]
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    accountId String
    Account where the IdP resides. Changing this value creates a new resource.
    type String
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    active Boolean
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    iamIdpId String
    The unique identifier of the IDP (same as idp_id).
    name String
    Speaking name of the Identity Provider.
    properties Property Map
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets Property Map
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    shareScopes List<Property Map>
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:

    Outputs

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

    CreatedAt string
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    EntityTag string
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    Id string
    The provider-assigned unique ID for this managed resource.
    IdpId string
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    ModifiedAt string
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    CreatedAt string
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    EntityTag string
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    Id string
    The provider-assigned unique ID for this managed resource.
    IdpId string
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    ModifiedAt string
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    created_at string
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entity_tag string
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    id string
    The provider-assigned unique ID for this managed resource.
    idp_id string
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modified_at string
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    createdAt String
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entityTag String
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    id String
    The provider-assigned unique ID for this managed resource.
    idpId String
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modifiedAt String
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    createdAt string
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entityTag string
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    id string
    The provider-assigned unique ID for this managed resource.
    idpId string
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modifiedAt string
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    created_at str
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entity_tag str
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    id str
    The provider-assigned unique ID for this managed resource.
    idp_id str
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modified_at str
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    createdAt String
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entityTag String
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    id String
    The provider-assigned unique ID for this managed resource.
    idpId String
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modifiedAt String
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.

    Look up Existing IamIdp Resource

    Get an existing IamIdp 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?: IamIdpState, opts?: CustomResourceOptions): IamIdp
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            account_id: Optional[str] = None,
            active: Optional[bool] = None,
            created_at: Optional[str] = None,
            entity_tag: Optional[str] = None,
            iam_idp_id: Optional[str] = None,
            idp_id: Optional[str] = None,
            modified_at: Optional[str] = None,
            name: Optional[str] = None,
            properties: Optional[IamIdpPropertiesArgs] = None,
            secrets: Optional[IamIdpSecretsArgs] = None,
            share_scopes: Optional[Sequence[IamIdpShareScopeArgs]] = None,
            type: Optional[str] = None) -> IamIdp
    func GetIamIdp(ctx *Context, name string, id IDInput, state *IamIdpState, opts ...ResourceOption) (*IamIdp, error)
    public static IamIdp Get(string name, Input<string> id, IamIdpState? state, CustomResourceOptions? opts = null)
    public static IamIdp get(String name, Output<String> id, IamIdpState state, CustomResourceOptions options)
    resources:  _:    type: ibm:IamIdp    get:      id: ${id}
    import {
      to = ibm_iam_idp.example
      id = "${id}"
    }
    
    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:
    AccountId string
    Account where the IdP resides. Changing this value creates a new resource.
    Active bool
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    CreatedAt string
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    EntityTag string
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    IamIdpId string
    The unique identifier of the IDP (same as idp_id).
    IdpId string
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    ModifiedAt string
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    Name string
    Speaking name of the Identity Provider.
    Properties IamIdpProperties
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    Secrets IamIdpSecrets
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    ShareScopes List<IamIdpShareScope>
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    Type string
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    AccountId string
    Account where the IdP resides. Changing this value creates a new resource.
    Active bool
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    CreatedAt string
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    EntityTag string
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    IamIdpId string
    The unique identifier of the IDP (same as idp_id).
    IdpId string
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    ModifiedAt string
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    Name string
    Speaking name of the Identity Provider.
    Properties IamIdpPropertiesArgs
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    Secrets IamIdpSecretsArgs
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    ShareScopes []IamIdpShareScopeArgs
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    Type string
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    account_id string
    Account where the IdP resides. Changing this value creates a new resource.
    active bool
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    created_at string
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entity_tag string
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    iam_idp_id string
    The unique identifier of the IDP (same as idp_id).
    idp_id string
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modified_at string
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    name string
    Speaking name of the Identity Provider.
    properties object
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets object
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    share_scopes list(object)
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    type string
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    accountId String
    Account where the IdP resides. Changing this value creates a new resource.
    active Boolean
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    createdAt String
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entityTag String
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    iamIdpId String
    The unique identifier of the IDP (same as idp_id).
    idpId String
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modifiedAt String
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    name String
    Speaking name of the Identity Provider.
    properties IamIdpProperties
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets IamIdpSecrets
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    shareScopes List<IamIdpShareScope>
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    type String
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    accountId string
    Account where the IdP resides. Changing this value creates a new resource.
    active boolean
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    createdAt string
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entityTag string
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    iamIdpId string
    The unique identifier of the IDP (same as idp_id).
    idpId string
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modifiedAt string
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    name string
    Speaking name of the Identity Provider.
    properties IamIdpProperties
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets IamIdpSecrets
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    shareScopes IamIdpShareScope[]
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    type string
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    account_id str
    Account where the IdP resides. Changing this value creates a new resource.
    active bool
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    created_at str
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entity_tag str
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    iam_idp_id str
    The unique identifier of the IDP (same as idp_id).
    idp_id str
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modified_at str
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    name str
    Speaking name of the Identity Provider.
    properties IamIdpPropertiesArgs
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets IamIdpSecretsArgs
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    share_scopes Sequence[IamIdpShareScopeArgs]
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    type str
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.
    accountId String
    Account where the IdP resides. Changing this value creates a new resource.
    active Boolean
    Defines if the IDP is active (enabled) for all accounts, including those that have consumed the IdP. Default during creation is true.
    createdAt String
    (String) Timestamp when the IDP was created, in ISO 8601 format.
    entityTag String
    (String) Version of the IDP. This value is required when updating the IDP to prevent stale writes.
    iamIdpId String
    The unique identifier of the IDP (same as idp_id).
    idpId String
    (String) Unique identifier assigned to the IDP by the IAM Identity Service.
    modifiedAt String
    (String) Timestamp when the IDP was last modified, in ISO 8601 format.
    name String
    Speaking name of the Identity Provider.
    properties Property Map
    Properties of the IDP stored in plain text. Required for SAML type. Maximum of one block. Nested schema for properties:
    secrets Property Map
    Secrets of the IDP stored encrypted. Required for SAML type — use an empty secrets {} block to auto-generate SP certificates. Maximum of one block. Nested schema for secrets:
    shareScopes List<Property Map>
    List of targets that can consume the IdP. Each entry specifies an account or enterprise that is allowed to bind this IdP. Nested schema for share_scope:
    type String
    Type of the IDP. Changing this value creates a new resource.

    • Constraints: Allowed values are saml, appid, ldap.

    Supporting Types

    IamIdpProperties, IamIdpPropertiesArgs

    Idp IamIdpPropertiesIdp
    Identity Provider (SAML IDP) configuration. Maximum of one block. Nested schema for idp:
    Sp IamIdpPropertiesSp
    Service Provider (IBM Cloud SP) configuration. Maximum of one block. Nested schema for sp:
    Idp IamIdpPropertiesIdp
    Identity Provider (SAML IDP) configuration. Maximum of one block. Nested schema for idp:
    Sp IamIdpPropertiesSp
    Service Provider (IBM Cloud SP) configuration. Maximum of one block. Nested schema for sp:
    idp object
    Identity Provider (SAML IDP) configuration. Maximum of one block. Nested schema for idp:
    sp object
    Service Provider (IBM Cloud SP) configuration. Maximum of one block. Nested schema for sp:
    idp IamIdpPropertiesIdp
    Identity Provider (SAML IDP) configuration. Maximum of one block. Nested schema for idp:
    sp IamIdpPropertiesSp
    Service Provider (IBM Cloud SP) configuration. Maximum of one block. Nested schema for sp:
    idp IamIdpPropertiesIdp
    Identity Provider (SAML IDP) configuration. Maximum of one block. Nested schema for idp:
    sp IamIdpPropertiesSp
    Service Provider (IBM Cloud SP) configuration. Maximum of one block. Nested schema for sp:
    idp IamIdpPropertiesIdp
    Identity Provider (SAML IDP) configuration. Maximum of one block. Nested schema for idp:
    sp IamIdpPropertiesSp
    Service Provider (IBM Cloud SP) configuration. Maximum of one block. Nested schema for sp:
    idp Property Map
    Identity Provider (SAML IDP) configuration. Maximum of one block. Nested schema for idp:
    sp Property Map
    Service Provider (IBM Cloud SP) configuration. Maximum of one block. Nested schema for sp:

    IamIdpPropertiesIdp, IamIdpPropertiesIdpArgs

    EntityId string
    SAML IDP entity ID. Required when xml_import is false.
    LogoutUrl string
    SAML IDP single logout URL.
    RedirectBindingUrl string
    SAML redirect binding URL (SSO endpoint). Required when xml_import is false.
    WantRequestSigned bool
    Indicates if the IDP requires authentication requests to be signed.
    XmlImport bool
    Flag indicating if IdP should be imported from a metadata.xml file. When true, entity_id and redirect_binding_url are derived from the imported XML.
    EntityId string
    SAML IDP entity ID. Required when xml_import is false.
    LogoutUrl string
    SAML IDP single logout URL.
    RedirectBindingUrl string
    SAML redirect binding URL (SSO endpoint). Required when xml_import is false.
    WantRequestSigned bool
    Indicates if the IDP requires authentication requests to be signed.
    XmlImport bool
    Flag indicating if IdP should be imported from a metadata.xml file. When true, entity_id and redirect_binding_url are derived from the imported XML.
    entity_id string
    SAML IDP entity ID. Required when xml_import is false.
    logout_url string
    SAML IDP single logout URL.
    redirect_binding_url string
    SAML redirect binding URL (SSO endpoint). Required when xml_import is false.
    want_request_signed bool
    Indicates if the IDP requires authentication requests to be signed.
    xml_import bool
    Flag indicating if IdP should be imported from a metadata.xml file. When true, entity_id and redirect_binding_url are derived from the imported XML.
    entityId String
    SAML IDP entity ID. Required when xml_import is false.
    logoutUrl String
    SAML IDP single logout URL.
    redirectBindingUrl String
    SAML redirect binding URL (SSO endpoint). Required when xml_import is false.
    wantRequestSigned Boolean
    Indicates if the IDP requires authentication requests to be signed.
    xmlImport Boolean
    Flag indicating if IdP should be imported from a metadata.xml file. When true, entity_id and redirect_binding_url are derived from the imported XML.
    entityId string
    SAML IDP entity ID. Required when xml_import is false.
    logoutUrl string
    SAML IDP single logout URL.
    redirectBindingUrl string
    SAML redirect binding URL (SSO endpoint). Required when xml_import is false.
    wantRequestSigned boolean
    Indicates if the IDP requires authentication requests to be signed.
    xmlImport boolean
    Flag indicating if IdP should be imported from a metadata.xml file. When true, entity_id and redirect_binding_url are derived from the imported XML.
    entity_id str
    SAML IDP entity ID. Required when xml_import is false.
    logout_url str
    SAML IDP single logout URL.
    redirect_binding_url str
    SAML redirect binding URL (SSO endpoint). Required when xml_import is false.
    want_request_signed bool
    Indicates if the IDP requires authentication requests to be signed.
    xml_import bool
    Flag indicating if IdP should be imported from a metadata.xml file. When true, entity_id and redirect_binding_url are derived from the imported XML.
    entityId String
    SAML IDP entity ID. Required when xml_import is false.
    logoutUrl String
    SAML IDP single logout URL.
    redirectBindingUrl String
    SAML redirect binding URL (SSO endpoint). Required when xml_import is false.
    wantRequestSigned Boolean
    Indicates if the IDP requires authentication requests to be signed.
    xmlImport Boolean
    Flag indicating if IdP should be imported from a metadata.xml file. When true, entity_id and redirect_binding_url are derived from the imported XML.

    IamIdpPropertiesSp, IamIdpPropertiesSpArgs

    EncryptResponse bool
    Indicates if the SP requires SAML assertions to be encrypted.
    IdpInitiatedLoginEnabled bool
    Enables IdP-initiated login (unsolicited SSO).
    IdpInitiatedUrls List<string>
    Target URLs for IdP-initiated login. Only applicable when idp_initiated_login_enabled is true.
    LogoutUrlEnabledWhenAvailable bool
    Enables the SP to use the IdP logout URL when it is available.
    WantAssertionSigned bool
    Indicates if the SP requires SAML assertions to be signed.
    WantResponseSigned bool
    Indicates if the SP requires SAML responses to be signed.
    EncryptResponse bool
    Indicates if the SP requires SAML assertions to be encrypted.
    IdpInitiatedLoginEnabled bool
    Enables IdP-initiated login (unsolicited SSO).
    IdpInitiatedUrls []string
    Target URLs for IdP-initiated login. Only applicable when idp_initiated_login_enabled is true.
    LogoutUrlEnabledWhenAvailable bool
    Enables the SP to use the IdP logout URL when it is available.
    WantAssertionSigned bool
    Indicates if the SP requires SAML assertions to be signed.
    WantResponseSigned bool
    Indicates if the SP requires SAML responses to be signed.
    encrypt_response bool
    Indicates if the SP requires SAML assertions to be encrypted.
    idp_initiated_login_enabled bool
    Enables IdP-initiated login (unsolicited SSO).
    idp_initiated_urls list(string)
    Target URLs for IdP-initiated login. Only applicable when idp_initiated_login_enabled is true.
    logout_url_enabled_when_available bool
    Enables the SP to use the IdP logout URL when it is available.
    want_assertion_signed bool
    Indicates if the SP requires SAML assertions to be signed.
    want_response_signed bool
    Indicates if the SP requires SAML responses to be signed.
    encryptResponse Boolean
    Indicates if the SP requires SAML assertions to be encrypted.
    idpInitiatedLoginEnabled Boolean
    Enables IdP-initiated login (unsolicited SSO).
    idpInitiatedUrls List<String>
    Target URLs for IdP-initiated login. Only applicable when idp_initiated_login_enabled is true.
    logoutUrlEnabledWhenAvailable Boolean
    Enables the SP to use the IdP logout URL when it is available.
    wantAssertionSigned Boolean
    Indicates if the SP requires SAML assertions to be signed.
    wantResponseSigned Boolean
    Indicates if the SP requires SAML responses to be signed.
    encryptResponse boolean
    Indicates if the SP requires SAML assertions to be encrypted.
    idpInitiatedLoginEnabled boolean
    Enables IdP-initiated login (unsolicited SSO).
    idpInitiatedUrls string[]
    Target URLs for IdP-initiated login. Only applicable when idp_initiated_login_enabled is true.
    logoutUrlEnabledWhenAvailable boolean
    Enables the SP to use the IdP logout URL when it is available.
    wantAssertionSigned boolean
    Indicates if the SP requires SAML assertions to be signed.
    wantResponseSigned boolean
    Indicates if the SP requires SAML responses to be signed.
    encrypt_response bool
    Indicates if the SP requires SAML assertions to be encrypted.
    idp_initiated_login_enabled bool
    Enables IdP-initiated login (unsolicited SSO).
    idp_initiated_urls Sequence[str]
    Target URLs for IdP-initiated login. Only applicable when idp_initiated_login_enabled is true.
    logout_url_enabled_when_available bool
    Enables the SP to use the IdP logout URL when it is available.
    want_assertion_signed bool
    Indicates if the SP requires SAML assertions to be signed.
    want_response_signed bool
    Indicates if the SP requires SAML responses to be signed.
    encryptResponse Boolean
    Indicates if the SP requires SAML assertions to be encrypted.
    idpInitiatedLoginEnabled Boolean
    Enables IdP-initiated login (unsolicited SSO).
    idpInitiatedUrls List<String>
    Target URLs for IdP-initiated login. Only applicable when idp_initiated_login_enabled is true.
    logoutUrlEnabledWhenAvailable Boolean
    Enables the SP to use the IdP logout URL when it is available.
    wantAssertionSigned Boolean
    Indicates if the SP requires SAML assertions to be signed.
    wantResponseSigned Boolean
    Indicates if the SP requires SAML responses to be signed.

    IamIdpSecrets, IamIdpSecretsArgs

    Idp IamIdpSecretsIdp
    Identity Provider secrets. Maximum of one block. Nested schema for idp:
    Sp IamIdpSecretsSp
    Service Provider secrets. Leave empty to have IBM Cloud auto-generate SP signing certificates. Maximum of one block.
    Idp IamIdpSecretsIdp
    Identity Provider secrets. Maximum of one block. Nested schema for idp:
    Sp IamIdpSecretsSp
    Service Provider secrets. Leave empty to have IBM Cloud auto-generate SP signing certificates. Maximum of one block.
    idp object
    Identity Provider secrets. Maximum of one block. Nested schema for idp:
    sp object
    Service Provider secrets. Leave empty to have IBM Cloud auto-generate SP signing certificates. Maximum of one block.
    idp IamIdpSecretsIdp
    Identity Provider secrets. Maximum of one block. Nested schema for idp:
    sp IamIdpSecretsSp
    Service Provider secrets. Leave empty to have IBM Cloud auto-generate SP signing certificates. Maximum of one block.
    idp IamIdpSecretsIdp
    Identity Provider secrets. Maximum of one block. Nested schema for idp:
    sp IamIdpSecretsSp
    Service Provider secrets. Leave empty to have IBM Cloud auto-generate SP signing certificates. Maximum of one block.
    idp IamIdpSecretsIdp
    Identity Provider secrets. Maximum of one block. Nested schema for idp:
    sp IamIdpSecretsSp
    Service Provider secrets. Leave empty to have IBM Cloud auto-generate SP signing certificates. Maximum of one block.
    idp Property Map
    Identity Provider secrets. Maximum of one block. Nested schema for idp:
    sp Property Map
    Service Provider secrets. Leave empty to have IBM Cloud auto-generate SP signing certificates. Maximum of one block.

    IamIdpSecretsIdp, IamIdpSecretsIdpArgs

    XmlImport bool
    Flag indicating if secrets should be imported from a metadata.xml file.
    XmlImport bool
    Flag indicating if secrets should be imported from a metadata.xml file.
    xml_import bool
    Flag indicating if secrets should be imported from a metadata.xml file.
    xmlImport Boolean
    Flag indicating if secrets should be imported from a metadata.xml file.
    xmlImport boolean
    Flag indicating if secrets should be imported from a metadata.xml file.
    xml_import bool
    Flag indicating if secrets should be imported from a metadata.xml file.
    xmlImport Boolean
    Flag indicating if secrets should be imported from a metadata.xml file.

    IamIdpShareScope, IamIdpShareScopeArgs

    Id string
    ID of the account or enterprise to share with.
    Type string
    Type of the share target. Allowed values are account, enterprise.
    Id string
    ID of the account or enterprise to share with.
    Type string
    Type of the share target. Allowed values are account, enterprise.
    id string
    ID of the account or enterprise to share with.
    type string
    Type of the share target. Allowed values are account, enterprise.
    id String
    ID of the account or enterprise to share with.
    type String
    Type of the share target. Allowed values are account, enterprise.
    id string
    ID of the account or enterprise to share with.
    type string
    Type of the share target. Allowed values are account, enterprise.
    id str
    ID of the account or enterprise to share with.
    type str
    Type of the share target. Allowed values are account, enterprise.
    id String
    ID of the account or enterprise to share with.
    type String
    Type of the share target. Allowed values are account, enterprise.

    Import

    You can import the ibm_iam_idp resource by using idp_id.

    Syntax

    
    ```sh
    $ pulumi import ibm:index/iamIdp:IamIdp my_idp <idp_id>
    ```
    
    

    Example

    
    ```sh
    $ pulumi import ibm:index/iamIdp:IamIdp my_idp a1b2c3d4-e5f6-7890-abcd-ef1234567890
    ```
    
    

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

    Package Details

    Repository
    ibm ibm-cloud/terraform-provider-ibm
    License
    Notes
    This Pulumi package is based on the ibm Terraform Provider.
    Viewing docs for ibm 2.5.0
    published on Wednesday, Aug 5, 2026 by ibm-cloud

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial