1. Packages
  2. Packages
  3. Bytepluscc Provider
  4. API Docs
  5. id
  6. Oauth2CredentialProvider
Viewing docs for bytepluscc v0.0.42
published on Monday, Jul 20, 2026 by Byteplus
bytepluscc logo
Viewing docs for bytepluscc v0.0.42
published on Monday, Jul 20, 2026 by Byteplus

    OAuth2 credential provider stores OAuth2 client information, discovery information, and default token request parameters for ID service workload pools to obtain external OAuth2 credentials

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as bytepluscc from "@byteplus/pulumi-bytepluscc";
    
    const example = new bytepluscc.id.Oauth2CredentialProvider("Example", {
        config: {
            client_id: "ClientId",
            client_secret: "ClientSecret",
            custom_parameters: {
                entries: [
                    {
                        key: "k1",
                        value: "v1",
                    },
                    {
                        key: "k2",
                        value: "v2",
                    },
                ],
            },
            flow: "USER_FEDERATION",
            force_authentication: false,
            max_expires: 3600,
            metadata: "test for metadata",
            oauth_2_discovery: {
                authorizationServerMetadata: {
                    authorizationEndpoint: "http://abc.login.com",
                    codeChallengeMethodsSupported: ["S256"],
                    issuer: "http://abc.user.com",
                    registrationEndpoint: "http://abc.com/register",
                    responseTypes: [
                        "code",
                        "token",
                        "id_token",
                        "code id_token",
                    ],
                    tokenEndpoint: "http://abc.token.com",
                },
            },
            redirect_url: "http://abc.callback.com",
            scopes: ["openid"],
        },
        name: "ccapi-dx-1",
        poolName: "default",
        projectName: "default",
        vendor: 0,
    });
    
    import pulumi
    import pulumi_bytepluscc as bytepluscc
    
    example = bytepluscc.id.Oauth2CredentialProvider("Example",
        config={
            "client_id": "ClientId",
            "client_secret": "ClientSecret",
            "custom_parameters": {
                "entries": [
                    {
                        "key": "k1",
                        "value": "v1",
                    },
                    {
                        "key": "k2",
                        "value": "v2",
                    },
                ],
            },
            "flow": "USER_FEDERATION",
            "force_authentication": False,
            "max_expires": 3600,
            "metadata": "test for metadata",
            "oauth_2_discovery": {
                "authorizationServerMetadata": {
                    "authorizationEndpoint": "http://abc.login.com",
                    "codeChallengeMethodsSupported": ["S256"],
                    "issuer": "http://abc.user.com",
                    "registrationEndpoint": "http://abc.com/register",
                    "responseTypes": [
                        "code",
                        "token",
                        "id_token",
                        "code id_token",
                    ],
                    "tokenEndpoint": "http://abc.token.com",
                },
            },
            "redirect_url": "http://abc.callback.com",
            "scopes": ["openid"],
        },
        name="ccapi-dx-1",
        pool_name="default",
        project_name="default",
        vendor=0)
    
    package main
    
    import (
    	"github.com/byteplus-sdk/pulumi-bytepluscc/sdk/go/bytepluscc/id"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := id.NewOauth2CredentialProvider(ctx, "Example", &id.Oauth2CredentialProviderArgs{
    			Config: &id.Oauth2CredentialProviderConfigArgs{
    				Client_id:     "ClientId",
    				Client_secret: "ClientSecret",
    				Custom_parameters: map[string]interface{}{
    					"entries": []map[string]interface{}{
    						map[string]interface{}{
    							"key":   "k1",
    							"value": "v1",
    						},
    						map[string]interface{}{
    							"key":   "k2",
    							"value": "v2",
    						},
    					},
    				},
    				Flow:                 pulumi.String("USER_FEDERATION"),
    				Force_authentication: false,
    				Max_expires:          3600,
    				Metadata:             pulumi.String("test for metadata"),
    				Oauth_2_discovery: map[string]interface{}{
    					"authorizationServerMetadata": map[string]interface{}{
    						"authorizationEndpoint": "http://abc.login.com",
    						"codeChallengeMethodsSupported": []string{
    							"S256",
    						},
    						"issuer":               "http://abc.user.com",
    						"registrationEndpoint": "http://abc.com/register",
    						"responseTypes": []string{
    							"code",
    							"token",
    							"id_token",
    							"code id_token",
    						},
    						"tokenEndpoint": "http://abc.token.com",
    					},
    				},
    				Redirect_url: "http://abc.callback.com",
    				Scopes: pulumi.StringArray{
    					pulumi.String("openid"),
    				},
    			},
    			Name:        pulumi.String("ccapi-dx-1"),
    			PoolName:    pulumi.String("default"),
    			ProjectName: pulumi.String("default"),
    			Vendor:      pulumi.Int(0),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Bytepluscc = Byteplus.Pulumi.Bytepluscc;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Bytepluscc.Id.Oauth2CredentialProvider("Example", new()
        {
            Config = new Bytepluscc.Id.Inputs.Oauth2CredentialProviderConfigArgs
            {
                Client_id = "ClientId",
                Client_secret = "ClientSecret",
                Custom_parameters = 
                {
                    { "entries", new[]
                    {
                        
                        {
                            { "key", "k1" },
                            { "value", "v1" },
                        },
                        
                        {
                            { "key", "k2" },
                            { "value", "v2" },
                        },
                    } },
                },
                Flow = "USER_FEDERATION",
                Force_authentication = false,
                Max_expires = 3600,
                Metadata = "test for metadata",
                Oauth_2_discovery = 
                {
                    { "authorizationServerMetadata", 
                    {
                        { "authorizationEndpoint", "http://abc.login.com" },
                        { "codeChallengeMethodsSupported", new[]
                        {
                            "S256",
                        } },
                        { "issuer", "http://abc.user.com" },
                        { "registrationEndpoint", "http://abc.com/register" },
                        { "responseTypes", new[]
                        {
                            "code",
                            "token",
                            "id_token",
                            "code id_token",
                        } },
                        { "tokenEndpoint", "http://abc.token.com" },
                    } },
                },
                Redirect_url = "http://abc.callback.com",
                Scopes = new[]
                {
                    "openid",
                },
            },
            Name = "ccapi-dx-1",
            PoolName = "default",
            ProjectName = "default",
            Vendor = 0,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.byteplus.bytepluscc.id.Oauth2CredentialProvider;
    import com.byteplus.bytepluscc.id.Oauth2CredentialProviderArgs;
    import com.pulumi.bytepluscc.id.inputs.Oauth2CredentialProviderConfigArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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 Oauth2CredentialProvider("example", Oauth2CredentialProviderArgs.builder()
                .config(Oauth2CredentialProviderConfigArgs.builder()
                    .client_id("ClientId")
                    .client_secret("ClientSecret")
                    .custom_parameters(Map.of("entries", Arrays.asList(                
                        Map.ofEntries(
                            Map.entry("key", "k1"),
                            Map.entry("value", "v1")
                        ),
                        Map.ofEntries(
                            Map.entry("key", "k2"),
                            Map.entry("value", "v2")
                        ))))
                    .flow("USER_FEDERATION")
                    .force_authentication(false)
                    .max_expires(3600)
                    .metadata("test for metadata")
                    .oauth_2_discovery(Map.of("authorizationServerMetadata", Map.ofEntries(
                        Map.entry("authorizationEndpoint", "http://abc.login.com"),
                        Map.entry("codeChallengeMethodsSupported", Arrays.asList("S256")),
                        Map.entry("issuer", "http://abc.user.com"),
                        Map.entry("registrationEndpoint", "http://abc.com/register"),
                        Map.entry("responseTypes", Arrays.asList(                    
                            "code",
                            "token",
                            "id_token",
                            "code id_token")),
                        Map.entry("tokenEndpoint", "http://abc.token.com")
                    )))
                    .redirect_url("http://abc.callback.com")
                    .scopes("openid")
                    .build())
                .name("ccapi-dx-1")
                .poolName("default")
                .projectName("default")
                .vendor(0)
                .build());
    
        }
    }
    
    resources:
      example:
        type: bytepluscc:id:Oauth2CredentialProvider
        name: Example
        properties:
          config:
            client_id: ClientId
            client_secret: ClientSecret
            custom_parameters:
              entries:
                - key: k1
                  value: v1
                - key: k2
                  value: v2
            flow: USER_FEDERATION
            force_authentication: false
            max_expires: 3600
            metadata: test for metadata
            oauth_2_discovery:
              authorizationServerMetadata:
                authorizationEndpoint: http://abc.login.com
                codeChallengeMethodsSupported:
                  - S256
                issuer: http://abc.user.com
                registrationEndpoint: http://abc.com/register
                responseTypes:
                  - code
                  - token
                  - id_token
                  - code id_token
                tokenEndpoint: http://abc.token.com
            redirect_url: http://abc.callback.com
            scopes:
              - openid
          name: ccapi-dx-1
          poolName: default
          projectName: default
          vendor: 0
    
    pulumi {
      required_providers {
        bytepluscc = {
          source = "pulumi/bytepluscc"
        }
      }
    }
    
    resource "bytepluscc_id_oauth2credentialprovider" "Example" {
      config = {
        client_id     = "ClientId"
        client_secret = "ClientSecret"
        custom_parameters = {
          "entries" = [{
            "key"   = "k1"
            "value" = "v1"
            }, {
            "key"   = "k2"
            "value" = "v2"
          }]
        }
        flow                 = "USER_FEDERATION"
        force_authentication = false
        max_expires          = 3600
        metadata             = "test for metadata"
        oauth_2_discovery = {
          "authorizationServerMetadata" = {
            "authorizationEndpoint"         = "http://abc.login.com"
            "codeChallengeMethodsSupported" = ["S256"]
            "issuer"                        = "http://abc.user.com"
            "registrationEndpoint"          = "http://abc.com/register"
            "responseTypes"                 = ["code", "token", "id_token", "code id_token"]
            "tokenEndpoint"                 = "http://abc.token.com"
          }
        }
        redirect_url = "http://abc.callback.com"
        scopes       = ["openid"]
      }
      name         = "ccapi-dx-1"
      pool_name    = "default"
      project_name = "default"
      vendor       = 0
    }
    

    Create Oauth2CredentialProvider Resource

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

    Constructor syntax

    new Oauth2CredentialProvider(name: string, args: Oauth2CredentialProviderArgs, opts?: CustomResourceOptions);
    @overload
    def Oauth2CredentialProvider(resource_name: str,
                                 args: Oauth2CredentialProviderArgs,
                                 opts: Optional[ResourceOptions] = None)
    
    @overload
    def Oauth2CredentialProvider(resource_name: str,
                                 opts: Optional[ResourceOptions] = None,
                                 config: Optional[Oauth2CredentialProviderConfigArgs] = None,
                                 name: Optional[str] = None,
                                 vendor: Optional[int] = None,
                                 pool_name: Optional[str] = None,
                                 project_name: Optional[str] = None)
    func NewOauth2CredentialProvider(ctx *Context, name string, args Oauth2CredentialProviderArgs, opts ...ResourceOption) (*Oauth2CredentialProvider, error)
    public Oauth2CredentialProvider(string name, Oauth2CredentialProviderArgs args, CustomResourceOptions? opts = null)
    public Oauth2CredentialProvider(String name, Oauth2CredentialProviderArgs args)
    public Oauth2CredentialProvider(String name, Oauth2CredentialProviderArgs args, CustomResourceOptions options)
    
    type: bytepluscc:id:Oauth2CredentialProvider
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "bytepluscc_id_oauth2_credential_provider" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args Oauth2CredentialProviderArgs
    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 Oauth2CredentialProviderArgs
    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 Oauth2CredentialProviderArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args Oauth2CredentialProviderArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args Oauth2CredentialProviderArgs
    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 oauth2CredentialProviderResource = new Bytepluscc.Id.Oauth2CredentialProvider("oauth2CredentialProviderResource", new()
    {
        Config = new Bytepluscc.Id.Inputs.Oauth2CredentialProviderConfigArgs
        {
            ClientId = "string",
            ClientSecret = "string",
            CustomParameters = new Bytepluscc.Id.Inputs.Oauth2CredentialProviderConfigCustomParametersArgs
            {
                Entries = new[]
                {
                    new Bytepluscc.Id.Inputs.Oauth2CredentialProviderConfigCustomParametersEntryArgs
                    {
                        Key = "string",
                        Value = "string",
                    },
                },
            },
            Flow = "string",
            ForceAuthentication = false,
            MaxExpires = 0,
            Metadata = "string",
            Oauth2Discovery = new Bytepluscc.Id.Inputs.Oauth2CredentialProviderConfigOauth2DiscoveryArgs
            {
                AuthorizationServerMetadata = new Bytepluscc.Id.Inputs.Oauth2CredentialProviderConfigOauth2DiscoveryAuthorizationServerMetadataArgs
                {
                    AuthorizationEndpoint = "string",
                    CodeChallengeMethodsSupporteds = new[]
                    {
                        "string",
                    },
                    Issuer = "string",
                    RegistrationEndpoint = "string",
                    ResponseTypes = new[]
                    {
                        "string",
                    },
                    RevocationEndpoint = "string",
                    TokenEndpoint = "string",
                },
                DiscoveryUrl = "string",
            },
            RedirectUrl = "string",
            Scopes = new[]
            {
                "string",
            },
            SecretStorage = new Bytepluscc.Id.Inputs.Oauth2CredentialProviderConfigSecretStorageArgs
            {
                EncryptionKey = "string",
                StorageType = 0,
            },
        },
        Name = "string",
        Vendor = 0,
        PoolName = "string",
        ProjectName = "string",
    });
    
    example, err := id.NewOauth2CredentialProvider(ctx, "oauth2CredentialProviderResource", &id.Oauth2CredentialProviderArgs{
    	Config: &id.Oauth2CredentialProviderConfigArgs{
    		ClientId:     pulumi.String("string"),
    		ClientSecret: pulumi.String("string"),
    		CustomParameters: &id.Oauth2CredentialProviderConfigCustomParametersArgs{
    			Entries: id.Oauth2CredentialProviderConfigCustomParametersEntryArray{
    				&id.Oauth2CredentialProviderConfigCustomParametersEntryArgs{
    					Key:   pulumi.String("string"),
    					Value: pulumi.String("string"),
    				},
    			},
    		},
    		Flow:                pulumi.String("string"),
    		ForceAuthentication: pulumi.Bool(false),
    		MaxExpires:          pulumi.Int(0),
    		Metadata:            pulumi.String("string"),
    		Oauth2Discovery: &id.Oauth2CredentialProviderConfigOauth2DiscoveryArgs{
    			AuthorizationServerMetadata: &id.Oauth2CredentialProviderConfigOauth2DiscoveryAuthorizationServerMetadataArgs{
    				AuthorizationEndpoint: pulumi.String("string"),
    				CodeChallengeMethodsSupporteds: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Issuer:               pulumi.String("string"),
    				RegistrationEndpoint: pulumi.String("string"),
    				ResponseTypes: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				RevocationEndpoint: pulumi.String("string"),
    				TokenEndpoint:      pulumi.String("string"),
    			},
    			DiscoveryUrl: pulumi.String("string"),
    		},
    		RedirectUrl: pulumi.String("string"),
    		Scopes: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		SecretStorage: &id.Oauth2CredentialProviderConfigSecretStorageArgs{
    			EncryptionKey: pulumi.String("string"),
    			StorageType:   pulumi.Int(0),
    		},
    	},
    	Name:        pulumi.String("string"),
    	Vendor:      pulumi.Int(0),
    	PoolName:    pulumi.String("string"),
    	ProjectName: pulumi.String("string"),
    })
    
    resource "bytepluscc_id_oauth2_credential_provider" "oauth2CredentialProviderResource" {
      lifecycle {
        create_before_destroy = true
      }
      config = {
        client_id     = "string"
        client_secret = "string"
        custom_parameters = {
          entries = [{
            key   = "string"
            value = "string"
          }]
        }
        flow                 = "string"
        force_authentication = false
        max_expires          = 0
        metadata             = "string"
        oauth2_discovery = {
          authorization_server_metadata = {
            authorization_endpoint            = "string"
            code_challenge_methods_supporteds = ["string"]
            issuer                            = "string"
            registration_endpoint             = "string"
            response_types                    = ["string"]
            revocation_endpoint               = "string"
            token_endpoint                    = "string"
          }
          discovery_url = "string"
        }
        redirect_url = "string"
        scopes       = ["string"]
        secret_storage = {
          encryption_key = "string"
          storage_type   = 0
        }
      }
      name         = "string"
      vendor       = 0
      pool_name    = "string"
      project_name = "string"
    }
    
    var oauth2CredentialProviderResource = new Oauth2CredentialProvider("oauth2CredentialProviderResource", Oauth2CredentialProviderArgs.builder()
        .config(Oauth2CredentialProviderConfigArgs.builder()
            .clientId("string")
            .clientSecret("string")
            .customParameters(Oauth2CredentialProviderConfigCustomParametersArgs.builder()
                .entries(Oauth2CredentialProviderConfigCustomParametersEntryArgs.builder()
                    .key("string")
                    .value("string")
                    .build())
                .build())
            .flow("string")
            .forceAuthentication(false)
            .maxExpires(0)
            .metadata("string")
            .oauth2Discovery(Oauth2CredentialProviderConfigOauth2DiscoveryArgs.builder()
                .authorizationServerMetadata(Oauth2CredentialProviderConfigOauth2DiscoveryAuthorizationServerMetadataArgs.builder()
                    .authorizationEndpoint("string")
                    .codeChallengeMethodsSupporteds("string")
                    .issuer("string")
                    .registrationEndpoint("string")
                    .responseTypes("string")
                    .revocationEndpoint("string")
                    .tokenEndpoint("string")
                    .build())
                .discoveryUrl("string")
                .build())
            .redirectUrl("string")
            .scopes("string")
            .secretStorage(Oauth2CredentialProviderConfigSecretStorageArgs.builder()
                .encryptionKey("string")
                .storageType(0)
                .build())
            .build())
        .name("string")
        .vendor(0)
        .poolName("string")
        .projectName("string")
        .build());
    
    oauth2_credential_provider_resource = bytepluscc.id.Oauth2CredentialProvider("oauth2CredentialProviderResource",
        config={
            "client_id": "string",
            "client_secret": "string",
            "custom_parameters": {
                "entries": [{
                    "key": "string",
                    "value": "string",
                }],
            },
            "flow": "string",
            "force_authentication": False,
            "max_expires": 0,
            "metadata": "string",
            "oauth2_discovery": {
                "authorization_server_metadata": {
                    "authorization_endpoint": "string",
                    "code_challenge_methods_supporteds": ["string"],
                    "issuer": "string",
                    "registration_endpoint": "string",
                    "response_types": ["string"],
                    "revocation_endpoint": "string",
                    "token_endpoint": "string",
                },
                "discovery_url": "string",
            },
            "redirect_url": "string",
            "scopes": ["string"],
            "secret_storage": {
                "encryption_key": "string",
                "storage_type": 0,
            },
        },
        name="string",
        vendor=0,
        pool_name="string",
        project_name="string")
    
    const oauth2CredentialProviderResource = new bytepluscc.id.Oauth2CredentialProvider("oauth2CredentialProviderResource", {
        config: {
            clientId: "string",
            clientSecret: "string",
            customParameters: {
                entries: [{
                    key: "string",
                    value: "string",
                }],
            },
            flow: "string",
            forceAuthentication: false,
            maxExpires: 0,
            metadata: "string",
            oauth2Discovery: {
                authorizationServerMetadata: {
                    authorizationEndpoint: "string",
                    codeChallengeMethodsSupporteds: ["string"],
                    issuer: "string",
                    registrationEndpoint: "string",
                    responseTypes: ["string"],
                    revocationEndpoint: "string",
                    tokenEndpoint: "string",
                },
                discoveryUrl: "string",
            },
            redirectUrl: "string",
            scopes: ["string"],
            secretStorage: {
                encryptionKey: "string",
                storageType: 0,
            },
        },
        name: "string",
        vendor: 0,
        poolName: "string",
        projectName: "string",
    });
    
    type: bytepluscc:id:Oauth2CredentialProvider
    properties:
        config:
            clientId: string
            clientSecret: string
            customParameters:
                entries:
                    - key: string
                      value: string
            flow: string
            forceAuthentication: false
            maxExpires: 0
            metadata: string
            oauth2Discovery:
                authorizationServerMetadata:
                    authorizationEndpoint: string
                    codeChallengeMethodsSupporteds:
                        - string
                    issuer: string
                    registrationEndpoint: string
                    responseTypes:
                        - string
                    revocationEndpoint: string
                    tokenEndpoint: string
                discoveryUrl: string
            redirectUrl: string
            scopes:
                - string
            secretStorage:
                encryptionKey: string
                storageType: 0
        name: string
        poolName: string
        projectName: string
        vendor: 0
    

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

    Config Byteplus.Oauth2CredentialProviderConfig
    OAuth2 configuration
    Name string
    Name
    Vendor int
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    PoolName string
    Workload pool name
    ProjectName string
    Project name
    Config Oauth2CredentialProviderConfigArgs
    OAuth2 configuration
    Name string
    Name
    Vendor int
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    PoolName string
    Workload pool name
    ProjectName string
    Project name
    config object
    OAuth2 configuration
    name string
    Name
    vendor number
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    pool_name string
    Workload pool name
    project_name string
    Project name
    config Oauth2CredentialProverConfig
    OAuth2 configuration
    name String
    Name
    vendor Integer
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    poolName String
    Workload pool name
    projectName String
    Project name
    config Oauth2CredentialProviderConfig
    OAuth2 configuration
    name string
    Name
    vendor number
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    poolName string
    Workload pool name
    projectName string
    Project name
    config Oauth2CredentialProviderConfigArgs
    OAuth2 configuration
    name str
    Name
    vendor int
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    pool_name str
    Workload pool name
    project_name str
    Project name
    config Property Map
    OAuth2 configuration
    name String
    Name
    vendor Number
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    poolName String
    Workload pool name
    projectName String
    Project name

    Outputs

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

    CreatedAt string
    Creation time
    CredentialProviderTrn string
    Credential provider TRN
    Id string
    The provider-assigned unique ID for this managed resource.
    SecretTrn string
    Secret TRN corresponding to credential ciphertext
    UpdatedAt string
    Update time
    CreatedAt string
    Creation time
    CredentialProviderTrn string
    Credential provider TRN
    Id string
    The provider-assigned unique ID for this managed resource.
    SecretTrn string
    Secret TRN corresponding to credential ciphertext
    UpdatedAt string
    Update time
    created_at string
    Creation time
    credential_provider_trn string
    Credential provider TRN
    id string
    The provider-assigned unique ID for this managed resource.
    secret_trn string
    Secret TRN corresponding to credential ciphertext
    updated_at string
    Update time
    createdAt String
    Creation time
    credentialProviderTrn String
    Credential provider TRN
    id String
    The provider-assigned unique ID for this managed resource.
    secretTrn String
    Secret TRN corresponding to credential ciphertext
    updatedAt String
    Update time
    createdAt string
    Creation time
    credentialProviderTrn string
    Credential provider TRN
    id string
    The provider-assigned unique ID for this managed resource.
    secretTrn string
    Secret TRN corresponding to credential ciphertext
    updatedAt string
    Update time
    created_at str
    Creation time
    credential_provider_trn str
    Credential provider TRN
    id str
    The provider-assigned unique ID for this managed resource.
    secret_trn str
    Secret TRN corresponding to credential ciphertext
    updated_at str
    Update time
    createdAt String
    Creation time
    credentialProviderTrn String
    Credential provider TRN
    id String
    The provider-assigned unique ID for this managed resource.
    secretTrn String
    Secret TRN corresponding to credential ciphertext
    updatedAt String
    Update time

    Look up Existing Oauth2CredentialProvider Resource

    Get an existing Oauth2CredentialProvider 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?: Oauth2CredentialProviderState, opts?: CustomResourceOptions): Oauth2CredentialProvider
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            config: Optional[Oauth2CredentialProviderConfigArgs] = None,
            created_at: Optional[str] = None,
            credential_provider_trn: Optional[str] = None,
            name: Optional[str] = None,
            pool_name: Optional[str] = None,
            project_name: Optional[str] = None,
            secret_trn: Optional[str] = None,
            updated_at: Optional[str] = None,
            vendor: Optional[int] = None) -> Oauth2CredentialProvider
    func GetOauth2CredentialProvider(ctx *Context, name string, id IDInput, state *Oauth2CredentialProviderState, opts ...ResourceOption) (*Oauth2CredentialProvider, error)
    public static Oauth2CredentialProvider Get(string name, Input<string> id, Oauth2CredentialProviderState? state, CustomResourceOptions? opts = null)
    public static Oauth2CredentialProvider get(String name, Output<String> id, Oauth2CredentialProviderState state, CustomResourceOptions options)
    resources:  _:    type: bytepluscc:id:Oauth2CredentialProvider    get:      id: ${id}
    import {
      to = bytepluscc_id_oauth2_credential_provider.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:
    Config Byteplus.Oauth2CredentialProviderConfig
    OAuth2 configuration
    CreatedAt string
    Creation time
    CredentialProviderTrn string
    Credential provider TRN
    Name string
    Name
    PoolName string
    Workload pool name
    ProjectName string
    Project name
    SecretTrn string
    Secret TRN corresponding to credential ciphertext
    UpdatedAt string
    Update time
    Vendor int
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    Config Oauth2CredentialProviderConfigArgs
    OAuth2 configuration
    CreatedAt string
    Creation time
    CredentialProviderTrn string
    Credential provider TRN
    Name string
    Name
    PoolName string
    Workload pool name
    ProjectName string
    Project name
    SecretTrn string
    Secret TRN corresponding to credential ciphertext
    UpdatedAt string
    Update time
    Vendor int
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    config object
    OAuth2 configuration
    created_at string
    Creation time
    credential_provider_trn string
    Credential provider TRN
    name string
    Name
    pool_name string
    Workload pool name
    project_name string
    Project name
    secret_trn string
    Secret TRN corresponding to credential ciphertext
    updated_at string
    Update time
    vendor number
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    config Oauth2CredentialProverConfig
    OAuth2 configuration
    createdAt String
    Creation time
    credentialProviderTrn String
    Credential provider TRN
    name String
    Name
    poolName String
    Workload pool name
    projectName String
    Project name
    secretTrn String
    Secret TRN corresponding to credential ciphertext
    updatedAt String
    Update time
    vendor Integer
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    config Oauth2CredentialProviderConfig
    OAuth2 configuration
    createdAt string
    Creation time
    credentialProviderTrn string
    Credential provider TRN
    name string
    Name
    poolName string
    Workload pool name
    projectName string
    Project name
    secretTrn string
    Secret TRN corresponding to credential ciphertext
    updatedAt string
    Update time
    vendor number
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    config Oauth2CredentialProviderConfigArgs
    OAuth2 configuration
    created_at str
    Creation time
    credential_provider_trn str
    Credential provider TRN
    name str
    Name
    pool_name str
    Workload pool name
    project_name str
    Project name
    secret_trn str
    Secret TRN corresponding to credential ciphertext
    updated_at str
    Update time
    vendor int
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool
    config Property Map
    OAuth2 configuration
    createdAt String
    Creation time
    credentialProviderTrn String
    Credential provider TRN
    name String
    Name
    poolName String
    Workload pool name
    projectName String
    Project name
    secretTrn String
    Secret TRN corresponding to credential ciphertext
    updatedAt String
    Update time
    vendor Number
    OAuth2 provider type. 0: Custom, 1: Google, 2: Github, 3: Coze, 4: Feishu, 5: WeChat, 6: User pool

    Supporting Types

    Oauth2CredentialProviderConfig, Oauth2CredentialProviderConfigArgs

    ClientId string
    OAuth2 Client ID。
    ClientSecret string
    OAuth2 Client Secret。
    CustomParameters Byteplus.Oauth2CredentialProviderConfigCustomParameters
    Default custom parameters in GetResourceOauth2Token request
    Flow string
    Default Flow in GetResourceOauth2Token request. Optional values: USER_FEDERATION, M2M
    ForceAuthentication bool
    Default ForceAuthentication in GetResourceOauth2Token request
    MaxExpires int
    Maximum token validity (seconds)
    Metadata string
    Custom metadata
    Oauth2Discovery Byteplus.Oauth2CredentialProviderConfigOauth2Discovery
    OAuth2 discovery information
    RedirectUrl string
    Default RedirectUrl in GetResourceOauth2Token request
    Scopes List<string>
    Default Scopes in GetResourceOauth2Token request
    SecretStorage Byteplus.Oauth2CredentialProviderConfigSecretStorage
    Encrypted storage configuration
    ClientId string
    OAuth2 Client ID。
    ClientSecret string
    OAuth2 Client Secret。
    CustomParameters Oauth2CredentialProviderConfigCustomParameters
    Default custom parameters in GetResourceOauth2Token request
    Flow string
    Default Flow in GetResourceOauth2Token request. Optional values: USER_FEDERATION, M2M
    ForceAuthentication bool
    Default ForceAuthentication in GetResourceOauth2Token request
    MaxExpires int
    Maximum token validity (seconds)
    Metadata string
    Custom metadata
    Oauth2Discovery Oauth2CredentialProviderConfigOauth2Discovery
    OAuth2 discovery information
    RedirectUrl string
    Default RedirectUrl in GetResourceOauth2Token request
    Scopes []string
    Default Scopes in GetResourceOauth2Token request
    SecretStorage Oauth2CredentialProviderConfigSecretStorage
    Encrypted storage configuration
    client_id string
    OAuth2 Client ID。
    client_secret string
    OAuth2 Client Secret。
    custom_parameters object
    Default custom parameters in GetResourceOauth2Token request
    flow string
    Default Flow in GetResourceOauth2Token request. Optional values: USER_FEDERATION, M2M
    force_authentication bool
    Default ForceAuthentication in GetResourceOauth2Token request
    max_expires number
    Maximum token validity (seconds)
    metadata string
    Custom metadata
    oauth2_discovery object
    OAuth2 discovery information
    redirect_url string
    Default RedirectUrl in GetResourceOauth2Token request
    scopes list(string)
    Default Scopes in GetResourceOauth2Token request
    secret_storage object
    Encrypted storage configuration
    clientId String
    OAuth2 Client ID。
    clientSecret String
    OAuth2 Client Secret。
    customParameters Oauth2CredentialProverConfigCustomParameters
    Default custom parameters in GetResourceOauth2Token request
    flow String
    Default Flow in GetResourceOauth2Token request. Optional values: USER_FEDERATION, M2M
    forceAuthentication Boolean
    Default ForceAuthentication in GetResourceOauth2Token request
    maxExpires Integer
    Maximum token validity (seconds)
    metadata String
    Custom metadata
    oauth2Discovery Oauth2CredentialProverConfigOauth2Discovery
    OAuth2 discovery information
    redirectUrl String
    Default RedirectUrl in GetResourceOauth2Token request
    scopes List<String>
    Default Scopes in GetResourceOauth2Token request
    secretStorage Oauth2CredentialProverConfigSecretStorage
    Encrypted storage configuration
    clientId string
    OAuth2 Client ID。
    clientSecret string
    OAuth2 Client Secret。
    customParameters Oauth2CredentialProviderConfigCustomParameters
    Default custom parameters in GetResourceOauth2Token request
    flow string
    Default Flow in GetResourceOauth2Token request. Optional values: USER_FEDERATION, M2M
    forceAuthentication boolean
    Default ForceAuthentication in GetResourceOauth2Token request
    maxExpires number
    Maximum token validity (seconds)
    metadata string
    Custom metadata
    oauth2Discovery Oauth2CredentialProviderConfigOauth2Discovery
    OAuth2 discovery information
    redirectUrl string
    Default RedirectUrl in GetResourceOauth2Token request
    scopes string[]
    Default Scopes in GetResourceOauth2Token request
    secretStorage Oauth2CredentialProviderConfigSecretStorage
    Encrypted storage configuration
    client_id str
    OAuth2 Client ID。
    client_secret str
    OAuth2 Client Secret。
    custom_parameters Oauth2CredentialProviderConfigCustomParameters
    Default custom parameters in GetResourceOauth2Token request
    flow str
    Default Flow in GetResourceOauth2Token request. Optional values: USER_FEDERATION, M2M
    force_authentication bool
    Default ForceAuthentication in GetResourceOauth2Token request
    max_expires int
    Maximum token validity (seconds)
    metadata str
    Custom metadata
    oauth2_discovery Oauth2CredentialProviderConfigOauth2Discovery
    OAuth2 discovery information
    redirect_url str
    Default RedirectUrl in GetResourceOauth2Token request
    scopes Sequence[str]
    Default Scopes in GetResourceOauth2Token request
    secret_storage Oauth2CredentialProviderConfigSecretStorage
    Encrypted storage configuration
    clientId String
    OAuth2 Client ID。
    clientSecret String
    OAuth2 Client Secret。
    customParameters Property Map
    Default custom parameters in GetResourceOauth2Token request
    flow String
    Default Flow in GetResourceOauth2Token request. Optional values: USER_FEDERATION, M2M
    forceAuthentication Boolean
    Default ForceAuthentication in GetResourceOauth2Token request
    maxExpires Number
    Maximum token validity (seconds)
    metadata String
    Custom metadata
    oauth2Discovery Property Map
    OAuth2 discovery information
    redirectUrl String
    Default RedirectUrl in GetResourceOauth2Token request
    scopes List<String>
    Default Scopes in GetResourceOauth2Token request
    secretStorage Property Map
    Encrypted storage configuration

    Oauth2CredentialProviderConfigCustomParameters, Oauth2CredentialProviderConfigCustomParametersArgs

    Entries List<Byteplus.Oauth2CredentialProviderConfigCustomParametersEntry>
    Custom parameter entry list Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    Entries []Oauth2CredentialProviderConfigCustomParametersEntry
    Custom parameter entry list Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    entries list(object)
    Custom parameter entry list Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    entries List<Oauth2CredentialProverConfigCustomParametersEntry>
    Custom parameter entry list Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    entries Oauth2CredentialProviderConfigCustomParametersEntry[]
    Custom parameter entry list Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    entries Sequence[Oauth2CredentialProviderConfigCustomParametersEntry]
    Custom parameter entry list Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    entries List<Property Map>
    Custom parameter entry list Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.

    Oauth2CredentialProviderConfigCustomParametersEntry, Oauth2CredentialProviderConfigCustomParametersEntryArgs

    Key string
    Parameter key
    Value string
    Parameter value
    Key string
    Parameter key
    Value string
    Parameter value
    key string
    Parameter key
    value string
    Parameter value
    key String
    Parameter key
    value String
    Parameter value
    key string
    Parameter key
    value string
    Parameter value
    key str
    Parameter key
    value str
    Parameter value
    key String
    Parameter key
    value String
    Parameter value

    Oauth2CredentialProviderConfigOauth2Discovery, Oauth2CredentialProviderConfigOauth2DiscoveryArgs

    authorization_server_metadata object
    Authorization server metadata
    discovery_url string
    DiscoveryUrl field
    authorizationServerMetadata Property Map
    Authorization server metadata
    discoveryUrl String
    DiscoveryUrl field

    Oauth2CredentialProviderConfigOauth2DiscoveryAuthorizationServerMetadata, Oauth2CredentialProviderConfigOauth2DiscoveryAuthorizationServerMetadataArgs

    AuthorizationEndpoint string
    AuthorizationEndpoint field
    CodeChallengeMethodsSupporteds List<string>
    CodeChallengeMethodsSupported field
    Issuer string
    Issuer field
    RegistrationEndpoint string
    RegistrationEndpoint field
    ResponseTypes List<string>
    ResponseTypes field
    RevocationEndpoint string
    RevocationEndpoint field
    TokenEndpoint string
    TokenEndpoint field
    AuthorizationEndpoint string
    AuthorizationEndpoint field
    CodeChallengeMethodsSupporteds []string
    CodeChallengeMethodsSupported field
    Issuer string
    Issuer field
    RegistrationEndpoint string
    RegistrationEndpoint field
    ResponseTypes []string
    ResponseTypes field
    RevocationEndpoint string
    RevocationEndpoint field
    TokenEndpoint string
    TokenEndpoint field
    authorization_endpoint string
    AuthorizationEndpoint field
    code_challenge_methods_supporteds list(string)
    CodeChallengeMethodsSupported field
    issuer string
    Issuer field
    registration_endpoint string
    RegistrationEndpoint field
    response_types list(string)
    ResponseTypes field
    revocation_endpoint string
    RevocationEndpoint field
    token_endpoint string
    TokenEndpoint field
    authorizationEndpoint String
    AuthorizationEndpoint field
    codeChallengeMethodsSupporteds List<String>
    CodeChallengeMethodsSupported field
    issuer String
    Issuer field
    registrationEndpoint String
    RegistrationEndpoint field
    responseTypes List<String>
    ResponseTypes field
    revocationEndpoint String
    RevocationEndpoint field
    tokenEndpoint String
    TokenEndpoint field
    authorizationEndpoint string
    AuthorizationEndpoint field
    codeChallengeMethodsSupporteds string[]
    CodeChallengeMethodsSupported field
    issuer string
    Issuer field
    registrationEndpoint string
    RegistrationEndpoint field
    responseTypes string[]
    ResponseTypes field
    revocationEndpoint string
    RevocationEndpoint field
    tokenEndpoint string
    TokenEndpoint field
    authorization_endpoint str
    AuthorizationEndpoint field
    code_challenge_methods_supporteds Sequence[str]
    CodeChallengeMethodsSupported field
    issuer str
    Issuer field
    registration_endpoint str
    RegistrationEndpoint field
    response_types Sequence[str]
    ResponseTypes field
    revocation_endpoint str
    RevocationEndpoint field
    token_endpoint str
    TokenEndpoint field
    authorizationEndpoint String
    AuthorizationEndpoint field
    codeChallengeMethodsSupporteds List<String>
    CodeChallengeMethodsSupported field
    issuer String
    Issuer field
    registrationEndpoint String
    RegistrationEndpoint field
    responseTypes List<String>
    ResponseTypes field
    revocationEndpoint String
    RevocationEndpoint field
    tokenEndpoint String
    TokenEndpoint field

    Oauth2CredentialProviderConfigSecretStorage, Oauth2CredentialProviderConfigSecretStorageArgs

    EncryptionKey string
    KMS key TRN for encrypted credential value. If not specified, the default key is used
    StorageType int
    Encrypted storage type. 0: SecretManager, 1: KMS
    EncryptionKey string
    KMS key TRN for encrypted credential value. If not specified, the default key is used
    StorageType int
    Encrypted storage type. 0: SecretManager, 1: KMS
    encryption_key string
    KMS key TRN for encrypted credential value. If not specified, the default key is used
    storage_type number
    Encrypted storage type. 0: SecretManager, 1: KMS
    encryptionKey String
    KMS key TRN for encrypted credential value. If not specified, the default key is used
    storageType Integer
    Encrypted storage type. 0: SecretManager, 1: KMS
    encryptionKey string
    KMS key TRN for encrypted credential value. If not specified, the default key is used
    storageType number
    Encrypted storage type. 0: SecretManager, 1: KMS
    encryption_key str
    KMS key TRN for encrypted credential value. If not specified, the default key is used
    storage_type int
    Encrypted storage type. 0: SecretManager, 1: KMS
    encryptionKey String
    KMS key TRN for encrypted credential value. If not specified, the default key is used
    storageType Number
    Encrypted storage type. 0: SecretManager, 1: KMS

    Import

    $ pulumi import bytepluscc:id/oauth2CredentialProvider:Oauth2CredentialProvider example "name|pool_name"
    

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

    Package Details

    Repository
    bytepluscc byteplus-sdk/pulumi-bytepluscc
    License
    MPL-2.0
    Notes
    This Pulumi package is based on the bytepluscc Terraform Provider.
    bytepluscc logo
    Viewing docs for bytepluscc v0.0.42
    published on Monday, Jul 20, 2026 by Byteplus

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial