Terraform provider resource to manage custom roles
Add support for creating and managing Fivetran custom roles through the Terraform provider, including the ability to define the permissions/access associated with the role.
Ideally, the provider would support a resource similar to:
resource "fivetran_custom_role" "data_operations" {
name = "Data Operations"
description = "Operational access to existing Fivetran connections"
type = "Destination"
permissions = [
"destination.view",
"connection.view",
"connection.sync",
"connection.resync",
"connection.pause",
"connection.enable"
]
}
The exact resource and permission model could follow the Fivetran API implementation, but the important capability is being able to declaratively manage both the custom role and the permissions assigned to that role.
Use Case
We manage Fivetran access and configuration through Terraform and need more granular RBAC than the predefined roles provide.
For example, we have teams responsible for operating existing connections across destinations containing a large number of connections. These users need permission to:
-
View existing connections
-
Start or trigger syncs
-
Perform re-syncs
-
Pause connections
-
Re-enable connections
They should not be able to create or delete connections or modify other administrative configuration.
A Fivetran custom role can provide this separation of responsibilities, but without Terraform support, the role and its permissions must be configured manually outside of our Infrastructure-as-Code process.
Why Terraform Support Is Important
Custom roles are part of the security and access-control configuration of the platform. Managing them through Terraform would allow organizations to:
-
Define RBAC consistently as code
-
Review permission changes through source control and pull requests
-
Maintain consistent roles across environments
-
Reduce manual configuration and configuration drift
-
Audit changes to role definitions and permissions
-
Integrate Fivetran RBAC with existing automated provisioning and governance processes
Requested Terraform Capabilities
At minimum, we would like the Terraform provider to support:
-
Creating, updating, and deleting custom roles.
-
Defining the permissions/access associated with each custom role.
-
Importing existing custom roles into Terraform state.
-
Reading the current custom-role configuration so Terraform can detect configuration drift.
This would allow the complete Fivetran RBAC lifecycle to be managed through Terraform rather than requiring custom roles to remain a manually managed exception.
Please sign in to leave a comment.
Comments
0 comments