authentication

package
v5.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 11, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Bindings

type Bindings struct {
	pulumi.CustomResourceState

	// The alias of the flow to assign to the realm BrowserFlow.
	BrowserFlow pulumi.StringOutput `pulumi:"browserFlow"`
	// The alias of the flow to assign to the realm ClientAuthenticationFlow.
	ClientAuthenticationFlow pulumi.StringOutput `pulumi:"clientAuthenticationFlow"`
	// The alias of the flow to assign to the realm DirectGrantFlow.
	DirectGrantFlow pulumi.StringOutput `pulumi:"directGrantFlow"`
	// The alias of the flow to assign to the realm DockerAuthenticationFlow.
	DockerAuthenticationFlow pulumi.StringOutput `pulumi:"dockerAuthenticationFlow"`
	// The realm the authentication flow binding exists in.
	RealmId pulumi.StringOutput `pulumi:"realmId"`
	// The alias of the flow to assign to the realm RegistrationFlow.
	RegistrationFlow pulumi.StringOutput `pulumi:"registrationFlow"`
	// The alias of the flow to assign to the realm ResetCredentialsFlow.
	ResetCredentialsFlow pulumi.StringOutput `pulumi:"resetCredentialsFlow"`
}

Allows for creating and managing realm authentication flow bindings within Keycloak.

