-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathiam.tf
50 lines (43 loc) · 1.98 KB
/
iam.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
resource "google_project_iam_member" "serviceAccount_user" {
project = var.data_plane_project
role = "roles/iam.serviceAccountUser"
member = "serviceAccount:${google_service_account.tenant_data_access.email}"
}
resource "google_project_iam_member" "dataproc_worker" {
project = var.data_plane_project
role = "roles/dataproc.worker"
member = "serviceAccount:${google_service_account.tenant_data_access.email}"
}
resource "google_project_iam_member" "dataproc_editor" {
project = var.data_plane_project
role = "roles/dataproc.editor"
member = "serviceAccount:${google_service_account.tenant_data_access.email}"
}
resource "google_compute_subnetwork_iam_member" "vpc_subnetwork_user" {
count = var.enable_dataproc_network ? 1 : 0
project = var.data_plane_project
subnetwork = google_compute_subnetwork.dataproc_subnet[0].name
role = "roles/compute.networkUser"
member = "serviceAccount:${google_service_account.tenant_data_access.email}"
}
resource "google_project_iam_member" "bigquery_job_creator" {
project = var.data_plane_project
role = "roles/bigquery.jobUser"
member = "serviceAccount:${google_service_account.tenant_data_access.email}"
}
resource "google_project_iam_member" "bigquery_job_user" {
project = var.data_plane_project
role = "roles/bigquery.user"
member = "serviceAccount:${google_service_account.tenant_data_access.email}"
}
# Required for spark connector to push work down to BigQuery
resource "google_project_iam_member" "allow_bq_connector_push_down" {
project = var.data_plane_project
role = "roles/bigquery.readSessionUser"
member = "serviceAccount:${google_service_account.tenant_data_access.email}"
}
resource "google_service_account_iam_member" "tenant_orchestration_impersonate_tenant_data_access_sa" {
service_account_id = google_service_account.tenant_data_access.name
role = "roles/iam.serviceAccountTokenCreator"
member = "serviceAccount:${var.tenant_orchestration_sa}"
}