import * as pulumi from "@pulumi/pulumi"; /** * OAuth Identity Provider Resource * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as volcenginecc from "@volcengine/pulumi-volcenginecc"; * * const iAMOauthProviderDemo = new volcenginecc.iam.OauthProvider("IAMOauthProviderDemo", { * oauthProviderName: "tf_oauth", * ssoType: 2, * status: 2, * description: "terraform test", * clientId: "4003ba40864e4215b929142dxxxxx", * clientSecret: "ab44f642d6fb4a559fd5e5caedxxxxx", * userInfoUrl: "https://security-api.xxxxx.com/qa/sso/oauth/xxxxx", * tokenUrl: "https://security-api.xxxxx.com/qa/sso/oauth/xxxxx", * authorizeUrl: "https://security-api.xxxxxx.com/qa/sso/oauth/xxxxxx", * authorizeTemplate: "${authEndpoint}?client_id=${clientId}&scope=${scope}&response_type=code&state=12345", * scope: "ccapi terraform", * identityMapType: 1, * idpIdentityKey: "username", * }); * ``` * * ## Import * * ```sh * $ pulumi import volcenginecc:iam/oauthProvider:OauthProvider example "oauth_provider_name" * ``` */ export declare class OauthProvider extends pulumi.CustomResource { /** * Get an existing OauthProvider resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: OauthProviderState, opts?: pulumi.CustomResourceOptions): OauthProvider; /** * Returns true if the given object is an instance of OauthProvider. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is OauthProvider; /** * OAuth Authorization Access Template */ readonly authorizeTemplate: pulumi.Output; /** * OAuth Authorization Endpoint Address */ readonly authorizeUrl: pulumi.Output; /** * OAuth Application Client Id */ readonly clientId: pulumi.Output; /** * OAuth Authorization Application Secret */ readonly clientSecret: pulumi.Output; /** * Creation Time */ readonly createDate: pulumi.Output; /** * Identity Provider Description */ readonly description: pulumi.Output; /** * OAuth User Info Sub-User Mapping Method 1. Map Sub-User Name 2. Map Sub-User Secure Mobile Number */ readonly identityMapType: pulumi.Output; /** * OAuth User Info Mapping Field */ readonly idpIdentityKey: pulumi.Output; /** * OAuth Identity Provider Name */ readonly oauthProviderName: pulumi.Output; /** * Identity Provider ID */ readonly providerId: pulumi.Output; /** * OAuth Authorization Service Scope (separate multiple scopes with spaces) */ readonly scope: pulumi.Output; /** * Identity Provider SSO Type 1. Role SSO (not supported yet) 2. User SSO */ readonly ssoType: pulumi.Output; /** * Identity Provider Status (User SSO Only) 1. Enabled 2. Enabled (other login methods disabled) 3. Disabled */ readonly status: pulumi.Output; /** * OAuth Authorization Service AccessToken Endpoint Address */ readonly tokenUrl: pulumi.Output; /** * Identity Provider Trn */ readonly trn: pulumi.Output; /** * Update Time */ readonly updateDate: pulumi.Output; /** * OAuth Authorization Service User Info Endpoint Address */ readonly userInfoUrl: pulumi.Output; /** * Create a OauthProvider resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: OauthProviderArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering OauthProvider resources. */ export interface OauthProviderState { /** * OAuth Authorization Access Template */ authorizeTemplate?: pulumi.Input; /** * OAuth Authorization Endpoint Address */ authorizeUrl?: pulumi.Input; /** * OAuth Application Client Id */ clientId?: pulumi.Input; /** * OAuth Authorization Application Secret */ clientSecret?: pulumi.Input; /** * Creation Time */ createDate?: pulumi.Input; /** * Identity Provider Description */ description?: pulumi.Input; /** * OAuth User Info Sub-User Mapping Method 1. Map Sub-User Name 2. Map Sub-User Secure Mobile Number */ identityMapType?: pulumi.Input; /** * OAuth User Info Mapping Field */ idpIdentityKey?: pulumi.Input; /** * OAuth Identity Provider Name */ oauthProviderName?: pulumi.Input; /** * Identity Provider ID */ providerId?: pulumi.Input; /** * OAuth Authorization Service Scope (separate multiple scopes with spaces) */ scope?: pulumi.Input; /** * Identity Provider SSO Type 1. Role SSO (not supported yet) 2. User SSO */ ssoType?: pulumi.Input; /** * Identity Provider Status (User SSO Only) 1. Enabled 2. Enabled (other login methods disabled) 3. Disabled */ status?: pulumi.Input; /** * OAuth Authorization Service AccessToken Endpoint Address */ tokenUrl?: pulumi.Input; /** * Identity Provider Trn */ trn?: pulumi.Input; /** * Update Time */ updateDate?: pulumi.Input; /** * OAuth Authorization Service User Info Endpoint Address */ userInfoUrl?: pulumi.Input; } /** * The set of arguments for constructing a OauthProvider resource. */ export interface OauthProviderArgs { /** * OAuth Authorization Access Template */ authorizeTemplate: pulumi.Input; /** * OAuth Authorization Endpoint Address */ authorizeUrl: pulumi.Input; /** * OAuth Application Client Id */ clientId: pulumi.Input; /** * OAuth Authorization Application Secret */ clientSecret: pulumi.Input; /** * Identity Provider Description */ description?: pulumi.Input; /** * OAuth User Info Sub-User Mapping Method 1. Map Sub-User Name 2. Map Sub-User Secure Mobile Number */ identityMapType: pulumi.Input; /** * OAuth User Info Mapping Field */ idpIdentityKey: pulumi.Input; /** * OAuth Identity Provider Name */ oauthProviderName: pulumi.Input; /** * OAuth Authorization Service Scope (separate multiple scopes with spaces) */ scope?: pulumi.Input; /** * Identity Provider SSO Type 1. Role SSO (not supported yet) 2. User SSO */ ssoType: pulumi.Input; /** * Identity Provider Status (User SSO Only) 1. Enabled 2. Enabled (other login methods disabled) 3. Disabled */ status?: pulumi.Input; /** * OAuth Authorization Service AccessToken Endpoint Address */ tokenUrl: pulumi.Input; /** * OAuth Authorization Service User Info Endpoint Address */ userInfoUrl: pulumi.Input; }