authentication_flow.tf 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. # Unfortunately, documentation on this is lacking. I started to get close, so i want to leave it, but keycloak configuration is being done by hand.
  2. #
  3. # See https://www.keycloak.org/docs/10.0/server_admin/#_x509
  4. #
  5. #resource "keycloak_authentication_flow" "x509-browser" {
  6. # realm_id = keycloak_realm.realm.id
  7. # alias = "X.509 Browser"
  8. #}
  9. #
  10. ## Note: the ordering of authentication executions within a flow must be specified using depends_on.
  11. ##
  12. ## Unfortunately, there is very little doc on what 'authenticator's are available. See https://github.com/mrparkers/terraform-provider-keycloak/issues/411
  13. ## But there are some examples in https://github.com/mrparkers/terraform-provider-keycloak/blob/master/example/main.tf
  14. #resource "keycloak_authentication_execution" "execution_1" {
  15. # realm_id = keycloak_realm.realm.id
  16. # parent_flow_alias = keycloak_authentication_flow.x509-browser.alias
  17. # authenticator = "auth-cookie"
  18. # requirement = "ALTERNATIVE"
  19. #}
  20. #
  21. #resource "keycloak_authentication_execution" "execution_2" {
  22. # realm_id = keycloak_realm.realm.id
  23. # parent_flow_alias = keycloak_authentication_flow.x509-browser.alias
  24. # authenticator = "auth-spnego" # "kerberos"
  25. # requirement = "DISABLED"
  26. #
  27. # depends_on = [
  28. # keycloak_authentication_execution.execution_1
  29. # ]
  30. #}
  31. #
  32. #resource "keycloak_authentication_execution" "execution_3" {
  33. # realm_id = keycloak_realm.realm.id
  34. # parent_flow_alias = keycloak_authentication_flow.x509-browser.alias
  35. # authenticator = "identity-provider-redirector"
  36. # requirement = "ALTERNATIVE"
  37. #
  38. # depends_on = [
  39. # keycloak_authentication_execution.execution_2
  40. # ]
  41. #}
  42. #
  43. #resource "keycloak_authentication_execution" "execution_3" {
  44. # realm_id = keycloak_realm.realm.id
  45. # parent_flow_alias = keycloak_authentication_flow.x509-browser.alias
  46. # authenticator = "identity-provider-redirector"
  47. # requirement = "ALTERNATIVE"
  48. #
  49. # depends_on = [
  50. # keycloak_authentication_execution.execution_2
  51. # ]
  52. #}
  53. #
  54. #resource "keycloak_authentication_subflow" "subflow_3" {
  55. # realm_id = keycloak_realm.realm.id
  56. # parent_flow_alias = keycloak_authentication_flow.x509-browser.alias
  57. # alias = "browser-copy-flow-forms"
  58. # requirement = "ALTERNATIVE"
  59. # depends_on = [
  60. # keycloak_authentication_execution.execution_3
  61. # ]
  62. #}
  63. #
  64. #resource "keycloak_authentication_execution" "execution_4" {
  65. # realm_id = keycloak_realm.realm.id
  66. # parent_flow_alias = keycloak_authentication_subflow.subflow_3.alias
  67. #
  68. # authenticator = "auth-username-password-form"
  69. # requirement = "REQUIRED"
  70. # depends_on = [
  71. # keycloak_authentication_subflow.subflow_3
  72. # ]
  73. #}
  74. #
  75. ## No OTPs for us?
  76. ##resource "keycloak_authentication_execution" "execution_6" {
  77. ## realm_id = keycloak_realm.realm.id
  78. ## parent_flow_alias = keycloak_authentication_flow.x509-browser.alias
  79. ## authenticator = "auth-otp-form"
  80. ## requirement = "REQUIRED"
  81. ## depends_on = [
  82. ## keycloak_authentication_execution.execution_3
  83. ## ]
  84. ##}
  85. #
  86. ##resource "keycloak_authentication_execution_config" "config" {
  87. ## realm_id = keycloak_realm.realm.id
  88. ## parent_flow_alias = keycloak_authentication_flow.x509-browser.alias
  89. ## alias = "idp-XXX-config"
  90. ## config = {
  91. ## defaultProvider = "idp-XXX"
  92. ## }
  93. ## depends_on = [
  94. ## keycloak_authentication_execution.execution_3
  95. ## ]
  96. ##}
  97. ##
  98. #TODO:
  99. #resource "keycloak_openid_client" "test_client" {
  100. # client_id = "test-openid-client"
  101. # name = "test-openid-client"
  102. # realm_id = keycloak_realm.test.id
  103. # description = "a test openid client"
  104. #
  105. # standard_flow_enabled = true
  106. # service_accounts_enabled = true
  107. #
  108. # access_type = "CONFIDENTIAL"
  109. #
  110. # valid_redirect_uris = [
  111. # "http://localhost:5555/callback",
  112. # ]
  113. #
  114. # client_secret = "secret"
  115. #
  116. # pkce_code_challenge_method = "plain"
  117. #
  118. # login_theme = "keycloak"
  119. #}
  120. #resource "keycloak_required_action" "custom-terms-and-conditions" {
  121. # realm_id = keycloak_realm.realm.realm
  122. # alias = "terms_and_conditions"
  123. # default_action = true
  124. # enabled = true
  125. # name = "Custom Terms and Conditions"
  126. #}