models

package
v1.5.1 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2024 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ApproverPolicyGroupObject = map[string]attr.Type{
	"conditions_logical_operator": types.StringType,
	"attribute_conditions":        basetypes.SetType{ElemType: basetypes.ObjectType{AttrTypes: AttributeFilterObject}},
}
View Source
var ApproverPolicyObject = map[string]attr.Type{
	"approver_groups_relationship": types.StringType,
	"approver_groups":              basetypes.SetType{ElemType: basetypes.ObjectType{AttrTypes: ApproverPolicyGroupObject}},
}
View Source
var AttributeFilterObject = map[string]attr.Type{
	"operator":        types.StringType,
	"attribute_type":  types.StringType,
	"attribute_names": basetypes.SetType{ElemType: types.StringType},
	"integration_id":  types.StringType,
}
View Source
var GranteeFilterGroupObject = map[string]attr.Type{
	"conditions_logical_operator": types.StringType,
	"attribute_conditions":        basetypes.SetType{ElemType: basetypes.ObjectType{AttrTypes: AttributeFilterObject}},
}
View Source
var IdentityObject = map[string]attr.Type{
	"name": types.StringType,
	"type": types.StringType,
}

Functions

This section is empty.

Types

type AccessBundleModel added in v0.2.3

type AccessBundleModel struct {
	ID                 types.String        `tfsdk:"id"`
	Name               types.String        `tfsdk:"name"`
	IntegrationTargets []IntegrationTarget `tfsdk:"integration_targets"`
}

AccessBundleModel describes the resource data model.

type AccessFlowModel added in v0.2.2

type AccessFlowModel struct {
	ID                  types.String        `tfsdk:"id"`
	Name                types.String        `tfsdk:"name"`
	Active              types.Bool          `tfsdk:"active"`
	RevokeAfterInSec    types.Number        `tfsdk:"revoke_after_in_sec"`
	Trigger             *Trigger            `tfsdk:"trigger"`
	Grantees            types.Set           `tfsdk:"grantees"`
	GranteesFilterGroup types.Object        `tfsdk:"grantees_conditions_group"`
	IntegrationTargets  []IntegrationTarget `tfsdk:"integration_targets"`
	BundleTargets       []BundleTarget      `tfsdk:"bundle_targets"`
	Approvers           types.Set           `tfsdk:"approvers"`
	ApproverPolicy      types.Object        `tfsdk:"approver_policy"`
	Settings            *Settings           `tfsdk:"settings"`
	Labels              types.List          `tfsdk:"labels"`
}

AccessFlowModel describes the resource data model.

type ApproverGroup added in v1.2.0

type ApproverGroup struct {
	Operator   types.String `tfsdk:"conditions_logical_operator"`
	Conditions types.Set    `tfsdk:"attribute_conditions"`
}

type ApproverPolicy added in v1.2.0

type ApproverPolicy struct {
	GroupsRelationship types.String `tfsdk:"approver_groups_relationship"`
	Groups             types.Set    `tfsdk:"approver_groups"`
}

type AttributeFilter added in v1.0.0

type AttributeFilter struct {
	Operator       types.String `tfsdk:"operator"`
	AttributeType  types.String `tfsdk:"attribute_type"`
	AttributeNames types.Set    `tfsdk:"attribute_names"`
	IntegrationID  types.String `tfsdk:"integration_id"`
}

type AwsSecret

type AwsSecret struct {
	Region   types.String `tfsdk:"region"`
	SecretID types.String `tfsdk:"secret_id"`
}

type BundleTarget added in v0.2.3

type BundleTarget struct {
	Name types.String `tfsdk:"name"`
}

type GcpSecret

type GcpSecret struct {
	Project  types.String `tfsdk:"project"`
	SecretID types.String `tfsdk:"secret_id"`
}

type GranteeFilterGroup added in v1.0.0

type GranteeFilterGroup struct {
	Operator types.String `tfsdk:"conditions_logical_operator"`
	Filters  types.Set    `tfsdk:"attribute_conditions"`
}

type HashicorpVaultSecret added in v1.3.0

type HashicorpVaultSecret struct {
	SecretEngine types.String `tfsdk:"secret_engine"`
	Path         types.String `tfsdk:"path"`
}

type Identity added in v0.2.2

type Identity struct {
	Name types.String `tfsdk:"name"`
	Type types.String `tfsdk:"type"`
}

type IntegrationModel

type IntegrationModel struct {
	ID                     types.String           `tfsdk:"id"`
	Name                   types.String           `tfsdk:"name"`
	Type                   types.String           `tfsdk:"type"`
	ConnectorID            types.String           `tfsdk:"connector_id"`
	ConnectedResourceTypes types.Set              `tfsdk:"connected_resource_types"`
	Metadata               types.Map              `tfsdk:"metadata"`
	CustomAccessDetails    types.String           `tfsdk:"custom_access_details"`
	AwsSecret              *AwsSecret             `tfsdk:"aws_secret"`
	GcpSecret              *GcpSecret             `tfsdk:"gcp_secret"`
	KubernetesSecret       *KubernetesSecret      `tfsdk:"kubernetes_secret"`
	HashicorpVaultSecret   *HashicorpVaultSecret  `tfsdk:"hashicorp_vault_secret"`
	ResourceOwnerMappings  []ResourceOwnerMapping `tfsdk:"resource_owner_mappings"`
	IntegrationOwners      []IntegrationOwner     `tfsdk:"integration_owners"`
}

