Role-based access control (RBAC) overview (original) (raw)

This page describes fine-grained authorization with role-based access control (RBAC) in Cloud Data Fusion.

Enabling RBAC in your Cloud Data Fusion instances lets you control access within instances and namespaces, such as who can access Cloud Data Fusion resources and what they can do with them.

Use cases for RBAC

RBAC provides namespace-level isolation within a single Cloud Data Fusion instance. It's recommended for the following use cases:

With Cloud Data Fusion RBAC, organizations can:

Recommended: Even when you use RBAC, to maintain isolation, security, and performance stability, use separate projects and instances for development and production environments.

Limitations

Role assignments

A role assignment consists of three elements: principal, role definition, and scope.

Principal

You grant roles to principalsto change their access to Cloud Data Fusion resources.

Role definition

A role contains a set of permissions that allows you to perform specific actions on Google Cloud resources.

Cloud Data Fusion provides severalpredefined roles that you can use.

Examples:

Scope

The scope is the set of resources that the access applies to. When you assign a role, you can further limit the actions allowed by defining a scope, such as an instance or a namespace. This is helpful if you want to assign somebody the Developer role, but only for one namespace.

Security recommendations

Adopting a security model and catering it to your organization's needs and requirements can be challenging. The following recommendations are intended to help you simplify your journey to adopt Cloud Data Fusion's RBAC model:

Troubleshooting

This page section shows you how to resolve issues related to RBAC in Cloud Data Fusion.

A principal who has the Cloud Data Fusion Viewer role for a namespace in RBAC can edit pipelines

Access is based on a combination of IAM and RBAC roles. IAM roles have precedence over RBAC roles. Check if the principal hasProject Editor orCloud Data Fusion AdminIAM roles.

A principal who has the Instance Admin role in RBAC can't view Cloud Data Fusion instances in the Google Cloud console

There is a known issue in Cloud Data Fusion where principals with the Instance Admin role cannot view instances in the Google Cloud console. To fix the issue, grant either theProject Viewer or one of theCloud Data Fusion IAM roles to the principal in addition to making them Admin to an instance. This grants Viewer access to the principal for all instances in the project.

Prevent a principal from viewing namespaces where they have no role

To prevent a principal from viewing namespaces where they have no role, they must not have theProject Viewer or any of theCloud Data Fusion IAM roles. Instead, only grant RBAC roles to the principal in the namespace where they need to operate.

The principal with this kind of access won't see the list of Cloud Data Fusion instances in the Google Cloud console. Instead, give them a direct link to the instance, similar to the following:https://INSTANCE_NAME-PROJECT_ID.REGION_NAME.datafusion.googleusercontent.com/

When the principal opens the instance, Cloud Data Fusion displays a list of namespaces where the principal is granted RBAC role.

Grant the Cloud Data Fusion Accessor role to a principal

The Accessor role is implicitly assigned to a principal when any other RBAC role is assigned to them for any Cloud Data Fusion instance. To verify if a principal has that role on a particular instance, see theIAM Policy Analyzer.

What's next