security.asciidoc 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. [float]
  2. [[breaking_80_security_changes]]
  3. === Security changes
  4. //NOTE: The notable-breaking-changes tagged regions are re-used in the
  5. //Installation and Upgrade Guide
  6. //tag::notable-breaking-changes[]
  7. .The realm `order` setting is now required.
  8. [%collapsible]
  9. ====
  10. *Details* +
  11. The `xpack.security.authc.realms.{type}.{name}.order` setting is now required and must be
  12. specified for each explicitly configured realm. Each value must be unique.
  13. The cluster will fail to start if the requirements are not met.
  14. For example, the following configuration is invalid:
  15. [source,yaml]
  16. --------------------------------------------------
  17. xpack.security.authc.realms.kerberos.kerb1:
  18. keytab.path: es.keytab
  19. remove_realm_name: false
  20. --------------------------------------------------
  21. And must be configured as:
  22. [source,yaml]
  23. --------------------------------------------------
  24. xpack.security.authc.realms.kerberos.kerb1:
  25. order: 0
  26. keytab.path: es.keytab
  27. remove_realm_name: false
  28. --------------------------------------------------
  29. ====
  30. // end::notable-breaking-changes[]
  31. [[accept-default-password-removed]]
  32. .The `accept_default_password` setting has been removed.
  33. [%collapsible]
  34. ====
  35. *Details* +
  36. The `xpack.security.authc.accept_default_password` setting has not had any affect
  37. since the 6.0 release of {es}. It has been removed and cannot be used.
  38. ====
  39. [[roles-index-cache-removed]]
  40. .The `roles.index.cache.*` settings have been removed.
  41. [%collapsible]
  42. ====
  43. *Details* +
  44. The `xpack.security.authz.store.roles.index.cache.max_size` and
  45. `xpack.security.authz.store.roles.index.cache.ttl` settings have
  46. been removed. These settings have been redundant and deprecated
  47. since the 5.2 release of {es}.
  48. ====
  49. [[migrate-tool-removed]]
  50. .The `elasticsearch-migrate` tool has been removed.
  51. [%collapsible]
  52. ====
  53. *Details* +
  54. The `elasticsearch-migrate` tool provided a way to convert file
  55. realm users and roles into the native realm. It has been deprecated
  56. since 7.2.0. Users and roles should now be created in the native
  57. realm directly.
  58. ====
  59. [[separating-node-and-client-traffic]]
  60. .The `transport.profiles.*.xpack.security.type` setting has been removed.
  61. [%collapsible]
  62. ====
  63. *Details* +
  64. The `transport.profiles.*.xpack.security.type` setting has been removed since
  65. the Transport Client has been removed and therefore all client traffic now uses
  66. the HTTP transport. Transport profiles using this setting should be removed.
  67. ====
  68. [discrete]
  69. [[ssl-validation-changes]]
  70. ==== SSL/TLS configuration validation
  71. .The `xpack.security.transport.ssl.enabled` setting is now required to configure `xpack.security.transport.ssl` settings.
  72. [%collapsible]
  73. ====
  74. *Details* +
  75. It is now an error to configure any SSL settings for
  76. `xpack.security.transport.ssl` without also configuring
  77. `xpack.security.transport.ssl.enabled`.
  78. For example, the following configuration is invalid:
  79. [source,yaml]
  80. --------------------------------------------------
  81. xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
  82. xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
  83. --------------------------------------------------
  84. And must be configured as:
  85. [source,yaml]
  86. --------------------------------------------------
  87. xpack.security.transport.ssl.enabled: true <1>
  88. xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
  89. xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
  90. --------------------------------------------------
  91. <1> or `false`.
  92. ====
  93. .The `xpack.security.http.ssl.enabled` setting is now required to configure `xpack.security.http.ssl` settings.
  94. [%collapsible]
  95. ====
  96. *Details* +
  97. It is now an error to configure any SSL settings for
  98. `xpack.security.http.ssl` without also configuring
  99. `xpack.security.http.ssl.enabled`.
  100. For example, the following configuration is invalid:
  101. [source,yaml]
  102. --------------------------------------------------
  103. xpack.security.http.ssl.certificate: elasticsearch.crt
  104. xpack.security.http.ssl.key: elasticsearch.key
  105. xpack.security.http.ssl.certificate_authorities: [ "corporate-ca.crt" ]
  106. --------------------------------------------------
  107. And must be configured as either:
  108. [source,yaml]
  109. --------------------------------------------------
  110. xpack.security.http.ssl.enabled: true <1>
  111. xpack.security.http.ssl.certificate: elasticsearch.crt
  112. xpack.security.http.ssl.key: elasticsearch.key
  113. xpack.security.http.ssl.certificate_authorities: [ "corporate-ca.crt" ]
  114. --------------------------------------------------
  115. <1> or `false`.
  116. ====
  117. .A `xpack.security.transport.ssl` certificate and key are now required to enable SSL for the transport interface.
  118. [%collapsible]
  119. ====
  120. *Details* +
  121. It is now an error to enable SSL for the transport interface without also configuring
  122. a certificate and key through use of the `xpack.security.transport.ssl.keystore.path`
  123. setting or the `xpack.security.transport.ssl.certificate` and
  124. `xpack.security.transport.ssl.key` settings.
  125. ====
  126. .A `xpack.security.http.ssl` certificate and key are now required to enable SSL for the HTTP server.
  127. [%collapsible]
  128. ====
  129. *Details* +
  130. It is now an error to enable SSL for the HTTP (Rest) server without also configuring
  131. a certificate and key through use of the `xpack.security.http.ssl.keystore.path`
  132. setting or the `xpack.security.http.ssl.certificate` and
  133. `xpack.security.http.ssl.key` settings.
  134. ====
  135. [discrete]
  136. [[builtin-users-changes]]
  137. ==== Changes to built-in users
  138. .The `kibana` user has been renamed `kibana_system`.
  139. [%collapsible]
  140. ====
  141. *Details* +
  142. The `kibana` user was historically used to authenticate {kib} to {es}.
  143. The name of this user was confusing, and was often mistakenly used to login to {kib}.
  144. This has been renamed to `kibana_system` in order to reduce confusion, and to better
  145. align with other built-in system accounts.
  146. If your `kibana.yml` used to contain:
  147. [source,yaml]
  148. --------------------------------------------------
  149. elasticsearch.username: kibana
  150. --------------------------------------------------
  151. then you should update to use the new `kibana_system` user instead:
  152. [source,yaml]
  153. --------------------------------------------------
  154. elasticsearch.username: kibana_system
  155. --------------------------------------------------
  156. ====
  157. [discrete]
  158. [[builtin-roles-changes]]
  159. ==== Changes to built-in roles
  160. .The `kibana_user` role has been renamed to `kibana_admin`.
  161. [%collapsible]
  162. ====
  163. *Details* +
  164. Users who were previously assigned the `kibana_user` role should instead be assigned
  165. the `kibana_admin` role. This role grants the same set of privileges as `kibana_user`, but has been
  166. renamed to better reflect its intended use.
  167. ====