IntegrationModel describes the resource data model.

type IntegrationOwner added in v1.1.0

type IntegrationOwner struct {
	IntegrationId  types.String   `tfsdk:"integration_id"`
	AttributeType  types.String   `tfsdk:"attribute"`
	AttributeValue []types.String `tfsdk:"value"`
}

type IntegrationTarget added in v0.2.2

type IntegrationTarget struct {
	Name                   types.String     `tfsdk:"name"`
	ResourceType           types.String     `tfsdk:"resource_type"`
	ResourceIncludeFilters []ResourceFilter `tfsdk:"resource_include_filters"`
	ResourceExcludeFilters []ResourceFilter `tfsdk:"resource_exclude_filters"`
	Permissions            types.Set        `tfsdk:"permissions"`
}

type KubernetesSecret

type KubernetesSecret struct {
	Namespace types.String `tfsdk:"namespace"`
	Name      types.String `tfsdk:"name"`
}

type ManualWebhookAuthenticationConfigModel added in v1.5.0

type ManualWebhookAuthenticationConfigModel struct {
	Oauth *WebhookOAuthConfigModel `tfsdk:"oauth"`
}

type ManualWebhookHttpRequestTypeModel added in v1.5.0

type ManualWebhookHttpRequestTypeModel struct {
	Url     types.String `tfsdk:"url"`
	Method  types.String `tfsdk:"method"`
	Headers types.Map    `tfsdk:"headers"`
}

type ManualWebhookIntegrationTypeModel added in v1.5.0

type ManualWebhookIntegrationTypeModel struct {
	IntegrationId types.String `tfsdk:"integration_id"`
	ActionName    types.String `tfsdk:"action_name"`
}

type ManualWebhookModel added in v1.5.0

type ManualWebhookModel struct {
	ID                           types.String                            `tfsdk:"id"`
	Name                         types.String                            `tfsdk:"name"`
	Active                       types.Bool                              `tfsdk:"active"`
	Type                         ManualWebhookTypeModel                  `tfsdk:"type"`
	BodyTemplate                 types.String                            `tfsdk:"body_template"`
	ResponseValidators           []ManualWebhookResponseValidatorModel   `tfsdk:"response_validators"`
	TimeoutInSec                 types.Int64                             `tfsdk:"timeout_in_sec"`
	AuthenticationConfig         *ManualWebhookAuthenticationConfigModel `tfsdk:"authentication_config"`
	CustomValidationErrorMessage types.String                            `tfsdk:"custom_validation_error_message"`
}

ManualWebhookModel describes the resource data model.

type ManualWebhookResponseValidatorModel added in v1.5.0

type ManualWebhookResponseValidatorModel struct {
	JsonPath       types.String   `tfsdk:"json_path"`
	ExpectedValues []types.String `tfsdk:"expected_values"`
}

type ManualWebhookTypeModel added in v1.5.0

type ManualWebhookTypeModel struct {
	HttpRequest *ManualWebhookHttpRequestTypeModel `tfsdk:"http_request"`
	Integration *ManualWebhookIntegrationTypeModel `tfsdk:"integration"`
}

type ResourceFilter added in v0.2.2

type ResourceFilter struct {
	Type  types.String `tfsdk:"type"`
	Key   types.String `tfsdk:"key"`
	Value types.String `tfsdk:"value"`
}

type ResourceOwnerMapping added in v1.1.0

type ResourceOwnerMapping struct {
	TagName                types.String `tfsdk:"key_name"`
	AttributeType          types.String `tfsdk:"attribute"`
	AttributeIntegrationId types.String `tfsdk:"attribute_integration_id"`
}

type Settings added in v0.2.2

type Settings struct {
	RequireJustificationOnRequestAgain types.Bool `tfsdk:"require_justification_on_request_again"`
	RequireAllApprovers                types.Bool `tfsdk:"require_all_approvers"`
	ApproverCannotSelfApprove          types.Bool `tfsdk:"approver_cannot_self_approve"`
	RequireMFA                         types.Bool `tfsdk:"require_mfa"`
}

type Timeframe added in v0.2.2

type Timeframe struct {
	StartTime  types.String `tfsdk:"start_time"`
	EndTime    types.String `tfsdk:"end_time"`
	DaysInWeek types.Set    `tfsdk:"days_in_week"`
	TimeZone   types.String `tfsdk:"time_zone"`
}

type Trigger added in v0.2.2

type Trigger struct {
	Type      types.String `tfsdk:"type"`
	Timeframe *Timeframe   `tfsdk:"timeframe"`
}

type WebhookOAuthConfigModel added in v1.5.0

type WebhookOAuthConfigModel struct {
	ClientId         types.String   `tfsdk:"client_id"`
	ClientSecret     types.String   `tfsdk:"client_secret"`
	TokenEndpointUrl types.String   `tfsdk:"token_endpoint_url"`
	Scopes           []types.String `tfsdk:"scopes"`
}

Jump to

Keyboard shortcuts

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