Skip to content

Commit 3c0770c

Browse files
bizybotYogesh Gaikwad
authored andcommitted
Merge pull request #98 from bizybot/kerberos-stack-documentation
This commit adds documentation for Kerberos realm in stack-docs. It briefly talks about Kerberos authentication, terminology, its support and then points to settings and configuration documentation.
1 parent 352bb66 commit 3c0770c

File tree

3 files changed

+69
-1
lines changed

3 files changed

+69
-1
lines changed

docs/en/stack/security/authentication/index.asciidoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ include::ldap-realm.asciidoc[]
99
include::native-realm.asciidoc[]
1010
include::pki-realm.asciidoc[]
1111
include::saml-realm.asciidoc[]
12+
include::kerberos-realm.asciidoc[]
1213

1314
:edit_url: https://github.com/elastic/elasticsearch/edit/{branch}/x-pack/docs/en/security/authentication/custom-realm.asciidoc
1415
include::{xes-repo-dir}/security/authentication/custom-realm.asciidoc[]
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
[role="xpack"]
2+
[[kerberos-realm]]
3+
=== Kerberos authentication
4+
5+
You can configure {security} to support Kerberos V5 authentication,
6+
an industry standard protocol to authenticate users in {es}.
7+
8+
NOTE: You cannot use the Kerberos realm to authenticate users in {kib}
9+
and on the transport network layer.
10+
11+
To authenticate users with Kerberos, you need to
12+
{ref}/configuring-kerberos-realm.html[configure a Kerberos realm] and
13+
<<mapping-roles, map users to {security} roles>>.
14+
For more information on realm settings, see
15+
{ref}/security-settings.html#ref-kerberos-settings[Kerberos realm settings].
16+
17+
[[kerberos-terms]]
18+
==== Key concepts
19+
20+
There are a few terms and concepts that you'll encounter when you're setting up
21+
Kerberos realms:
22+
23+
_kdc_::
24+
Key Distribution Center. A service that issues Kerberos tickets.
25+
26+
_principal_::
27+
A Kerberos principal is a unique identity to which Kerberos can assign
28+
tickets. It can be used to identify a user or a service provided by a
29+
server.
30+
+
31+
--
32+
Kerberos V5 principal names are of format `primary/instance@REALM`, where
33+
`primary` is a user name.
34+
35+
`instance` is an optional string that qualifies the primary and is separated
36+
by a slash(`/`) from the primary. For a user, usually it is not used; for
37+
service hosts, it is the fully qualified domain name of the host.
38+
39+
`REALM` is the Kerberos realm. Usually it is is the domain name in upper case.
40+
An example of a typical user principal is `[email protected]`. An example of
41+
a typical service principal is `HTTP/[email protected]`.
42+
--
43+
44+
_realm_::
45+
Realms define the administrative boundary within which the authentication server
46+
has authority to authenticate users and services.
47+
48+
_keytab_::
49+
A file that stores pairs of principals and encryption keys.
50+
51+
IMPORTANT: Anyone with read permissions to this file can use the
52+
credentials in the network to access other services so it is important
53+
to protect it with proper file permissions.
54+
55+
_krb5.conf_::
56+
A file that contains Kerberos configuration information such as the default realm
57+
name, the location of Key distribution centers (KDC), realms information,
58+
mappings from domain names to Kerberos realms, and default configurations for
59+
realm session key encryption types.
60+
61+
_ticket granting ticket (TGT)_::
62+
A TGT is an authentication ticket generated by the Kerberos authentication
63+
server. It contains an encrypted authenticator.

docs/en/stack/security/authentication/realms.asciidoc

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,10 @@ A realm that facilitates authentication using the SAML 2.0 Web SSO protocol.
3939
This realm is designed to support authentication through {kib} and is not
4040
intended for use in the REST API. See <<saml-realm>>.
4141

42+
_kerberos_::
43+
A realm that authenticates a user using Kerberos authentication. Users are
44+
authenticated on the basis of Kerberos tickets. See <<kerberos-realm>>.
45+
4246
{security} also supports custom realms. If you need to integrate with another
4347
authentication system, you can build a custom realm plugin. For more information,
4448
see <<custom-realms, Integrating with Other Authentication Systems>>.
@@ -121,4 +125,4 @@ External:: Realms that require interaction with parties/components external to
121125
systems. Unlike internal realms, there can be as many external realms
122126
as one would like - each with its own unique name and configuration.
123127
{security} provides the following external realm types: `ldap`,
124-
`active_directory`, `saml`, and `pki`.
128+
`active_directory`, `saml`, `kerberos` and `pki`.

0 commit comments

Comments
 (0)