[Authentication flows](https://www.keycloak.org/docs/latest/server_admin/index.html#_authentication-flows) describe a sequence of actions that a user or service must perform in order to be authenticated to Keycloak. The authentication flow itself is a container for these actions, which are otherwise known as executions.

Realms assign authentication flows to supported user flows such as `registration` and `browser`. This resource allows the updating of realm authentication flow bindings to custom authentication flows created by `authentication.Flow`.

Note that you can also use the `Realm` resource to assign authentication flow bindings at the realm level. This resource is useful if you would like to create a realm and an authentication flow, and assign this flow to the realm within a single run of `pulumi up`. In any case, do not attempt to use both the arguments within the `Realm` resource and this resource to manage authentication flow bindings, you should choose one or the other.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak"
"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak/authentication"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		realm, err := keycloak.NewRealm(ctx, "realm", &keycloak.RealmArgs{
			Realm:   pulumi.String("my-realm"),
			Enabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		flow, err := authentication.NewFlow(ctx, "flow", &authentication.FlowArgs{
			RealmId: realm.ID(),
			Alias:   pulumi.String("my-flow-alias"),
		})
		if err != nil {
			return err
		}
		// first execution
		executionOne, err := authentication.NewExecution(ctx, "executionOne", &authentication.ExecutionArgs{
			RealmId:         realm.ID(),
			ParentFlowAlias: flow.Alias,
			Authenticator:   pulumi.String("auth-cookie"),
			Requirement:     pulumi.String("ALTERNATIVE"),
		})
		if err != nil {
			return err
		}
		// second execution
		_, err = authentication.NewExecution(ctx, "executionTwo", &authentication.ExecutionArgs{
			RealmId:         realm.ID(),
			ParentFlowAlias: flow.Alias,
			Authenticator:   pulumi.String("identity-provider-redirector"),
			Requirement:     pulumi.String("ALTERNATIVE"),
		}, pulumi.DependsOn([]pulumi.Resource{
			executionOne,
		}))
		if err != nil {
			return err
		}
		_, err = authentication.NewBindings(ctx, "browserAuthenticationBinding", &authentication.BindingsArgs{
			RealmId:     realm.ID(),
			BrowserFlow: flow.Alias,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

func GetBindings

func GetBindings(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BindingsState, opts ...pulumi.ResourceOption) (*Bindings, error)

GetBindings gets an existing Bindings resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBindings

func NewBindings(ctx *pulumi.Context,
	name string, args *BindingsArgs, opts ...pulumi.ResourceOption) (*Bindings, error)

NewBindings registers a new resource with the given unique name, arguments, and options.

func (*Bindings) ElementType

func (*Bindings) ElementType() reflect.Type

func (*Bindings) ToBindingsOutput

func (i *Bindings) ToBindingsOutput() BindingsOutput

func (*Bindings) ToBindingsOutputWithContext

func (i *Bindings) ToBindingsOutputWithContext(ctx context.Context) BindingsOutput

type BindingsArgs

type BindingsArgs struct {
	// The alias of the flow to assign to the realm BrowserFlow.
	BrowserFlow pulumi.StringPtrInput
	// The alias of the flow to assign to the realm ClientAuthenticationFlow.
	ClientAuthenticationFlow pulumi.StringPtrInput
	// The alias of the flow to assign to the realm DirectGrantFlow.
	DirectGrantFlow pulumi.StringPtrInput
	// The alias of the flow to assign to the realm DockerAuthenticationFlow.
	DockerAuthenticationFlow pulumi.StringPtrInput
	// The realm the authentication flow binding exists in.
	RealmId pulumi.StringInput
	// The alias of the flow to assign to the realm RegistrationFlow.
	RegistrationFlow pulumi.StringPtrInput
	// The alias of the flow to assign to the realm ResetCredentialsFlow.
	ResetCredentialsFlow pulumi.StringPtrInput
}

The set of arguments for constructing a Bindings resource.

func (BindingsArgs) ElementType

func (BindingsArgs) ElementType() reflect.Type

type BindingsArray

type BindingsArray []BindingsInput

func (BindingsArray) ElementType

func (BindingsArray) ElementType() reflect.Type

func (BindingsArray) ToBindingsArrayOutput

func (i BindingsArray) ToBindingsArrayOutput() BindingsArrayOutput

func (BindingsArray) ToBindingsArrayOutputWithContext

func (i BindingsArray) ToBindingsArrayOutputWithContext(ctx context.Context) BindingsArrayOutput

type BindingsArrayInput

type BindingsArrayInput interface {
	pulumi.Input

	ToBindingsArrayOutput() BindingsArrayOutput
	ToBindingsArrayOutputWithContext(context.Context) BindingsArrayOutput
}

BindingsArrayInput is an input type that accepts BindingsArray and BindingsArrayOutput values. You can construct a concrete instance of `BindingsArrayInput` via:

BindingsArray{ BindingsArgs{...} }

type BindingsArrayOutput

type BindingsArrayOutput struct{ *pulumi.OutputState }

func (BindingsArrayOutput) ElementType

func (BindingsArrayOutput) ElementType() reflect.Type

func (BindingsArrayOutput) Index

func (BindingsArrayOutput) ToBindingsArrayOutput

func (o BindingsArrayOutput) ToBindingsArrayOutput() BindingsArrayOutput

func (BindingsArrayOutput) ToBindingsArrayOutputWithContext

func (o BindingsArrayOutput) ToBindingsArrayOutputWithContext(ctx context.Context) BindingsArrayOutput

type BindingsInput

type BindingsInput interface {
	pulumi.Input

	ToBindingsOutput() BindingsOutput
	ToBindingsOutputWithContext(ctx context.Context) BindingsOutput
}

type BindingsMap

type BindingsMap map[string]BindingsInput

func (BindingsMap) ElementType

func (BindingsMap) ElementType() reflect.Type

func (BindingsMap) ToBindingsMapOutput

func (i BindingsMap) ToBindingsMapOutput() BindingsMapOutput

func (BindingsMap) ToBindingsMapOutputWithContext

func (i BindingsMap) ToBindingsMapOutputWithContext(ctx context.Context) BindingsMapOutput

type BindingsMapInput

type BindingsMapInput interface {
	pulumi.Input

	ToBindingsMapOutput() BindingsMapOutput
	ToBindingsMapOutputWithContext(context.Context) BindingsMapOutput
}

BindingsMapInput is an input type that accepts BindingsMap and BindingsMapOutput values. You can construct a concrete instance of `BindingsMapInput` via:

BindingsMap{ "key": BindingsArgs{...} }

type BindingsMapOutput

type BindingsMapOutput struct{ *pulumi.OutputState }

func (BindingsMapOutput) ElementType

func (BindingsMapOutput) ElementType() reflect.Type

func (BindingsMapOutput) MapIndex

func (BindingsMapOutput) ToBindingsMapOutput

func (o BindingsMapOutput) ToBindingsMapOutput() BindingsMapOutput

func (BindingsMapOutput) ToBindingsMapOutputWithContext

func (o BindingsMapOutput) ToBindingsMapOutputWithContext(ctx context.Context) BindingsMapOutput

type BindingsOutput

type BindingsOutput struct{ *pulumi.OutputState }

func (BindingsOutput) BrowserFlow

func (o BindingsOutput) BrowserFlow() pulumi.StringOutput

The alias of the flow to assign to the realm BrowserFlow.

func (BindingsOutput) ClientAuthenticationFlow

func (o BindingsOutput) ClientAuthenticationFlow() pulumi.StringOutput

The alias of the flow to assign to the realm ClientAuthenticationFlow.

func (BindingsOutput) DirectGrantFlow

func (o BindingsOutput) DirectGrantFlow() pulumi.StringOutput

The alias of the flow to assign to the realm DirectGrantFlow.

func (BindingsOutput) DockerAuthenticationFlow

func (o BindingsOutput) DockerAuthenticationFlow() pulumi.StringOutput

The alias of the flow to assign to the realm DockerAuthenticationFlow.

func (BindingsOutput) ElementType

func (BindingsOutput) ElementType() reflect.Type

func (BindingsOutput) RealmId

func (o BindingsOutput) RealmId() pulumi.StringOutput

The realm the authentication flow binding exists in.

func (BindingsOutput) RegistrationFlow

func (o BindingsOutput) RegistrationFlow() pulumi.StringOutput

The alias of the flow to assign to the realm RegistrationFlow.

func (BindingsOutput) ResetCredentialsFlow

func (o BindingsOutput) ResetCredentialsFlow() pulumi.StringOutput

The alias of the flow to assign to the realm ResetCredentialsFlow.

func (BindingsOutput) ToBindingsOutput

func (o BindingsOutput) ToBindingsOutput() BindingsOutput

func (BindingsOutput) ToBindingsOutputWithContext

func (o BindingsOutput) ToBindingsOutputWithContext(ctx context.Context) BindingsOutput

type BindingsState

type BindingsState struct {
	// The alias of the flow to assign to the realm BrowserFlow.
	BrowserFlow pulumi.StringPtrInput
	// The alias of the flow to assign to the realm ClientAuthenticationFlow.
	ClientAuthenticationFlow pulumi.StringPtrInput
	// The alias of the flow to assign to the realm DirectGrantFlow.
	DirectGrantFlow pulumi.StringPtrInput
	// The alias of the flow to assign to the realm DockerAuthenticationFlow.
	DockerAuthenticationFlow pulumi.StringPtrInput
	// The realm the authentication flow binding exists in.
	RealmId pulumi.StringPtrInput
	// The alias of the flow to assign to the realm RegistrationFlow.
	RegistrationFlow pulumi.StringPtrInput
	// The alias of the flow to assign to the realm ResetCredentialsFlow.
	ResetCredentialsFlow pulumi.StringPtrInput
}

func (BindingsState) ElementType

func (BindingsState) ElementType() reflect.Type

type Execution

type Execution struct {
	pulumi.CustomResourceState

	// The name of the authenticator. This can be found by experimenting with the GUI and looking at HTTP requests within the network tab of your browser's development tools.
	Authenticator pulumi.StringOutput `pulumi:"authenticator"`
	// The alias of the flow this execution is attached to.
	ParentFlowAlias pulumi.StringOutput `pulumi:"parentFlowAlias"`
	// The realm the authentication execution exists in.
	RealmId pulumi.StringOutput `pulumi:"realmId"`
	// The requirement setting, which can be one of `REQUIRED`, `ALTERNATIVE`, `OPTIONAL`, `CONDITIONAL`, or `DISABLED`. Defaults to `DISABLED`.
	Requirement pulumi.StringPtrOutput `pulumi:"requirement"`
}

Allows for creating and managing an authentication execution within Keycloak.

An authentication execution is an action that the user or service may or may not take when authenticating through an authentication flow.

> Due to limitations in the Keycloak API, the ordering of authentication executions within a flow must be specified using `dependsOn`. Authentication executions that are created first will appear first within the flow.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak"
"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak/authentication"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		realm, err := keycloak.NewRealm(ctx, "realm", &keycloak.RealmArgs{
			Realm:   pulumi.String("my-realm"),
			Enabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		flow, err := authentication.NewFlow(ctx, "flow", &authentication.FlowArgs{
			RealmId: realm.ID(),
			Alias:   pulumi.String("my-flow-alias"),
		})
		if err != nil {
			return err
		}
		// first execution
		executionOne, err := authentication.NewExecution(ctx, "executionOne", &authentication.ExecutionArgs{
			RealmId:         realm.ID(),
			ParentFlowAlias: flow.Alias,
			Authenticator:   pulumi.String("auth-cookie"),
			Requirement:     pulumi.String("ALTERNATIVE"),
		})
		if err != nil {
			return err
		}
		// second execution
		_, err = authentication.NewExecution(ctx, "executionTwo", &authentication.ExecutionArgs{
			RealmId:         realm.ID(),
			ParentFlowAlias: flow.Alias,
			Authenticator:   pulumi.String("identity-provider-redirector"),
			Requirement:     pulumi.String("ALTERNATIVE"),
		}, pulumi.DependsOn([]pulumi.Resource{
			executionOne,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Authentication executions can be imported using the formats: `{{realmId}}/{{parentFlowAlias}}/{{authenticationExecutionId}}`.

Example:

bash

```sh $ pulumi import keycloak:authentication/execution:Execution execution_one my-realm/my-flow-alias/30559fcf-6fb8-45ea-8c46-2b86f46ebc17 ```

func GetExecution

func GetExecution(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ExecutionState, opts ...pulumi.ResourceOption) (*Execution, error)

GetExecution gets an existing Execution resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewExecution

func NewExecution(ctx *pulumi.Context,
	name string, args *ExecutionArgs, opts ...pulumi.ResourceOption) (*Execution, error)

NewExecution registers a new resource with the given unique name, arguments, and options.

func (*Execution) ElementType

func (*Execution) ElementType() reflect.Type

func (*Execution) ToExecutionOutput

func (i *Execution) ToExecutionOutput() ExecutionOutput

func (*Execution) ToExecutionOutputWithContext

func (i *Execution) ToExecutionOutputWithContext(ctx context.Context) ExecutionOutput

type ExecutionArgs

type ExecutionArgs struct {
	// The name of the authenticator. This can be found by experimenting with the GUI and looking at HTTP requests within the network tab of your browser's development tools.
	Authenticator pulumi.StringInput
	// The alias of the flow this execution is attached to.
	ParentFlowAlias pulumi.StringInput
	// The realm the authentication execution exists in.
	RealmId pulumi.StringInput
	// The requirement setting, which can be one of `REQUIRED`, `ALTERNATIVE`, `OPTIONAL`, `CONDITIONAL`, or `DISABLED`. Defaults to `DISABLED`.
	Requirement pulumi.StringPtrInput
}

The set of arguments for constructing a Execution resource.

func (ExecutionArgs) ElementType

func (ExecutionArgs) ElementType() reflect.Type

type ExecutionArray

type ExecutionArray []ExecutionInput

func (ExecutionArray) ElementType

func (ExecutionArray) ElementType() reflect.Type

func (ExecutionArray) ToExecutionArrayOutput

func (i ExecutionArray) ToExecutionArrayOutput() ExecutionArrayOutput

func (ExecutionArray) ToExecutionArrayOutputWithContext

func (i ExecutionArray) ToExecutionArrayOutputWithContext(ctx context.Context) ExecutionArrayOutput

type ExecutionArrayInput

type ExecutionArrayInput interface {
	pulumi.Input

	ToExecutionArrayOutput() ExecutionArrayOutput
	ToExecutionArrayOutputWithContext(context.Context) ExecutionArrayOutput
}

ExecutionArrayInput is an input type that accepts ExecutionArray and ExecutionArrayOutput values. You can construct a concrete instance of `ExecutionArrayInput` via:

ExecutionArray{ ExecutionArgs{...} }

type ExecutionArrayOutput

type ExecutionArrayOutput struct{ *pulumi.OutputState }

func (ExecutionArrayOutput) ElementType

func (ExecutionArrayOutput) ElementType() reflect.Type

func (ExecutionArrayOutput) Index

func (ExecutionArrayOutput) ToExecutionArrayOutput

func (o ExecutionArrayOutput) ToExecutionArrayOutput() ExecutionArrayOutput

func (ExecutionArrayOutput) ToExecutionArrayOutputWithContext

func (o ExecutionArrayOutput) ToExecutionArrayOutputWithContext(ctx context.Context) ExecutionArrayOutput

type ExecutionConfig

type ExecutionConfig struct {
	pulumi.CustomResourceState

	// The name of the configuration.
	Alias pulumi.StringOutput `pulumi:"alias"`
	// The configuration. Keys are specific to each configurable authentication execution and not checked when applying.
	Config pulumi.StringMapOutput `pulumi:"config"`
	// The authentication execution this configuration is attached to.
	ExecutionId pulumi.StringOutput `pulumi:"executionId"`
	// The realm the authentication execution exists in.
	RealmId pulumi.StringOutput `pulumi:"realmId"`
}

Allows for managing an authentication execution's configuration. If a particular authentication execution supports additional configuration (such as with the `identity-provider-redirector` execution), this can be managed with this resource.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak"
"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak/authentication"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		realm, err := keycloak.NewRealm(ctx, "realm", &keycloak.RealmArgs{
			Realm:   pulumi.String("my-realm"),
			Enabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		flow, err := authentication.NewFlow(ctx, "flow", &authentication.FlowArgs{
			RealmId: realm.ID(),
			Alias:   pulumi.String("my-flow-alias"),
		})
		if err != nil {
			return err
		}
		execution, err := authentication.NewExecution(ctx, "execution", &authentication.ExecutionArgs{
			RealmId:         realm.ID(),
			ParentFlowAlias: flow.Alias,
			Authenticator:   pulumi.String("identity-provider-redirector"),
		})
		if err != nil {
			return err
		}
		_, err = authentication.NewExecutionConfig(ctx, "config", &authentication.ExecutionConfigArgs{
			RealmId:     realm.ID(),
			ExecutionId: execution.ID(),
			Alias:       pulumi.String("my-config-alias"),
			Config: pulumi.StringMap{
				"defaultProvider": pulumi.String("my-config-default-idp"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Configurations can be imported using the format `{{realm}}/{{authenticationExecutionId}}/{{authenticationExecutionConfigId}}`.

If the `authenticationExecutionId` is incorrect, the import will still be successful.

A subsequent apply will change the `authenticationExecutionId` to the correct one, which causes the configuration to be replaced.

Example:

bash

```sh $ pulumi import keycloak:authentication/executionConfig:ExecutionConfig config my-realm/be081463-ddbf-4b42-9eff-9c97886f24ff/30559fcf-6fb8-45ea-8c46-2b86f46ebc17 ```

func GetExecutionConfig

func GetExecutionConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ExecutionConfigState, opts ...pulumi.ResourceOption) (*ExecutionConfig, error)

GetExecutionConfig gets an existing ExecutionConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewExecutionConfig

func NewExecutionConfig(ctx *pulumi.Context,
	name string, args *ExecutionConfigArgs, opts ...pulumi.ResourceOption) (*ExecutionConfig, error)

NewExecutionConfig registers a new resource with the given unique name, arguments, and options.

func (*ExecutionConfig) ElementType

func (*ExecutionConfig) ElementType() reflect.Type

func (*ExecutionConfig) ToExecutionConfigOutput

func (i *ExecutionConfig) ToExecutionConfigOutput() ExecutionConfigOutput

func (*ExecutionConfig) ToExecutionConfigOutputWithContext

func (i *ExecutionConfig) ToExecutionConfigOutputWithContext(ctx context.Context) ExecutionConfigOutput

type ExecutionConfigArgs

type ExecutionConfigArgs struct {
	// The name of the configuration.
	Alias pulumi.StringInput
	// The configuration. Keys are specific to each configurable authentication execution and not checked when applying.
	Config pulumi.StringMapInput
	// The authentication execution this configuration is attached to.
	ExecutionId pulumi.StringInput
	// The realm the authentication execution exists in.
	RealmId pulumi.StringInput
}

The set of arguments for constructing a ExecutionConfig resource.

func (ExecutionConfigArgs) ElementType

func (ExecutionConfigArgs) ElementType() reflect.Type

type ExecutionConfigArray

type ExecutionConfigArray []ExecutionConfigInput

func (ExecutionConfigArray) ElementType

func (ExecutionConfigArray) ElementType() reflect.Type

func (ExecutionConfigArray) ToExecutionConfigArrayOutput

func (i ExecutionConfigArray) ToExecutionConfigArrayOutput() ExecutionConfigArrayOutput

func (ExecutionConfigArray) ToExecutionConfigArrayOutputWithContext

func (i ExecutionConfigArray) ToExecutionConfigArrayOutputWithContext(ctx context.Context) ExecutionConfigArrayOutput

type ExecutionConfigArrayInput

type ExecutionConfigArrayInput interface {
	pulumi.Input

	ToExecutionConfigArrayOutput() ExecutionConfigArrayOutput
	ToExecutionConfigArrayOutputWithContext(context.Context) ExecutionConfigArrayOutput
}

ExecutionConfigArrayInput is an input type that accepts ExecutionConfigArray and ExecutionConfigArrayOutput values. You can construct a concrete instance of `ExecutionConfigArrayInput` via:

ExecutionConfigArray{ ExecutionConfigArgs{...} }

type ExecutionConfigArrayOutput

type ExecutionConfigArrayOutput struct{ *pulumi.OutputState }

func (ExecutionConfigArrayOutput) ElementType

func (ExecutionConfigArrayOutput) ElementType() reflect.Type

func (ExecutionConfigArrayOutput) Index

func (ExecutionConfigArrayOutput) ToExecutionConfigArrayOutput

func (o ExecutionConfigArrayOutput) ToExecutionConfigArrayOutput() ExecutionConfigArrayOutput

func (ExecutionConfigArrayOutput) ToExecutionConfigArrayOutputWithContext

func (o ExecutionConfigArrayOutput) ToExecutionConfigArrayOutputWithContext(ctx context.Context) ExecutionConfigArrayOutput

type ExecutionConfigInput

type ExecutionConfigInput interface {
	pulumi.Input

	ToExecutionConfigOutput() ExecutionConfigOutput
	ToExecutionConfigOutputWithContext(ctx context.Context) ExecutionConfigOutput
}

type ExecutionConfigMap

type ExecutionConfigMap map[string]ExecutionConfigInput

func (ExecutionConfigMap) ElementType

func (ExecutionConfigMap) ElementType() reflect.Type

func (ExecutionConfigMap) ToExecutionConfigMapOutput

func (i ExecutionConfigMap) ToExecutionConfigMapOutput() ExecutionConfigMapOutput

func (ExecutionConfigMap) ToExecutionConfigMapOutputWithContext

func (i ExecutionConfigMap) ToExecutionConfigMapOutputWithContext(ctx context.Context) ExecutionConfigMapOutput

type ExecutionConfigMapInput

type ExecutionConfigMapInput interface {
	pulumi.Input

	ToExecutionConfigMapOutput() ExecutionConfigMapOutput
	ToExecutionConfigMapOutputWithContext(context.Context) ExecutionConfigMapOutput
}

ExecutionConfigMapInput is an input type that accepts ExecutionConfigMap and ExecutionConfigMapOutput values. You can construct a concrete instance of `ExecutionConfigMapInput` via:

ExecutionConfigMap{ "key": ExecutionConfigArgs{...} }

type ExecutionConfigMapOutput

type ExecutionConfigMapOutput struct{ *pulumi.OutputState }

func (ExecutionConfigMapOutput) ElementType

func (ExecutionConfigMapOutput) ElementType() reflect.Type

func (ExecutionConfigMapOutput) MapIndex

func (ExecutionConfigMapOutput) ToExecutionConfigMapOutput

func (o ExecutionConfigMapOutput) ToExecutionConfigMapOutput() ExecutionConfigMapOutput

func (ExecutionConfigMapOutput) ToExecutionConfigMapOutputWithContext

func (o ExecutionConfigMapOutput) ToExecutionConfigMapOutputWithContext(ctx context.Context) ExecutionConfigMapOutput

type ExecutionConfigOutput

type ExecutionConfigOutput struct{ *pulumi.OutputState }

func (ExecutionConfigOutput) Alias

The name of the configuration.

func (ExecutionConfigOutput) Config

The configuration. Keys are specific to each configurable authentication execution and not checked when applying.

func (ExecutionConfigOutput) ElementType

func (ExecutionConfigOutput) ElementType() reflect.Type

func (ExecutionConfigOutput) ExecutionId

func (o ExecutionConfigOutput) ExecutionId() pulumi.StringOutput

The authentication execution this configuration is attached to.

func (ExecutionConfigOutput) RealmId

The realm the authentication execution exists in.

func (ExecutionConfigOutput) ToExecutionConfigOutput

func (o ExecutionConfigOutput) ToExecutionConfigOutput() ExecutionConfigOutput

func (ExecutionConfigOutput) ToExecutionConfigOutputWithContext

func (o ExecutionConfigOutput) ToExecutionConfigOutputWithContext(ctx context.Context) ExecutionConfigOutput

type ExecutionConfigState

type ExecutionConfigState struct {
	// The name of the configuration.
	Alias pulumi.StringPtrInput
	// The configuration. Keys are specific to each configurable authentication execution and not checked when applying.
	Config pulumi.StringMapInput
	// The authentication execution this configuration is attached to.
	ExecutionId pulumi.StringPtrInput
	// The realm the authentication execution exists in.
	RealmId pulumi.StringPtrInput
}

func (ExecutionConfigState) ElementType

func (ExecutionConfigState) ElementType() reflect.Type

type ExecutionInput

type ExecutionInput interface {
	pulumi.Input

	ToExecutionOutput() ExecutionOutput
	ToExecutionOutputWithContext(ctx context.Context) ExecutionOutput
}

type ExecutionMap

type ExecutionMap map[string]ExecutionInput

func (ExecutionMap) ElementType

func (ExecutionMap) ElementType() reflect.Type

func (ExecutionMap) ToExecutionMapOutput

func (i ExecutionMap) ToExecutionMapOutput() ExecutionMapOutput

func (ExecutionMap) ToExecutionMapOutputWithContext

func (i ExecutionMap) ToExecutionMapOutputWithContext(ctx context.Context) ExecutionMapOutput

type ExecutionMapInput

type ExecutionMapInput interface {
	pulumi.Input

	ToExecutionMapOutput() ExecutionMapOutput
	ToExecutionMapOutputWithContext(context.Context) ExecutionMapOutput
}

ExecutionMapInput is an input type that accepts ExecutionMap and ExecutionMapOutput values. You can construct a concrete instance of `ExecutionMapInput` via:

ExecutionMap{ "key": ExecutionArgs{...} }

type ExecutionMapOutput

type ExecutionMapOutput struct{ *pulumi.OutputState }

func (ExecutionMapOutput) ElementType

func (ExecutionMapOutput) ElementType() reflect.Type

func (ExecutionMapOutput) MapIndex

func (ExecutionMapOutput) ToExecutionMapOutput

func (o ExecutionMapOutput) ToExecutionMapOutput() ExecutionMapOutput

func (ExecutionMapOutput) ToExecutionMapOutputWithContext

func (o ExecutionMapOutput) ToExecutionMapOutputWithContext(ctx context.Context) ExecutionMapOutput

type ExecutionOutput

type ExecutionOutput struct{ *pulumi.OutputState }

func (ExecutionOutput) Authenticator

func (o ExecutionOutput) Authenticator() pulumi.StringOutput

The name of the authenticator. This can be found by experimenting with the GUI and looking at HTTP requests within the network tab of your browser's development tools.

func (ExecutionOutput) ElementType

func (ExecutionOutput) ElementType() reflect.Type

func (ExecutionOutput) ParentFlowAlias

func (o ExecutionOutput) ParentFlowAlias() pulumi.StringOutput

The alias of the flow this execution is attached to.

func (ExecutionOutput) RealmId

func (o ExecutionOutput) RealmId() pulumi.StringOutput

The realm the authentication execution exists in.

func (ExecutionOutput) Requirement

func (o ExecutionOutput) Requirement() pulumi.StringPtrOutput

The requirement setting, which can be one of `REQUIRED`, `ALTERNATIVE`, `OPTIONAL`, `CONDITIONAL`, or `DISABLED`. Defaults to `DISABLED`.

func (ExecutionOutput) ToExecutionOutput

func (o ExecutionOutput) ToExecutionOutput() ExecutionOutput

func (ExecutionOutput) ToExecutionOutputWithContext

func (o ExecutionOutput) ToExecutionOutputWithContext(ctx context.Context) ExecutionOutput

type ExecutionState

type ExecutionState struct {
	// The name of the authenticator. This can be found by experimenting with the GUI and looking at HTTP requests within the network tab of your browser's development tools.
	Authenticator pulumi.StringPtrInput
	// The alias of the flow this execution is attached to.
	ParentFlowAlias pulumi.StringPtrInput
	// The realm the authentication execution exists in.
	RealmId pulumi.StringPtrInput
	// The requirement setting, which can be one of `REQUIRED`, `ALTERNATIVE`, `OPTIONAL`, `CONDITIONAL`, or `DISABLED`. Defaults to `DISABLED`.
	Requirement pulumi.StringPtrInput
}

func (ExecutionState) ElementType

func (ExecutionState) ElementType() reflect.Type

type Flow

type Flow struct {
	pulumi.CustomResourceState

	// The alias for this authentication flow.
	Alias pulumi.StringOutput `pulumi:"alias"`
	// A description for the authentication flow.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The type of authentication flow to create. Valid choices include `basic-flow` and `client-flow`. Defaults to `basic-flow`.
	ProviderId pulumi.StringPtrOutput `pulumi:"providerId"`
	// The realm that the authentication flow exists in.
	RealmId pulumi.StringOutput `pulumi:"realmId"`
}

Allows for creating and managing an authentication flow within Keycloak.

[Authentication flows](https://www.keycloak.org/docs/11.0/server_admin/index.html#_authentication-flows) describe a sequence of actions that a user or service must perform in order to be authenticated to Keycloak. The authentication flow itself is a container for these actions, which are otherwise known as executions.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak"
"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak/authentication"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		realm, err := keycloak.NewRealm(ctx, "realm", &keycloak.RealmArgs{
			Realm:   pulumi.String("my-realm"),
			Enabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		flow, err := authentication.NewFlow(ctx, "flow", &authentication.FlowArgs{
			RealmId: realm.ID(),
			Alias:   pulumi.String("my-flow-alias"),
		})
		if err != nil {
			return err
		}
		_, err = authentication.NewExecution(ctx, "execution", &authentication.ExecutionArgs{
			RealmId:         realm.ID(),
			ParentFlowAlias: flow.Alias,
			Authenticator:   pulumi.String("identity-provider-redirector"),
			Requirement:     pulumi.String("REQUIRED"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Authentication flows can be imported using the format `{{realmId}}/{{authenticationFlowId}}`. The authentication flow ID is

typically a GUID which is autogenerated when the flow is created via Keycloak.

Unfortunately, it is not trivial to retrieve the authentication flow ID from the UI. The best way to do this is to visit the

"Authentication" page in Keycloak, and use the network tab of your browser to view the response of the API call to `/auth/admin/realms/${realm}/authentication/flows`,

which will be a list of authentication flows.

Example:

bash

```sh $ pulumi import keycloak:authentication/flow:Flow flow my-realm/e9a5641e-778c-4daf-89c0-f4ef617987d1 ```

func GetFlow

func GetFlow(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FlowState, opts ...pulumi.ResourceOption) (*Flow, error)

GetFlow gets an existing Flow resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFlow

func NewFlow(ctx *pulumi.Context,
	name string, args *FlowArgs, opts ...pulumi.ResourceOption) (*Flow, error)

NewFlow registers a new resource with the given unique name, arguments, and options.

func (*Flow) ElementType

func (*Flow) ElementType() reflect.Type

func (*Flow) ToFlowOutput

func (i *Flow) ToFlowOutput() FlowOutput

func (*Flow) ToFlowOutputWithContext

func (i *Flow) ToFlowOutputWithContext(ctx context.Context) FlowOutput

type FlowArgs

type FlowArgs struct {
	// The alias for this authentication flow.
	Alias pulumi.StringInput
	// A description for the authentication flow.
	Description pulumi.StringPtrInput
	// The type of authentication flow to create. Valid choices include `basic-flow` and `client-flow`. Defaults to `basic-flow`.
	ProviderId pulumi.StringPtrInput
	// The realm that the authentication flow exists in.
	RealmId pulumi.StringInput
}

The set of arguments for constructing a Flow resource.

func (FlowArgs) ElementType

func (FlowArgs) ElementType() reflect.Type

type FlowArray

type FlowArray []FlowInput

func (FlowArray) ElementType

func (FlowArray) ElementType() reflect.Type

func (FlowArray) ToFlowArrayOutput

func (i FlowArray) ToFlowArrayOutput() FlowArrayOutput

func (FlowArray) ToFlowArrayOutputWithContext

func (i FlowArray) ToFlowArrayOutputWithContext(ctx context.Context) FlowArrayOutput

type FlowArrayInput

type FlowArrayInput interface {
	pulumi.Input

	ToFlowArrayOutput() FlowArrayOutput
	ToFlowArrayOutputWithContext(context.Context) FlowArrayOutput
}

FlowArrayInput is an input type that accepts FlowArray and FlowArrayOutput values. You can construct a concrete instance of `FlowArrayInput` via:

FlowArray{ FlowArgs{...} }

type FlowArrayOutput

type FlowArrayOutput struct{ *pulumi.OutputState }

func (FlowArrayOutput) ElementType

func (FlowArrayOutput) ElementType() reflect.Type

func (FlowArrayOutput) Index

func (FlowArrayOutput) ToFlowArrayOutput

func (o FlowArrayOutput) ToFlowArrayOutput() FlowArrayOutput

func (FlowArrayOutput) ToFlowArrayOutputWithContext

func (o FlowArrayOutput) ToFlowArrayOutputWithContext(ctx context.Context) FlowArrayOutput

type FlowInput

type FlowInput interface {
	pulumi.Input

	ToFlowOutput() FlowOutput
	ToFlowOutputWithContext(ctx context.Context) FlowOutput
}

type FlowMap

type FlowMap map[string]FlowInput

func (FlowMap) ElementType

func (FlowMap) ElementType() reflect.Type

func (FlowMap) ToFlowMapOutput

func (i FlowMap) ToFlowMapOutput() FlowMapOutput

func (FlowMap) ToFlowMapOutputWithContext

func (i FlowMap) ToFlowMapOutputWithContext(ctx context.Context) FlowMapOutput

type FlowMapInput

type FlowMapInput interface {
	pulumi.Input

	ToFlowMapOutput() FlowMapOutput
	ToFlowMapOutputWithContext(context.Context) FlowMapOutput
}

FlowMapInput is an input type that accepts FlowMap and FlowMapOutput values. You can construct a concrete instance of `FlowMapInput` via:

FlowMap{ "key": FlowArgs{...} }

type FlowMapOutput

type FlowMapOutput struct{ *pulumi.OutputState }

func (FlowMapOutput) ElementType

func (FlowMapOutput) ElementType() reflect.Type

func (FlowMapOutput) MapIndex

func (FlowMapOutput) ToFlowMapOutput

func (o FlowMapOutput) ToFlowMapOutput() FlowMapOutput

func (FlowMapOutput) ToFlowMapOutputWithContext

func (o FlowMapOutput) ToFlowMapOutputWithContext(ctx context.Context) FlowMapOutput

type FlowOutput

type FlowOutput struct{ *pulumi.OutputState }

func (FlowOutput) Alias

func (o FlowOutput) Alias() pulumi.StringOutput

The alias for this authentication flow.

func (FlowOutput) Description

func (o FlowOutput) Description() pulumi.StringPtrOutput

A description for the authentication flow.

func (FlowOutput) ElementType

func (FlowOutput) ElementType() reflect.Type

func (FlowOutput) ProviderId

func (o FlowOutput) ProviderId() pulumi.StringPtrOutput

The type of authentication flow to create. Valid choices include `basic-flow` and `client-flow`. Defaults to `basic-flow`.

func (FlowOutput) RealmId

func (o FlowOutput) RealmId() pulumi.StringOutput

The realm that the authentication flow exists in.

func (FlowOutput) ToFlowOutput

func (o FlowOutput) ToFlowOutput() FlowOutput

func (FlowOutput) ToFlowOutputWithContext

func (o FlowOutput) ToFlowOutputWithContext(ctx context.Context) FlowOutput

type FlowState

type FlowState struct {
	// The alias for this authentication flow.
	Alias pulumi.StringPtrInput
	// A description for the authentication flow.
	Description pulumi.StringPtrInput
	// The type of authentication flow to create. Valid choices include `basic-flow` and `client-flow`. Defaults to `basic-flow`.
	ProviderId pulumi.StringPtrInput
	// The realm that the authentication flow exists in.
	RealmId pulumi.StringPtrInput
}

func (FlowState) ElementType

func (FlowState) ElementType() reflect.Type

type Subflow

type Subflow struct {
	pulumi.CustomResourceState

	// The alias for this authentication subflow.
	Alias pulumi.StringOutput `pulumi:"alias"`
	// The name of the authenticator. Might be needed to be set with certain custom subflows with specific
	// authenticators. In general this will remain empty.
	Authenticator pulumi.StringPtrOutput `pulumi:"authenticator"`
	// A description for the authentication subflow.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The alias for the parent authentication flow.
	ParentFlowAlias pulumi.StringOutput `pulumi:"parentFlowAlias"`
	// The type of authentication subflow to create. Valid choices include `basic-flow`, `form-flow`
	// and `client-flow`. Defaults to `basic-flow`.
	ProviderId pulumi.StringPtrOutput `pulumi:"providerId"`
	// The realm that the authentication subflow exists in.
	RealmId pulumi.StringOutput `pulumi:"realmId"`
	// The requirement setting, which can be one of `REQUIRED`, `ALTERNATIVE`, `OPTIONAL`, `CONDITIONAL`,
	// or `DISABLED`. Defaults to `DISABLED`.
	Requirement pulumi.StringPtrOutput `pulumi:"requirement"`
}

Allows for creating and managing an authentication subflow within Keycloak.

Like authentication flows, authentication subflows are containers for authentication executions. As its name implies, an authentication subflow is contained in an authentication flow.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak"
"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak/authentication"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		realm, err := keycloak.NewRealm(ctx, "realm", &keycloak.RealmArgs{
			Realm:   pulumi.String("my-realm"),
			Enabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		flow, err := authentication.NewFlow(ctx, "flow", &authentication.FlowArgs{
			RealmId: realm.ID(),
			Alias:   pulumi.String("my-flow-alias"),
		})
		if err != nil {
			return err
		}
		_, err = authentication.NewSubflow(ctx, "subflow", &authentication.SubflowArgs{
			RealmId:         realm.ID(),
			Alias:           pulumi.String("my-subflow-alias"),
			ParentFlowAlias: flow.Alias,
			ProviderId:      pulumi.String("basic-flow"),
			Requirement:     pulumi.String("ALTERNATIVE"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Authentication flows can be imported using the format `{{realmId}}/{{parentFlowAlias}}/{{authenticationSubflowId}}`.

The authentication subflow ID is typically a GUID which is autogenerated when the subflow is created via Keycloak.

Unfortunately, it is not trivial to retrieve the authentication subflow ID from the UI. The best way to do this is to visit the

"Authentication" page in Keycloak, and use the network tab of your browser to view the response of the API call to

`/auth/admin/realms/${realm}/authentication/flows/{flow}/executions`, which will be a list of executions, where the subflow will be.

__The subflow ID is contained in the `flowID` field__ (not, as one could guess, the `id` field).

Example:

bash

```sh $ pulumi import keycloak:authentication/subflow:Subflow subflow my-realm/"Parent Flow"/3bad1172-bb5c-4a77-9615-c2606eb03081 ```

func GetSubflow

func GetSubflow(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubflowState, opts ...pulumi.ResourceOption) (*Subflow, error)

GetSubflow gets an existing Subflow resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSubflow

func NewSubflow(ctx *pulumi.Context,
	name string, args *SubflowArgs, opts ...pulumi.ResourceOption) (*Subflow, error)

NewSubflow registers a new resource with the given unique name, arguments, and options.

func (*Subflow) ElementType

func (*Subflow) ElementType() reflect.Type

func (*Subflow) ToSubflowOutput

func (i *Subflow) ToSubflowOutput() SubflowOutput

func (*Subflow) ToSubflowOutputWithContext

func (i *Subflow) ToSubflowOutputWithContext(ctx context.Context) SubflowOutput

type SubflowArgs

type SubflowArgs struct {
	// The alias for this authentication subflow.
	Alias pulumi.StringInput
	// The name of the authenticator. Might be needed to be set with certain custom subflows with specific
	// authenticators. In general this will remain empty.
	Authenticator pulumi.StringPtrInput
	// A description for the authentication subflow.
	Description pulumi.StringPtrInput
	// The alias for the parent authentication flow.
	ParentFlowAlias pulumi.StringInput
	// The type of authentication subflow to create. Valid choices include `basic-flow`, `form-flow`
	// and `client-flow`. Defaults to `basic-flow`.
	ProviderId pulumi.StringPtrInput
	// The realm that the authentication subflow exists in.
	RealmId pulumi.StringInput
	// The requirement setting, which can be one of `REQUIRED`, `ALTERNATIVE`, `OPTIONAL`, `CONDITIONAL`,
	// or `DISABLED`. Defaults to `DISABLED`.
	Requirement pulumi.StringPtrInput
}

The set of arguments for constructing a Subflow resource.

func (SubflowArgs) ElementType

func (SubflowArgs) ElementType() reflect.Type

type SubflowArray

type SubflowArray []SubflowInput

func (SubflowArray) ElementType

func (SubflowArray) ElementType() reflect.Type

func (SubflowArray) ToSubflowArrayOutput

func (i SubflowArray) ToSubflowArrayOutput() SubflowArrayOutput

func (SubflowArray) ToSubflowArrayOutputWithContext

func (i SubflowArray) ToSubflowArrayOutputWithContext(ctx context.Context) SubflowArrayOutput

type SubflowArrayInput

type SubflowArrayInput interface {
	pulumi.Input

	ToSubflowArrayOutput() SubflowArrayOutput
	ToSubflowArrayOutputWithContext(context.Context) SubflowArrayOutput
}

SubflowArrayInput is an input type that accepts SubflowArray and SubflowArrayOutput values. You can construct a concrete instance of `SubflowArrayInput` via:

SubflowArray{ SubflowArgs{...} }

type SubflowArrayOutput

type SubflowArrayOutput struct{ *pulumi.OutputState }

func (SubflowArrayOutput) ElementType

func (SubflowArrayOutput) ElementType() reflect.Type

func (SubflowArrayOutput) Index

func (SubflowArrayOutput) ToSubflowArrayOutput

func (o SubflowArrayOutput) ToSubflowArrayOutput() SubflowArrayOutput

func (SubflowArrayOutput) ToSubflowArrayOutputWithContext

func (o SubflowArrayOutput) ToSubflowArrayOutputWithContext(ctx context.Context) SubflowArrayOutput

type SubflowInput

type SubflowInput interface {
	pulumi.Input

	ToSubflowOutput() SubflowOutput
	ToSubflowOutputWithContext(ctx context.Context) SubflowOutput
}

type SubflowMap

type SubflowMap map[string]SubflowInput

func (SubflowMap) ElementType

func (SubflowMap) ElementType() reflect.Type

func (SubflowMap) ToSubflowMapOutput

func (i SubflowMap) ToSubflowMapOutput() SubflowMapOutput

func (SubflowMap) ToSubflowMapOutputWithContext

func (i SubflowMap) ToSubflowMapOutputWithContext(ctx context.Context) SubflowMapOutput

type SubflowMapInput

type SubflowMapInput interface {
	pulumi.Input

	ToSubflowMapOutput() SubflowMapOutput
	ToSubflowMapOutputWithContext(context.Context) SubflowMapOutput
}

SubflowMapInput is an input type that accepts SubflowMap and SubflowMapOutput values. You can construct a concrete instance of `SubflowMapInput` via:

SubflowMap{ "key": SubflowArgs{...} }

type SubflowMapOutput

type SubflowMapOutput struct{ *pulumi.OutputState }

func (SubflowMapOutput) ElementType

func (SubflowMapOutput) ElementType() reflect.Type

func (SubflowMapOutput) MapIndex

func (SubflowMapOutput) ToSubflowMapOutput

func (o SubflowMapOutput) ToSubflowMapOutput() SubflowMapOutput

func (SubflowMapOutput) ToSubflowMapOutputWithContext

func (o SubflowMapOutput) ToSubflowMapOutputWithContext(ctx context.Context) SubflowMapOutput

type SubflowOutput

type SubflowOutput struct{ *pulumi.OutputState }

func (SubflowOutput) Alias

func (o SubflowOutput) Alias() pulumi.StringOutput

The alias for this authentication subflow.

func (SubflowOutput) Authenticator

func (o SubflowOutput) Authenticator() pulumi.StringPtrOutput

The name of the authenticator. Might be needed to be set with certain custom subflows with specific authenticators. In general this will remain empty.

func (SubflowOutput) Description

func (o SubflowOutput) Description() pulumi.StringPtrOutput

A description for the authentication subflow.

func (SubflowOutput) ElementType

func (SubflowOutput) ElementType() reflect.Type

func (SubflowOutput) ParentFlowAlias

func (o SubflowOutput) ParentFlowAlias() pulumi.StringOutput

The alias for the parent authentication flow.

func (SubflowOutput) ProviderId

func (o SubflowOutput) ProviderId() pulumi.StringPtrOutput

The type of authentication subflow to create. Valid choices include `basic-flow`, `form-flow` and `client-flow`. Defaults to `basic-flow`.

func (SubflowOutput) RealmId

func (o SubflowOutput) RealmId() pulumi.StringOutput

The realm that the authentication subflow exists in.

func (SubflowOutput) Requirement

func (o SubflowOutput) Requirement() pulumi.StringPtrOutput

The requirement setting, which can be one of `REQUIRED`, `ALTERNATIVE`, `OPTIONAL`, `CONDITIONAL`, or `DISABLED`. Defaults to `DISABLED`.

func (SubflowOutput) ToSubflowOutput

func (o SubflowOutput) ToSubflowOutput() SubflowOutput

func (SubflowOutput) ToSubflowOutputWithContext

func (o SubflowOutput) ToSubflowOutputWithContext(ctx context.Context) SubflowOutput

type SubflowState

type SubflowState struct {
	// The alias for this authentication subflow.
	Alias pulumi.StringPtrInput
	// The name of the authenticator. Might be needed to be set with certain custom subflows with specific
	// authenticators. In general this will remain empty.
	Authenticator pulumi.StringPtrInput
	// A description for the authentication subflow.
	Description pulumi.StringPtrInput
	// The alias for the parent authentication flow.
	ParentFlowAlias pulumi.StringPtrInput
	// The type of authentication subflow to create. Valid choices include `basic-flow`, `form-flow`
	// and `client-flow`. Defaults to `basic-flow`.
	ProviderId pulumi.StringPtrInput
	// The realm that the authentication subflow exists in.
	RealmId pulumi.StringPtrInput
	// The requirement setting, which can be one of `REQUIRED`, `ALTERNATIVE`, `OPTIONAL`, `CONDITIONAL`,
	// or `DISABLED`. Defaults to `DISABLED`.
	Requirement pulumi.StringPtrInput
}

func (SubflowState) ElementType

func (SubflowState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL