@pulumi/gcp
Version:
A Pulumi package for creating and managing Google Cloud Platform resources.
189 lines (188 loc) • 7.39 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Inbound SAML configuration for a Identity Toolkit project.
*
* You must enable the
* [Google Identity Platform](https://console.cloud.google.com/marketplace/details/google-cloud-platform/customer-identity) in
* the marketplace prior to using this resource.
*
* ## Example Usage
*
* ### Identity Platform Inbound Saml Config Basic
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
* import * as std from "@pulumi/std";
*
* const samlConfig = new gcp.identityplatform.InboundSamlConfig("saml_config", {
* name: "saml.tf-config",
* displayName: "Display Name",
* idpConfig: {
* idpEntityId: "tf-idp",
* signRequest: true,
* ssoUrl: "https://example.com",
* idpCertificates: [{
* x509Certificate: std.file({
* input: "test-fixtures/rsa_cert.pem",
* }).then(invoke => invoke.result),
* }],
* },
* spConfig: {
* spEntityId: "tf-sp",
* callbackUri: "https://example.com",
* },
* });
* ```
*
* ## Import
*
* InboundSamlConfig can be imported using any of these accepted formats:
*
* * `projects/{{project}}/inboundSamlConfigs/{{name}}`
*
* * `{{project}}/{{name}}`
*
* * `{{name}}`
*
* When using the `pulumi import` command, InboundSamlConfig can be imported using one of the formats above. For example:
*
* ```sh
* $ pulumi import gcp:identityplatform/inboundSamlConfig:InboundSamlConfig default projects/{{project}}/inboundSamlConfigs/{{name}}
* ```
*
* ```sh
* $ pulumi import gcp:identityplatform/inboundSamlConfig:InboundSamlConfig default {{project}}/{{name}}
* ```
*
* ```sh
* $ pulumi import gcp:identityplatform/inboundSamlConfig:InboundSamlConfig default {{name}}
* ```
*/
export declare class InboundSamlConfig extends pulumi.CustomResource {
/**
* Get an existing InboundSamlConfig 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<pulumi.ID>, state?: InboundSamlConfigState, opts?: pulumi.CustomResourceOptions): InboundSamlConfig;
/**
* Returns true if the given object is an instance of InboundSamlConfig. 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 InboundSamlConfig;
/**
* Human friendly display name.
*/
readonly displayName: pulumi.Output<string>;
/**
* If this config allows users to sign in with the provider.
*/
readonly enabled: pulumi.Output<boolean | undefined>;
/**
* SAML IdP configuration when the project acts as the relying party
* Structure is documented below.
*/
readonly idpConfig: pulumi.Output<outputs.identityplatform.InboundSamlConfigIdpConfig>;
/**
* The name of the InboundSamlConfig resource. Must start with 'saml.' and can only have alphanumeric characters,
* hyphens, underscores or periods. The part after 'saml.' must also start with a lowercase letter, end with an
* alphanumeric character, and have at least 2 characters.
*/
readonly name: pulumi.Output<string>;
/**
* The ID of the project in which the resource belongs.
* If it is not provided, the provider project is used.
*/
readonly project: pulumi.Output<string>;
/**
* SAML SP (Service Provider) configuration when the project acts as the relying party to receive
* and accept an authentication assertion issued by a SAML identity provider.
* Structure is documented below.
*/
readonly spConfig: pulumi.Output<outputs.identityplatform.InboundSamlConfigSpConfig>;
/**
* Create a InboundSamlConfig 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: InboundSamlConfigArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering InboundSamlConfig resources.
*/
export interface InboundSamlConfigState {
/**
* Human friendly display name.
*/
displayName?: pulumi.Input<string>;
/**
* If this config allows users to sign in with the provider.
*/
enabled?: pulumi.Input<boolean>;
/**
* SAML IdP configuration when the project acts as the relying party
* Structure is documented below.
*/
idpConfig?: pulumi.Input<inputs.identityplatform.InboundSamlConfigIdpConfig>;
/**
* The name of the InboundSamlConfig resource. Must start with 'saml.' and can only have alphanumeric characters,
* hyphens, underscores or periods. The part after 'saml.' must also start with a lowercase letter, end with an
* alphanumeric character, and have at least 2 characters.
*/
name?: pulumi.Input<string>;
/**
* The ID of the project in which the resource belongs.
* If it is not provided, the provider project is used.
*/
project?: pulumi.Input<string>;
/**
* SAML SP (Service Provider) configuration when the project acts as the relying party to receive
* and accept an authentication assertion issued by a SAML identity provider.
* Structure is documented below.
*/
spConfig?: pulumi.Input<inputs.identityplatform.InboundSamlConfigSpConfig>;
}
/**
* The set of arguments for constructing a InboundSamlConfig resource.
*/
export interface InboundSamlConfigArgs {
/**
* Human friendly display name.
*/
displayName: pulumi.Input<string>;
/**
* If this config allows users to sign in with the provider.
*/
enabled?: pulumi.Input<boolean>;
/**
* SAML IdP configuration when the project acts as the relying party
* Structure is documented below.
*/
idpConfig: pulumi.Input<inputs.identityplatform.InboundSamlConfigIdpConfig>;
/**
* The name of the InboundSamlConfig resource. Must start with 'saml.' and can only have alphanumeric characters,
* hyphens, underscores or periods. The part after 'saml.' must also start with a lowercase letter, end with an
* alphanumeric character, and have at least 2 characters.
*/
name?: pulumi.Input<string>;
/**
* The ID of the project in which the resource belongs.
* If it is not provided, the provider project is used.
*/
project?: pulumi.Input<string>;
/**
* SAML SP (Service Provider) configuration when the project acts as the relying party to receive
* and accept an authentication assertion issued by a SAML identity provider.
* Structure is documented below.
*/
spConfig: pulumi.Input<inputs.identityplatform.InboundSamlConfigSpConfig>;
}