built-in-roles.asciidoc 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. [role="xpack"]
  2. [[built-in-roles]]
  3. === Built-in roles
  4. The {stack-security-features} apply a default role to all users, including
  5. <<anonymous-access, anonymous users>>. The default role enables users to access
  6. the authenticate endpoint, change their own passwords, and get information about
  7. themselves.
  8. There is also a set of built-in roles you can explicitly assign to users. These
  9. roles have a fixed set of privileges and cannot be updated.
  10. [[built-in-roles-apm-system]] `apm_system` ::
  11. Grants access necessary for the APM system user to send system-level data
  12. (such as monitoring) to {es}.
  13. [[built-in-roles-apm-user]] `apm_user` ::
  14. Grants the privileges required for APM users (such as `read` and
  15. `view_index_metadata` privileges on the `apm-*` and `.ml-anomalies*` indices).
  16. deprecated:[7.13.0,"See {kibana-ref}/apm-app-users.html[APM app users and privileges\] for alternatives."].
  17. [[built-in-roles-beats-admin]] `beats_admin` ::
  18. Grants access to the `.management-beats` index, which contains configuration
  19. information for the Beats.
  20. [[built-in-roles-beats-system]] `beats_system` ::
  21. Grants access necessary for the Beats system user to send system-level data
  22. (such as monitoring) to {es}.
  23. +
  24. --
  25. [NOTE]
  26. ===============================
  27. * This role should not be assigned to users as the granted permissions may
  28. change between releases.
  29. * This role does not provide access to the beats indices and is not
  30. suitable for writing beats output to {es}.
  31. ===============================
  32. --
  33. [[built-in-roles-data-frame-transforms-admin]] `data_frame_transforms_admin` ::
  34. Grants `manage_data_frame_transforms` cluster privileges, which enable you to
  35. manage {transforms}. This role also includes all
  36. {kibana-ref}/kibana-privileges.html[Kibana privileges] for the {ml-features}.
  37. deprecated:[7.5.0,"Replaced by <<built-in-roles-transform-admin,`transform_admin`>>"].
  38. [[built-in-roles-data-frame-transforms-user]] `data_frame_transforms_user` ::
  39. Grants `monitor_data_frame_transforms` cluster privileges, which enable you to
  40. use {transforms}. This role also includes all
  41. {kibana-ref}/kibana-privileges.html[Kibana privileges] for the {ml-features}.
  42. deprecated:[7.5.0,"Replaced by <<built-in-roles-transform-user,`transform_user`>>"].
  43. [[built-in-roles-editor]] `editor` ::
  44. Grants full access to all features in {kib} (including Solutions) and read-only access to data indices.
  45. +
  46. --
  47. [NOTE]
  48. ===============================
  49. * This role provides read access to any index that is not prefixed with a dot.
  50. * This role automatically grants full access to new {kib} features as soon as they are released.
  51. * Some {kib} features may also require creation or write access to data indices. {ml-cap} {dfanalytics-jobs}
  52. is an example. For such features those privileges must be defined in a separate role.
  53. ===============================
  54. --
  55. [[built-in-roles-enrich-user]] `enrich_user` ::
  56. Grants access to manage *all* enrich indices (`.enrich-*`) and *all* operations on
  57. ingest pipelines.
  58. [[built-in-roles-inference-admin]] `inference_admin`::
  59. Provides all of the privileges of the `inference_user` role and the full
  60. use of the {inference} APIs. Grants the `manage_inference` cluster privilege.
  61. [[built-in-roles-inference-user]] `inference_user`::
  62. Provides the minimum privileges required to view {inference} configurations
  63. and perform inference. Grants the `monintor_inference` cluster privilege.
  64. [[built-in-roles-ingest-user]] `ingest_admin` ::
  65. Grants access to manage *all* index templates and *all* ingest pipeline configurations.
  66. +
  67. NOTE: This role does *not* provide the ability to create indices; those privileges
  68. must be defined in a separate role.
  69. [[built-in-roles-kibana-dashboard]] `kibana_dashboard_only_user` ::
  70. (This role is deprecated, please use
  71. {kibana-ref}/kibana-privileges.html#kibana-feature-privileges[{kib} feature privileges]
  72. instead).
  73. Grants read-only access to the {kib} Dashboard in every
  74. {kibana-ref}/xpack-spaces.html[space in {kib}].
  75. This role does not have access to editing tools in {kib}.
  76. [[built-in-roles-kibana-system]] `kibana_system` ::
  77. Grants access necessary for the {kib} system user to read from and write to the
  78. {kib} indices, manage index templates and tokens, and check the availability of
  79. the {es} cluster. It also permits
  80. activating, searching, and retrieving user profiles,
  81. as well as updating user profile data for the `kibana-*` namespace.
  82. This role grants read access to the `.monitoring-*` indices and read and write
  83. access to the `.reporting-*` indices. For more information,
  84. see {kibana-ref}/using-kibana-with-security.html[Configuring Security in {kib}].
  85. +
  86. NOTE: This role should not be assigned to users as the granted permissions may
  87. change between releases.
  88. [[built-in-roles-kibana-admin]] `kibana_admin`::
  89. Grants access to all features in {kib}. For more information on {kib} authorization,
  90. see {kibana-ref}/xpack-security-authorization.html[Kibana authorization].
  91. [[built-in-roles-kibana-user]] `kibana_user`::
  92. (This role is deprecated, please use the
  93. <<built-in-roles-kibana-admin,`kibana_admin`>> role instead.)
  94. Grants access to all features in {kib}. For more information on {kib} authorization,
  95. see {kibana-ref}/xpack-security-authorization.html[Kibana authorization].
  96. [[built-in-roles-logstash-admin]] `logstash_admin` ::
  97. Grants access to the `.logstash*` indices for managing configurations, and grants
  98. necessary access for logstash-specific APIs exposed by the logstash x-pack plugin.
  99. [[built-in-roles-logstash-system]] `logstash_system` ::
  100. Grants access necessary for the Logstash system user to send system-level data
  101. (such as monitoring) to {es}. For more information, see
  102. {logstash-ref}/ls-security.html[Configuring Security in Logstash].
  103. +
  104. --
  105. [NOTE]
  106. ===============================
  107. * This role should not be assigned to users as the granted permissions may
  108. change between releases.
  109. * This role does not provide access to the logstash indices and is not
  110. suitable for use within a Logstash pipeline.
  111. ===============================
  112. --
  113. [[built-in-roles-ml-admin]] `machine_learning_admin`::
  114. Provides all of the privileges of the `machine_learning_user` role plus the full
  115. use of the {ml} APIs. Grants `manage_ml` cluster privileges, read access to
  116. `.ml-anomalies*`, `.ml-notifications*`, `.ml-state*`, `.ml-meta*` indices and
  117. write access to `.ml-annotations*` indices. {ml-cap} administrators also need
  118. index privileges for source and destination indices and roles that grant
  119. access to {kib}. See {ml-docs-setup-privileges}.
  120. [[built-in-roles-ml-user]] `machine_learning_user`::
  121. Grants the minimum privileges required to view {ml} configuration,
  122. status, and work with results. This role grants `monitor_ml` cluster privileges,
  123. read access to the `.ml-notifications` and `.ml-anomalies*` indices
  124. (which store {ml} results), and write access to `.ml-annotations*` indices.
  125. {ml-cap} users also need index privileges for source and destination
  126. indices and roles that grant access to {kib}. See {ml-docs-setup-privileges}.
  127. [[built-in-roles-monitoring-user]] `monitoring_user`::
  128. Grants the minimum privileges required for any user of {monitoring} other than those
  129. required to use {kib}. This role grants access to the monitoring indices and grants
  130. privileges necessary for reading basic cluster information. This role also includes
  131. all {kibana-ref}/kibana-privileges.html[Kibana privileges] for the {stack-monitor-features}.
  132. Monitoring users should also be assigned the `kibana_admin` role, or another role
  133. with {kibana-ref}/xpack-security-authorization.html[access to the {kib} instance].
  134. [[built-in-roles-remote-monitoring-agent]] `remote_monitoring_agent`::
  135. Grants the minimum privileges required to write data into the monitoring indices
  136. (`.monitoring-*`). This role also has the privileges necessary to create
  137. {metricbeat} indices (`metricbeat-*`) and write data into them.
  138. [[built-in-roles-remote-monitoring-collector]] `remote_monitoring_collector`::
  139. Grants the minimum privileges required to collect monitoring data for the {stack}.
  140. [[built-in-roles-reporting-user]] `reporting_user`::
  141. Grants the specific privileges required for users of {reporting} other than those
  142. required to use {kib}. This role grants access to the reporting indices; each
  143. user has access to only their own reports.
  144. Reporting users should also be assigned additional roles that grant
  145. {kibana-ref}/xpack-security-authorization.html[access to {kib}] as well as read
  146. access to the <<roles-indices-priv,indices>> that will be used to generate reports.
  147. [[built-in-roles-rollup-admin]] `rollup_admin`::
  148. Grants `manage_rollup` cluster privileges, which enable you to manage and execute all rollup actions.
  149. [[built-in-roles-rollup-user]] `rollup_user`::
  150. Grants `monitor_rollup` cluster privileges, which enable you to perform read-only operations related to rollups.
  151. [[built-in-roles-snapshot-user]] `snapshot_user`::
  152. Grants the necessary privileges to create snapshots of **all** the indices and
  153. to view their metadata. This role enables users to view the configuration of
  154. existing snapshot repositories and snapshot details. It does not grant authority
  155. to remove or add repositories or to restore snapshots. It also does not enable
  156. to change index settings or to read or update data stream or index data.
  157. [[built-in-roles-superuser]] `superuser`::
  158. Grants full access to cluster management and data indices. This role also grants
  159. direct read-only access to restricted indices like `.security`. A user with the
  160. `superuser` role can <<run-as-privilege, impersonate>> any other user in the system.
  161. +
  162. On {ecloud}, all standard users, including those with the `superuser` role are
  163. restricted from performing <<operator-only-functionality,operator-only>> actions.
  164. +
  165. IMPORTANT: This role can manage security and create roles with unlimited privileges.
  166. Take extra care when assigning it to a user.
  167. [[built-in-roles-transform-admin]] `transform_admin`::
  168. Grants `manage_transform` cluster privileges, which enable you to manage
  169. {transforms}. This role also includes all
  170. {kibana-ref}/kibana-privileges.html[Kibana privileges] for the {ml-features}.
  171. [[built-in-roles-transform-user]] `transform_user`::
  172. Grants `monitor_transform` cluster privileges, which enable you to perform
  173. read-only operations related to {transforms}. This role also includes all
  174. {kibana-ref}/kibana-privileges.html[Kibana privileges] for the {ml-features}.
  175. [[built-in-roles-transport-client]] `transport_client`::
  176. Grants the privileges required to access the cluster through the Java Transport
  177. Client. The Java Transport Client fetches information about the nodes in the
  178. cluster using the _Node Liveness API_ and the _Cluster State API_ (when
  179. sniffing is enabled). Assign your users this role if they use the
  180. Transport Client.
  181. +
  182. NOTE: Using the Transport Client effectively means the users are granted access
  183. to the cluster state. This means users can view the metadata over all indices,
  184. index templates, mappings, node and basically everything about the cluster.
  185. However, this role does not grant permission to view the data in all indices.
  186. [[built-in-roles-viewer]] `viewer` ::
  187. Grants read-only access to all features in {kib} (including Solutions) and to data indices.
  188. +
  189. --
  190. [NOTE]
  191. ===============================
  192. * This role provides read access to any index that is not prefixed with a dot.
  193. * This role automatically grants read-only access to new {kib} features as soon as they are available.
  194. ===============================
  195. --
  196. [[built-in-roles-watcher-admin]] `watcher_admin`::
  197. +
  198. Allows users to create and execute all {watcher} actions. Grants read access to
  199. the `.watches` index. Also grants read access to the watch history and the
  200. triggered watches index.
  201. [[built-in-roles-watcher-user]] `watcher_user`::
  202. +
  203. Grants read access to the `.watches` index, the get watch action and the watcher
  204. stats.