store the retrieved Ticket Granting Ticket (TGT) in a
credential cache. The type of credential cache can be
controlled with this option. The supported values are:
- <parameter>KEYRING</parameter> (when supported by the system's
- Kerberos library and Kernel), <parameter>FILE</parameter> and
- <parameter>DIR</parameter> (when the DIR type is supported by
- the system's Kerberos library). In case of FILE a credential
- cache in the form of /tmp/krb5cc_UID will be created - in case
- of DIR you NEED to specify a directory. UID is replaced with
- the numeric user id.</para>
+ <parameter>KCM</parameter> or <parameter>KEYRING</parameter>
+ (when supported by the system's Kerberos library and
+ operating system),
+ <parameter>FILE</parameter> and <parameter>DIR</parameter>
+ (when the DIR type is supported by the system's Kerberos
+ library). In case of FILE a credential cache in the form of
+ /tmp/krb5cc_UID will be created - in case of DIR you NEED
+ to specify a directory. UID is replaced with the numeric
+ user id.</para>
<para>When using the KEYRING type, the supported mechanism is
<quote>KEYRING:persistent:UID</quote>, which uses the Linux
- kernel keyring to store credentials on a per-UID basis. This is
- the recommended choice on latest Linux distributions, as it is
- the most secure and predictable method.</para>
+ kernel keyring to store credentials on a per-UID basis.</para>
+
+ <para>When using th KCM type, the supported mechanism is
+ <quote>KCM:UID</quote>, which uses a Kerberos credential
+ manaager to store credentials on a per-UID basis simliar to
+ KEYRING. This is the recommended choice on latest Linux
+ distributions, offering a Kerberos Credential Manager. If not
+ we suggest to use KEYRING as those are the most secure and
+ predictable method.</para>
<para>It is also possible to define custom filepaths and use the "%u"
pattern in order to substitue the numeric user id.
gen_cc = talloc_asprintf(
mem_ctx, "KEYRING:persistent:%d", uid);
}
+ if (strequal(type, "KCM")) {
+ gen_cc = talloc_asprintf(mem_ctx,
+ "KCM:%d",
+ uid);
+ }
if (strnequal(type, "FILE:/", 6) ||
strnequal(type, "WRFILE:/", 8) ||