Skip to content
This repository was archived by the owner on Jul 12, 2023. It is now read-only.

Commit c3754f0

Browse files
authored
fix terraform issues (#92)
* update key versions and permissions * add firebase admin role and trim cert keys
1 parent 3b6daeb commit c3754f0

File tree

4 files changed

+22
-2
lines changed

4 files changed

+22
-2
lines changed

terraform/keys.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ resource "google_kms_crypto_key" "certificate-signer" {
3333
}
3434
}
3535

36+
data "google_kms_crypto_key_version" "certificate-signer-version" {
37+
crypto_key = google_kms_crypto_key.certificate-signer.self_link
38+
}
39+
3640
resource "google_kms_crypto_key" "token-signer" {
3741
key_ring = google_kms_key_ring.verification.self_link
3842
name = "token-signer"
@@ -43,3 +47,7 @@ resource "google_kms_crypto_key" "token-signer" {
4347
protection_level = "HSM"
4448
}
4549
}
50+
51+
data "google_kms_crypto_key_version" "token-signer-version" {
52+
crypto_key = google_kms_crypto_key.token-signer.self_link
53+
}

terraform/service_apiserver.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,12 @@ resource "google_secret_manager_secret_iam_member" "apiserver-db" {
4444
member = "serviceAccount:${google_service_account.apiserver.email}"
4545
}
4646

47+
resource "google_kms_key_ring_iam_member" "kms-signerverifier" {
48+
key_ring_id = google_kms_key_ring.verification.self_link
49+
role = "roles/cloudkms.signerVerifier"
50+
member = "serviceAccount:${google_service_account.apiserver.email}"
51+
}
52+
4753
resource "google_cloud_run_service" "apiserver" {
4854
name = "apiserver"
4955
location = var.region

terraform/service_server.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,12 @@ resource "google_secret_manager_secret_iam_member" "server-csrf" {
5151
member = "serviceAccount:${google_service_account.server.email}"
5252
}
5353

54+
resource "google_project_iam_member" "firebase-admin" {
55+
project = var.project
56+
role = "roles/firebaseauth.admin"
57+
member = "serviceAccount:${google_service_account.server.email}"
58+
}
59+
5460
resource "google_cloud_run_service" "server" {
5561
name = "server"
5662
location = var.region

terraform/services.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ locals {
4040
}
4141

4242
signing_config = {
43-
CERTIFICATE_SIGNING_KEY = google_kms_crypto_key.certificate-signer.self_link
44-
TOKEN_SIGNING_KEY = google_kms_crypto_key.token-signer.self_link
43+
CERTIFICATE_SIGNING_KEY = trimprefix(data.google_kms_crypto_key_version.certificate-signer-version.id, "//cloudkms.googleapis.com/v1/")
44+
TOKEN_SIGNING_KEY = trimprefix(data.google_kms_crypto_key_version.token-signer-version.id, "//cloudkms.googleapis.com/v1/")
4545
}
4646
}

0 commit comments

Comments
 (0)