83 lines
2.6 KiB
HCL
83 lines
2.6 KiB
HCL
terraform {
|
|
required_providers {
|
|
zitadel = {
|
|
source = "zitadel/zitadel"
|
|
}
|
|
}
|
|
}
|
|
|
|
resource "zitadel_org_idp_google" "default" {
|
|
depends_on = [var.wait_on]
|
|
org_id = var.org_id
|
|
name = "Google"
|
|
client_id = var.client_id
|
|
client_secret = var.client_secret
|
|
scopes = var.options.scopes
|
|
is_linking_allowed = var.options.is_linking_allowed
|
|
is_creation_allowed = var.options.is_creation_allowed
|
|
is_auto_creation = var.options.is_auto_creation
|
|
is_auto_update = var.options.is_auto_update
|
|
auto_linking = var.options.auto_linking
|
|
}
|
|
|
|
resource "zitadel_login_policy" "default" {
|
|
depends_on = [zitadel_org_idp_google.default]
|
|
|
|
org_id = var.org_id
|
|
user_login = false
|
|
allow_register = true
|
|
allow_external_idp = true
|
|
force_mfa = false
|
|
force_mfa_local_only = false
|
|
passwordless_type = "PASSWORDLESS_TYPE_ALLOWED"
|
|
hide_password_reset = "false"
|
|
password_check_lifetime = "240h0m0s"
|
|
external_login_check_lifetime = "240h0m0s"
|
|
multi_factor_check_lifetime = "24h0m0s"
|
|
mfa_init_skip_lifetime = "720h0m0s"
|
|
second_factor_check_lifetime = "24h0m0s"
|
|
ignore_unknown_usernames = true
|
|
default_redirect_uri = "https://${var.domain}"
|
|
second_factors = ["SECOND_FACTOR_TYPE_OTP", "SECOND_FACTOR_TYPE_U2F"]
|
|
multi_factors = ["MULTI_FACTOR_TYPE_U2F_WITH_VERIFICATION"]
|
|
idps = [zitadel_org_idp_google.default.id]
|
|
allow_domain_discovery = true
|
|
disable_login_with_email = true
|
|
disable_login_with_phone = true
|
|
}
|
|
|
|
#resource "zitadel_action" "verify-email-from-google-idp" {
|
|
# org_id = var.org_id
|
|
# name = "trustEmailVerification"
|
|
# script = templatefile("${path.module}/verify-email.action.tftpl", {
|
|
# trusted_idp = zitadel_org_idp_google.default.id,
|
|
# })
|
|
# allowed_to_fail = false
|
|
# timeout = "10s"
|
|
#}
|
|
|
|
#resource "zitadel_trigger_actions" "verify-email-from-google-idp" {
|
|
# org_id = var.org_id
|
|
# flow_type = "FLOW_TYPE_EXTERNAL_AUTHENTICATION"
|
|
# trigger_type = "TRIGGER_TYPE_PRE_CREATION"
|
|
# action_ids = [zitadel_action.verify-email-from-google-idp.id]
|
|
#}
|
|
#
|
|
#resource "zitadel_trigger_actions" "internal" {
|
|
# org_id = var.org_id
|
|
# flow_type = "FLOW_TYPE_INTERNAL_AUTHENTICATION"
|
|
# trigger_type = "TRIGGER_TYPE_PRE_CREATION"
|
|
# action_ids = [zitadel_action.verify-email-from-google-idp.id]
|
|
#}
|
|
|
|
output "installed" {
|
|
value = true
|
|
depends_on = [
|
|
zitadel_org_idp_google.default, zitadel_login_policy.default,
|
|
]
|
|
}
|
|
|
|
output "idp_id" {
|
|
value = zitadel_org_idp_google.default.id
|
|
}
|