pulumi-fusionauth
Version:
A Pulumi package for managing FusionAuth instances.
230 lines (229 loc) • 7.62 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* ## # Lambda Resource
*
* Lambdas are user defined JavaScript functions that may be executed at runtime to perform various functions. Lambdas may be used to customize the claims returned in a JWT, reconcile a SAML v2 response or an OpenID Connect response when using these external identity providers.
*
* [Lambdas API](https://fusionauth.io/docs/v1/tech/apis/lambdas)
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as fusionauth from "pulumi-fusionauth";
*
* const preferredUsername = new fusionauth.FusionAuthLambda("preferredUsername", {
* body: `// Using the user and registration parameters add additional values to the jwt object.
* function populate(jwt, user, registration) {
* jwt.preferred_username = registration.username;
* }
*
* `,
* enabled: true,
* type: "JWTPopulate",
* });
* ```
*/
export declare class FusionAuthLambda extends pulumi.CustomResource {
/**
* Get an existing FusionAuthLambda 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?: FusionAuthLambdaState, opts?: pulumi.CustomResourceOptions): FusionAuthLambda;
/**
* Returns true if the given object is an instance of FusionAuthLambda. 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 FusionAuthLambda;
/**
* The lambda function body, a JavaScript function.
*/
readonly body: pulumi.Output<string>;
/**
* Whether or not debug event logging is enabled for this Lambda.
*/
readonly debug: pulumi.Output<boolean | undefined>;
/**
* Whether or not this Lambda is enabled.
*
* @deprecated Not currently used and may be removed in a future version.
*/
readonly enabled: pulumi.Output<boolean | undefined>;
/**
* The JavaScript execution engine for the lambda.
*/
readonly engineType: pulumi.Output<string | undefined>;
/**
* The Id to use for the new lambda. If not specified a secure random UUID will be generated.
*/
readonly lambdaId: pulumi.Output<string>;
/**
* The name of the lambda.
*/
readonly name: pulumi.Output<string>;
/**
* The lambda type. The possible values are:
* * `AppleReconcile`
* * `ClientCredentialsJWTPopulate`
* * `EpicGamesReconcile`
* * `ExternalJWTReconcile`
* * `FacebookReconcile`
* * `GoogleReconcile`
* * `HYPRReconcile`
* * `JWTPopulate`
* * `LDAPConnectorReconcile`
* * `LinkedInReconcile`
* * `LoginValidation`
* * `NintendoReconcile`
* * `OpenIDReconcile`
* * `SAMLv2Populate`
* * `SAMLv2Reconcile`
* * `SCIMServerGroupRequestConverter`
* * `SCIMServerGroupResponseConverter`
* * `SCIMServerUserRequestConverter`
* * `SCIMServerUserResponseConverter`
* * `SelfServiceRegistrationValidation`
* * `SonyPSNReconcile`
* * `SteamReconcile`
* * `TwitchReconcile`
* * `TwitterReconcile`
* * `UserInfoPopulate`
* * `XboxReconcile`
*/
readonly type: pulumi.Output<string>;
/**
* Create a FusionAuthLambda 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: FusionAuthLambdaArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering FusionAuthLambda resources.
*/
export interface FusionAuthLambdaState {
/**
* The lambda function body, a JavaScript function.
*/
body?: pulumi.Input<string>;
/**
* Whether or not debug event logging is enabled for this Lambda.
*/
debug?: pulumi.Input<boolean>;
/**
* Whether or not this Lambda is enabled.
*
* @deprecated Not currently used and may be removed in a future version.
*/
enabled?: pulumi.Input<boolean>;
/**
* The JavaScript execution engine for the lambda.
*/
engineType?: pulumi.Input<string>;
/**
* The Id to use for the new lambda. If not specified a secure random UUID will be generated.
*/
lambdaId?: pulumi.Input<string>;
/**
* The name of the lambda.
*/
name?: pulumi.Input<string>;
/**
* The lambda type. The possible values are:
* * `AppleReconcile`
* * `ClientCredentialsJWTPopulate`
* * `EpicGamesReconcile`
* * `ExternalJWTReconcile`
* * `FacebookReconcile`
* * `GoogleReconcile`
* * `HYPRReconcile`
* * `JWTPopulate`
* * `LDAPConnectorReconcile`
* * `LinkedInReconcile`
* * `LoginValidation`
* * `NintendoReconcile`
* * `OpenIDReconcile`
* * `SAMLv2Populate`
* * `SAMLv2Reconcile`
* * `SCIMServerGroupRequestConverter`
* * `SCIMServerGroupResponseConverter`
* * `SCIMServerUserRequestConverter`
* * `SCIMServerUserResponseConverter`
* * `SelfServiceRegistrationValidation`
* * `SonyPSNReconcile`
* * `SteamReconcile`
* * `TwitchReconcile`
* * `TwitterReconcile`
* * `UserInfoPopulate`
* * `XboxReconcile`
*/
type?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a FusionAuthLambda resource.
*/
export interface FusionAuthLambdaArgs {
/**
* The lambda function body, a JavaScript function.
*/
body: pulumi.Input<string>;
/**
* Whether or not debug event logging is enabled for this Lambda.
*/
debug?: pulumi.Input<boolean>;
/**
* Whether or not this Lambda is enabled.
*
* @deprecated Not currently used and may be removed in a future version.
*/
enabled?: pulumi.Input<boolean>;
/**
* The JavaScript execution engine for the lambda.
*/
engineType?: pulumi.Input<string>;
/**
* The Id to use for the new lambda. If not specified a secure random UUID will be generated.
*/
lambdaId?: pulumi.Input<string>;
/**
* The name of the lambda.
*/
name?: pulumi.Input<string>;
/**
* The lambda type. The possible values are:
* * `AppleReconcile`
* * `ClientCredentialsJWTPopulate`
* * `EpicGamesReconcile`
* * `ExternalJWTReconcile`
* * `FacebookReconcile`
* * `GoogleReconcile`
* * `HYPRReconcile`
* * `JWTPopulate`
* * `LDAPConnectorReconcile`
* * `LinkedInReconcile`
* * `LoginValidation`
* * `NintendoReconcile`
* * `OpenIDReconcile`
* * `SAMLv2Populate`
* * `SAMLv2Reconcile`
* * `SCIMServerGroupRequestConverter`
* * `SCIMServerGroupResponseConverter`
* * `SCIMServerUserRequestConverter`
* * `SCIMServerUserResponseConverter`
* * `SelfServiceRegistrationValidation`
* * `SonyPSNReconcile`
* * `SteamReconcile`
* * `TwitchReconcile`
* * `TwitterReconcile`
* * `UserInfoPopulate`
* * `XboxReconcile`
*/
type: pulumi.Input<string>;
}