IdentityProviderArgs

data class IdentityProviderArgs(val attributeMapping: Output<Map<String, String>>? = null, val idpIdentifiers: Output<List<String>>? = null, val providerDetails: Output<Map<String, String>>? = null, val providerName: Output<String>? = null, val providerType: Output<String>? = null, val userPoolId: Output<String>? = null) : ConvertibleToJava<IdentityProviderArgs>

Provides a Cognito User Identity Provider resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.cognito.UserPool("example", {
name: "example-pool",
autoVerifiedAttributes: ["email"],
});
const exampleProvider = new aws.cognito.IdentityProvider("example_provider", {
userPoolId: example.id,
providerName: "Google",
providerType: "Google",
providerDetails: {
authorize_scopes: "email",
client_id: "your client_id",
client_secret: "your client_secret",
},
attributeMapping: {
email: "email",
username: "sub",
},
});
import pulumi
import pulumi_aws as aws
example = aws.cognito.UserPool("example",
name="example-pool",
auto_verified_attributes=["email"])
example_provider = aws.cognito.IdentityProvider("example_provider",
user_pool_id=example.id,
provider_name="Google",
provider_type="Google",
provider_details={
"authorize_scopes": "email",
"client_id": "your client_id",
"client_secret": "your client_secret",
},
attribute_mapping={
"email": "email",
"username": "sub",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Cognito.UserPool("example", new()
{
Name = "example-pool",
AutoVerifiedAttributes = new[]
{
"email",
},
});
var exampleProvider = new Aws.Cognito.IdentityProvider("example_provider", new()
{
UserPoolId = example.Id,
ProviderName = "Google",
ProviderType = "Google",
ProviderDetails =
{
{ "authorize_scopes", "email" },
{ "client_id", "your client_id" },
{ "client_secret", "your client_secret" },
},
AttributeMapping =
{
{ "email", "email" },
{ "username", "sub" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cognito"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := cognito.NewUserPool(ctx, "example", &cognito.UserPoolArgs{
Name: pulumi.String("example-pool"),
AutoVerifiedAttributes: pulumi.StringArray{
pulumi.String("email"),
},
})
if err != nil {
return err
}
_, err = cognito.NewIdentityProvider(ctx, "example_provider", &cognito.IdentityProviderArgs{
UserPoolId: example.ID(),
ProviderName: pulumi.String("Google"),
ProviderType: pulumi.String("Google"),
ProviderDetails: pulumi.StringMap{
"authorize_scopes": pulumi.String("email"),
"client_id": pulumi.String("your client_id"),
"client_secret": pulumi.String("your client_secret"),
},
AttributeMapping: pulumi.StringMap{
"email": pulumi.String("email"),
"username": pulumi.String("sub"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.cognito.UserPool;
import com.pulumi.aws.cognito.UserPoolArgs;
import com.pulumi.aws.cognito.IdentityProvider;
import com.pulumi.aws.cognito.IdentityProviderArgs;
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 example = new UserPool("example", UserPoolArgs.builder()
.name("example-pool")
.autoVerifiedAttributes("email")
.build());
var exampleProvider = new IdentityProvider("exampleProvider", IdentityProviderArgs.builder()
.userPoolId(example.id())
.providerName("Google")
.providerType("Google")
.providerDetails(Map.ofEntries(
Map.entry("authorize_scopes", "email"),
Map.entry("client_id", "your client_id"),
Map.entry("client_secret", "your client_secret")
))
.attributeMapping(Map.ofEntries(
Map.entry("email", "email"),
Map.entry("username", "sub")
))
.build());
}
}
resources:
example:
type: aws:cognito:UserPool
properties:
name: example-pool
autoVerifiedAttributes:
- email
exampleProvider:
type: aws:cognito:IdentityProvider
name: example_provider
properties:
userPoolId: ${example.id}
providerName: Google
providerType: Google
providerDetails:
authorize_scopes: email
client_id: your client_id
client_secret: your client_secret
attributeMapping:
email: email
username: sub

Import

Using pulumi import, import aws_cognito_identity_provider resources using their User Pool ID and Provider Name. For example:

$ pulumi import aws:cognito/identityProvider:IdentityProvider example us-west-2_abc123:CorpAD

Constructors

Link copied to clipboard
constructor(attributeMapping: Output<Map<String, String>>? = null, idpIdentifiers: Output<List<String>>? = null, providerDetails: Output<Map<String, String>>? = null, providerName: Output<String>? = null, providerType: Output<String>? = null, userPoolId: Output<String>? = null)

Properties

Link copied to clipboard
val attributeMapping: Output<Map<String, String>>? = null

The map of attribute mapping of user pool attributes. AttributeMapping in AWS API documentation

Link copied to clipboard
val idpIdentifiers: Output<List<String>>? = null

The list of identity providers.

Link copied to clipboard
val providerDetails: Output<Map<String, String>>? = null

The map of identity details, such as access token

Link copied to clipboard
val providerName: Output<String>? = null

The provider name

Link copied to clipboard
val providerType: Output<String>? = null

The provider type. See AWS API for valid values

Link copied to clipboard
val userPoolId: Output<String>? = null

The user pool id

Functions

Link copied to clipboard
open override fun toJava(): IdentityProviderArgs