UNPKG

@pulumi/aws

Version:

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

243 lines (242 loc) • 9.7 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Provides an AWS Cognito Identity Pool. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * import * as std from "@pulumi/std"; * * const _default = new aws.iam.SamlProvider("default", { * name: "my-saml-provider", * samlMetadataDocument: std.file({ * input: "saml-metadata.xml", * }).then(invoke => invoke.result), * }); * const main = new aws.cognito.IdentityPool("main", { * identityPoolName: "identity pool", * allowUnauthenticatedIdentities: false, * allowClassicFlow: false, * cognitoIdentityProviders: [ * { * clientId: "6lhlkkfbfb4q5kpp90urffae", * providerName: "cognito-idp.us-east-1.amazonaws.com/us-east-1_Tv0493apJ", * serverSideTokenCheck: false, * }, * { * clientId: "7kodkvfqfb4qfkp39eurffae", * providerName: "cognito-idp.us-east-1.amazonaws.com/eu-west-1_Zr231apJu", * serverSideTokenCheck: false, * }, * ], * supportedLoginProviders: { * "graph.facebook.com": "7346241598935552", * "accounts.google.com": "123456789012.apps.googleusercontent.com", * }, * samlProviderArns: [_default.arn], * openidConnectProviderArns: ["arn:aws:iam::123456789012:oidc-provider/id.example.com"], * }); * ``` * * ## Import * * Using `pulumi import`, import Cognito Identity Pool using its ID. For example: * * ```sh * $ pulumi import aws:cognito/identityPool:IdentityPool mypool us-west-2:1a234567-8901-234b-5cde-f6789g01h2i3 * ``` */ export declare class IdentityPool extends pulumi.CustomResource { /** * Get an existing IdentityPool 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?: IdentityPoolState, opts?: pulumi.CustomResourceOptions): IdentityPool; /** * Returns true if the given object is an instance of IdentityPool. 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 IdentityPool; /** * Enables or disables the classic / basic authentication flow. Default is `false`. */ readonly allowClassicFlow: pulumi.Output<boolean | undefined>; /** * Whether the identity pool supports unauthenticated logins or not. */ readonly allowUnauthenticatedIdentities: pulumi.Output<boolean | undefined>; /** * The ARN of the identity pool. */ readonly arn: pulumi.Output<string>; /** * An array of Amazon Cognito Identity user pools and their client IDs. */ readonly cognitoIdentityProviders: pulumi.Output<outputs.cognito.IdentityPoolCognitoIdentityProvider[] | undefined>; /** * The "domain" by which Cognito will refer to your users. This name acts as a placeholder that allows your * backend and the Cognito service to communicate about the developer provider. */ readonly developerProviderName: pulumi.Output<string | undefined>; /** * The Cognito Identity Pool name. */ readonly identityPoolName: pulumi.Output<string>; /** * Set of OpendID Connect provider ARNs. */ readonly openidConnectProviderArns: pulumi.Output<string[] | undefined>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ readonly region: pulumi.Output<string>; /** * An array of Amazon Resource Names (ARNs) of the SAML provider for your identity. */ readonly samlProviderArns: pulumi.Output<string[] | undefined>; /** * Key-Value pairs mapping provider names to provider app IDs. */ readonly supportedLoginProviders: pulumi.Output<{ [key: string]: string; } | undefined>; /** * A map of tags to assign to the Identity Pool. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ readonly tagsAll: pulumi.Output<{ [key: string]: string; }>; /** * Create a IdentityPool 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: IdentityPoolArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering IdentityPool resources. */ export interface IdentityPoolState { /** * Enables or disables the classic / basic authentication flow. Default is `false`. */ allowClassicFlow?: pulumi.Input<boolean>; /** * Whether the identity pool supports unauthenticated logins or not. */ allowUnauthenticatedIdentities?: pulumi.Input<boolean>; /** * The ARN of the identity pool. */ arn?: pulumi.Input<string>; /** * An array of Amazon Cognito Identity user pools and their client IDs. */ cognitoIdentityProviders?: pulumi.Input<pulumi.Input<inputs.cognito.IdentityPoolCognitoIdentityProvider>[]>; /** * The "domain" by which Cognito will refer to your users. This name acts as a placeholder that allows your * backend and the Cognito service to communicate about the developer provider. */ developerProviderName?: pulumi.Input<string>; /** * The Cognito Identity Pool name. */ identityPoolName?: pulumi.Input<string>; /** * Set of OpendID Connect provider ARNs. */ openidConnectProviderArns?: pulumi.Input<pulumi.Input<string>[]>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input<string>; /** * An array of Amazon Resource Names (ARNs) of the SAML provider for your identity. */ samlProviderArns?: pulumi.Input<pulumi.Input<string>[]>; /** * Key-Value pairs mapping provider names to provider app IDs. */ supportedLoginProviders?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * A map of tags to assign to the Identity Pool. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ tagsAll?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; } /** * The set of arguments for constructing a IdentityPool resource. */ export interface IdentityPoolArgs { /** * Enables or disables the classic / basic authentication flow. Default is `false`. */ allowClassicFlow?: pulumi.Input<boolean>; /** * Whether the identity pool supports unauthenticated logins or not. */ allowUnauthenticatedIdentities?: pulumi.Input<boolean>; /** * An array of Amazon Cognito Identity user pools and their client IDs. */ cognitoIdentityProviders?: pulumi.Input<pulumi.Input<inputs.cognito.IdentityPoolCognitoIdentityProvider>[]>; /** * The "domain" by which Cognito will refer to your users. This name acts as a placeholder that allows your * backend and the Cognito service to communicate about the developer provider. */ developerProviderName?: pulumi.Input<string>; /** * The Cognito Identity Pool name. */ identityPoolName: pulumi.Input<string>; /** * Set of OpendID Connect provider ARNs. */ openidConnectProviderArns?: pulumi.Input<pulumi.Input<string>[]>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input<string>; /** * An array of Amazon Resource Names (ARNs) of the SAML provider for your identity. */ samlProviderArns?: pulumi.Input<pulumi.Input<string>[]>; /** * Key-Value pairs mapping provider names to provider app IDs. */ supportedLoginProviders?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * A map of tags to assign to the Identity Pool. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; }