Documentation
¶
Index ¶
- func NewRole_Override(r Role, scope constructs.Construct, id *string, config *RoleConfig)
- func Role_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func Role_IsConstruct(x interface{}) *bool
- func Role_IsTerraformElement(x interface{}) *bool
- func Role_IsTerraformResource(x interface{}) *bool
- func Role_TfResourceType() *string
- type Role
- type RoleConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewRole_Override ¶
func NewRole_Override(r Role, scope constructs.Construct, id *string, config *RoleConfig)
Create a new {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role postgresql_role} Resource.
func Role_GenerateConfigForImport ¶
func Role_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a Role resource upon running "cdktf plan <stack-name>".
func Role_IsConstruct ¶
func Role_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func Role_TfResourceType ¶
func Role_TfResourceType() *string
Types ¶
type Role ¶
type Role interface {
cdktf.TerraformResource
AssumeRole() *string
SetAssumeRole(val *string)
AssumeRoleInput() *string
BypassRowLevelSecurity() interface{}
SetBypassRowLevelSecurity(val interface{})
BypassRowLevelSecurityInput() interface{}
// Experimental.
CdktfStack() cdktf.TerraformStack
// Experimental.
Connection() interface{}
// Experimental.
SetConnection(val interface{})
ConnectionLimit() *float64
SetConnectionLimit(val *float64)
ConnectionLimitInput() *float64
// Experimental.
ConstructNodeMetadata() *map[string]interface{}
// Experimental.
Count() interface{}
// Experimental.
SetCount(val interface{})
CreateDatabase() interface{}
SetCreateDatabase(val interface{})
CreateDatabaseInput() interface{}
CreateRole() interface{}
SetCreateRole(val interface{})
CreateRoleInput() interface{}
// Experimental.
DependsOn() *[]*string
// Experimental.
SetDependsOn(val *[]*string)
Encrypted() *string
SetEncrypted(val *string)
EncryptedInput() *string
EncryptedPassword() interface{}
SetEncryptedPassword(val interface{})
EncryptedPasswordInput() interface{}
// Experimental.
ForEach() cdktf.ITerraformIterator
// Experimental.
SetForEach(val cdktf.ITerraformIterator)
// Experimental.
Fqn() *string
// Experimental.
FriendlyUniqueId() *string
Id() *string
SetId(val *string)
IdInput() *string
IdleInTransactionSessionTimeout() *float64
SetIdleInTransactionSessionTimeout(val *float64)
IdleInTransactionSessionTimeoutInput() *float64
Inherit() interface{}
SetInherit(val interface{})
InheritInput() interface{}
// Experimental.
Lifecycle() *cdktf.TerraformResourceLifecycle
// Experimental.
SetLifecycle(val *cdktf.TerraformResourceLifecycle)
Login() interface{}
SetLogin(val interface{})
LoginInput() interface{}
Name() *string
SetName(val *string)
NameInput() *string
// The tree node.
Node() constructs.Node
Password() *string
SetPassword(val *string)
PasswordInput() *string
// Experimental.
Provider() cdktf.TerraformProvider
// Experimental.
SetProvider(val cdktf.TerraformProvider)
// Experimental.
Provisioners() *[]interface{}
// Experimental.
SetProvisioners(val *[]interface{})
// Experimental.
RawOverrides() interface{}
Replication() interface{}
SetReplication(val interface{})
ReplicationInput() interface{}
Roles() *[]*string
SetRoles(val *[]*string)
RolesInput() *[]*string
SearchPath() *[]*string
SetSearchPath(val *[]*string)
SearchPathInput() *[]*string
SkipDropRole() interface{}
SetSkipDropRole(val interface{})
SkipDropRoleInput() interface{}
SkipReassignOwned() interface{}
SetSkipReassignOwned(val interface{})
SkipReassignOwnedInput() interface{}
StatementTimeout() *float64
SetStatementTimeout(val *float64)
StatementTimeoutInput() *float64
Superuser() interface{}
SetSuperuser(val interface{})
SuperuserInput() interface{}
// Experimental.
TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
// Experimental.
TerraformMetaArguments() *map[string]interface{}
// Experimental.
TerraformResourceType() *string
ValidUntil() *string
SetValidUntil(val *string)
ValidUntilInput() *string
// Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
// Experimental.
AddMoveTarget(moveTarget *string)
// Experimental.
AddOverride(path *string, value interface{})
// Experimental.
GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
// Experimental.
GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
// Experimental.
GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
// Experimental.
GetListAttribute(terraformAttribute *string) *[]*string
// Experimental.
GetNumberAttribute(terraformAttribute *string) *float64
// Experimental.
GetNumberListAttribute(terraformAttribute *string) *[]*float64
// Experimental.
GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
// Experimental.
GetStringAttribute(terraformAttribute *string) *string
// Experimental.
GetStringMapAttribute(terraformAttribute *string) *map[string]*string
// Experimental.
HasResourceMove() interface{}
// Experimental.
ImportFrom(id *string, provider cdktf.TerraformProvider)
// Experimental.
InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
// Move the resource corresponding to "id" to this resource.
//
// Note that the resource being moved from must be marked as moved using it's instance function.
// Experimental.
MoveFromId(id *string)
// Moves this resource to the target resource given by moveTarget.
// Experimental.
MoveTo(moveTarget *string, index interface{})
// Moves this resource to the resource corresponding to "id".
// Experimental.
MoveToId(id *string)
// Overrides the auto-generated logical ID with a specific ID.
// Experimental.
OverrideLogicalId(newLogicalId *string)
ResetAssumeRole()
ResetBypassRowLevelSecurity()
ResetConnectionLimit()
ResetCreateDatabase()
ResetCreateRole()
ResetEncrypted()
ResetEncryptedPassword()
ResetId()
ResetIdleInTransactionSessionTimeout()
ResetInherit()
ResetLogin()
// Resets a previously passed logical Id to use the auto-generated logical id again.
// Experimental.
ResetOverrideLogicalId()
ResetPassword()
ResetReplication()
ResetRoles()
ResetSearchPath()
ResetSkipDropRole()
ResetSkipReassignOwned()
ResetStatementTimeout()
ResetSuperuser()
ResetValidUntil()
SynthesizeAttributes() *map[string]interface{}
SynthesizeHclAttributes() *map[string]interface{}
// Experimental.
ToHclTerraform() interface{}
// Experimental.
ToMetadata() interface{}
// Returns a string representation of this construct.
ToString() *string
// Adds this resource to the terraform JSON output.
// Experimental.
ToTerraform() interface{}
}
Represents a {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role postgresql_role}.
func NewRole ¶
func NewRole(scope constructs.Construct, id *string, config *RoleConfig) Role
Create a new {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role postgresql_role} Resource.
type RoleConfig ¶
type RoleConfig struct {
// Experimental.
Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
// Experimental.
Count interface{} `field:"optional" json:"count" yaml:"count"`
// Experimental.
DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
// Experimental.
ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
// Experimental.
Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
// Experimental.
Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
// Experimental.
Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
// The name of the role.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#name Role#name}
Name *string `field:"required" json:"name" yaml:"name"`
// Role to switch to at login.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#assume_role Role#assume_role}
AssumeRole *string `field:"optional" json:"assumeRole" yaml:"assumeRole"`
// Determine whether a role bypasses every row-level security (RLS) policy.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#bypass_row_level_security Role#bypass_row_level_security}
BypassRowLevelSecurity interface{} `field:"optional" json:"bypassRowLevelSecurity" yaml:"bypassRowLevelSecurity"`
// How many concurrent connections can be made with this role.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#connection_limit Role#connection_limit}
ConnectionLimit *float64 `field:"optional" json:"connectionLimit" yaml:"connectionLimit"`
// Define a role's ability to create databases.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#create_database Role#create_database}
CreateDatabase interface{} `field:"optional" json:"createDatabase" yaml:"createDatabase"`
// Determine whether this role will be permitted to create new roles.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#create_role Role#create_role}
CreateRole interface{} `field:"optional" json:"createRole" yaml:"createRole"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#encrypted Role#encrypted}.
Encrypted *string `field:"optional" json:"encrypted" yaml:"encrypted"`
// Control whether the password is stored encrypted in the system catalogs.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#encrypted_password Role#encrypted_password}
EncryptedPassword interface{} `field:"optional" json:"encryptedPassword" yaml:"encryptedPassword"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#id Role#id}.
//
// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
Id *string `field:"optional" json:"id" yaml:"id"`
// Terminate any session with an open transaction that has been idle for longer than the specified duration in milliseconds.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#idle_in_transaction_session_timeout Role#idle_in_transaction_session_timeout}
IdleInTransactionSessionTimeout *float64 `field:"optional" json:"idleInTransactionSessionTimeout" yaml:"idleInTransactionSessionTimeout"`
// Determine whether a role "inherits" the privileges of roles it is a member of.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#inherit Role#inherit}
Inherit interface{} `field:"optional" json:"inherit" yaml:"inherit"`
// Determine whether a role is allowed to log in.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#login Role#login}
Login interface{} `field:"optional" json:"login" yaml:"login"`
// Sets the role's password.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#password Role#password}
Password *string `field:"optional" json:"password" yaml:"password"`
// Determine whether a role is allowed to initiate streaming replication or put the system in and out of backup mode.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#replication Role#replication}
Replication interface{} `field:"optional" json:"replication" yaml:"replication"`
// Role(s) to grant to this new role.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#roles Role#roles}
Roles *[]*string `field:"optional" json:"roles" yaml:"roles"`
// Sets the role's search path.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#search_path Role#search_path}
SearchPath *[]*string `field:"optional" json:"searchPath" yaml:"searchPath"`
// Skip actually running the DROP ROLE command when removing a ROLE from PostgreSQL.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#skip_drop_role Role#skip_drop_role}
SkipDropRole interface{} `field:"optional" json:"skipDropRole" yaml:"skipDropRole"`
// Skip actually running the REASSIGN OWNED command when removing a role from PostgreSQL.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#skip_reassign_owned Role#skip_reassign_owned}
SkipReassignOwned interface{} `field:"optional" json:"skipReassignOwned" yaml:"skipReassignOwned"`
// Abort any statement that takes more than the specified number of milliseconds.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#statement_timeout Role#statement_timeout}
StatementTimeout *float64 `field:"optional" json:"statementTimeout" yaml:"statementTimeout"`
// Determine whether the new role is a "superuser".
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#superuser Role#superuser}
Superuser interface{} `field:"optional" json:"superuser" yaml:"superuser"`
// Sets a date and time after which the role's password is no longer valid.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/cyrilgdn/postgresql/1.25.0/docs/resources/role#valid_until Role#valid_until}
ValidUntil *string `field:"optional" json:"validUntil" yaml:"validUntil"`
}