policies.tf 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. #----------------------------------------------------------------------------
  2. # Policies
  3. #----------------------------------------------------------------------------
  4. #Admins
  5. data "vault_policy_document" "admins" {
  6. rule {
  7. path = "*"
  8. capabilities = ["create", "read", "update", "delete", "list", "sudo"]
  9. description = "allow all on permissions"
  10. }
  11. }
  12. resource "vault_policy" "admins" {
  13. name = "admins"
  14. policy = data.vault_policy_document.admins.hcl
  15. }
  16. #Clu Legacy
  17. data "vault_policy_document" "clu" {
  18. rule {
  19. path = "jenkins*"
  20. capabilities = ["read","list"]
  21. description = "clu read write on jenkins - legacy"
  22. }
  23. }
  24. resource "vault_policy" "clu" {
  25. name = "clu"
  26. policy = data.vault_policy_document.clu.hcl
  27. }
  28. #This access is for Feed Management/engineers.
  29. data "vault_policy_document" "engineers" {
  30. rule {
  31. path = "onboarding*"
  32. capabilities = ["create", "read", "update", "delete", "list", "sudo"]
  33. description = "engineers/Feed Management"
  34. }
  35. }
  36. resource "vault_policy" "engineers" {
  37. name = "engineers"
  38. policy = data.vault_policy_document.engineers.hcl
  39. }
  40. #This access is for Phantom Admins.
  41. data "vault_policy_document" "phantom" {
  42. rule {
  43. path = "phantom*"
  44. capabilities = ["create", "read", "update", "delete", "list", "sudo"]
  45. description = "Phantom"
  46. }
  47. rule {
  48. path = "onboarding*"
  49. capabilities = ["create", "read", "update", "delete", "list", "sudo"]
  50. description = "onboarding"
  51. }
  52. rule {
  53. path = "portal*"
  54. capabilities = ["create", "read", "update", "delete", "list", "sudo"]
  55. description = "Portal"
  56. }
  57. }
  58. resource "vault_policy" "phantom" {
  59. name = "phantom"
  60. policy = data.vault_policy_document.phantom.hcl
  61. }
  62. #portal
  63. data "vault_policy_document" "portal" {
  64. rule {
  65. path = "portal*"
  66. capabilities = ["create", "read", "update", "delete", "list", "sudo"]
  67. description = "Portal"
  68. }
  69. }
  70. resource "vault_policy" "portal" {
  71. name = "portal"
  72. policy = data.vault_policy_document.portal.hcl
  73. }
  74. data "vault_policy_document" "soc" {
  75. rule {
  76. path = "soc*"
  77. capabilities = ["create", "read", "update", "delete", "list", "sudo"]
  78. description = "soc"
  79. }
  80. }
  81. resource "vault_policy" "soc" {
  82. name = "soc"
  83. policy = data.vault_policy_document.soc.hcl
  84. }
  85. data "vault_policy_document" "read-only" {
  86. rule {
  87. path = "/nothing/*"
  88. capabilities = ["read", "list"]
  89. description = "No permissions"
  90. }
  91. }
  92. resource "vault_policy" "read-only" {
  93. name = "read-only"
  94. policy = data.vault_policy_document.read-only.hcl
  95. }