krb5 commit: Document tabdump

Tom Yu tlyu at mit.edu
Mon Sep 14 14:13:26 EDT 2015


https://github.com/krb5/krb5/commit/67b21425aeb551b4489d5fbf7694e87beefbc701
commit 67b21425aeb551b4489d5fbf7694e87beefbc701
Author: Tom Yu <tlyu at mit.edu>
Date:   Wed Sep 9 16:02:13 2015 -0400

    Document tabdump
    
    ticket: 8243

 doc/admin/admin_commands/kdb5_util.rst |  152 ++++++++++++++++++++++++++++++++
 1 files changed, 152 insertions(+), 0 deletions(-)

diff --git a/doc/admin/admin_commands/kdb5_util.rst b/doc/admin/admin_commands/kdb5_util.rst
index a818bb5..c21bf62 100644
--- a/doc/admin/admin_commands/kdb5_util.rst
+++ b/doc/admin/admin_commands/kdb5_util.rst
@@ -330,6 +330,158 @@ principal processed to be listed, with an indication as to whether it
 needed updating or not.  The **-n** option performs a dry run, only
 showing the actions which would have been taken.
 
+tabdump
+~~~~~~~
+
+    **tabdump** [**-H**] [**-c**] [**-e**] [**-n**] [**-o** *outfile*]
+    *dumptype*
+
+Dump selected fields of the database in a tabular format suitable for
+reporting (e.g., using traditional Unix text processing tools) or
+importing into relational databases.  The data format is tab-separated
+(default), or optionally comma-separated (CSV), with a fixed number of
+columns.  The output begins with a header line containing field names,
+unless suppression is requested using the **-H** option.
+
+The *dumptype* parameter specifies the name of an output table (see
+below).
+
+Options:
+
+**-H**
+    suppress writing the field names in a header line
+
+**-c**
+    use comma separated values (CSV) format, with minimal quoting,
+    instead of the default tab-separated (unquoted, unescaped) format
+
+**-e**
+    write empty hexadecimal string fields as empty fields instead of
+    as "-1".
+
+**-n**
+    produce numeric output for fields that normally have symbolic
+    output, such as enctypes and flag names.  Also requests output of
+    time stamps as decimal POSIX time_t values.
+
+**-o** *outfile*
+    write the dump to the specified output file instead of to standard
+    output
+
+Dump types:
+
+**keydata**
+    principal encryption key information, including actual key data
+    (which is still encrypted in the master key)
+
+    **name**
+        principal name
+    **keyindex**
+        index of this key in the principal's key list
+    **kvno**
+        key version number
+    **enctype**
+        encryption type
+    **key**
+        key data as a hexadecimal string
+    **salttype**
+        salt type
+    **salt**
+        salt data as a hexadecimal string
+
+**keyinfo**
+    principal encryption key information (as in **keydata** above),
+    excluding actual key data
+
+**princ_flags**
+    principal boolean attributes.  Flag names print as hexadecimal
+    numbers if the **-n** option is specified, and all flag positions
+    are printed regardless of whether or not they are set.  If **-n**
+    is not specified, print all known flag names for each principal,
+    but only print hexadecimal flag names if the corresponding flag is
+    set.
+
+    **name**
+        principal name
+    **flag**
+        flag name
+    **value**
+        boolean value (0 for clear, or 1 for set)
+
+**princ_lockout**
+    state information used for tracking repeated password failures
+
+    **name**
+        principal name
+    **last_success**
+        time stamp of most recent successful authentication
+    **last_failed**
+        time stamp of most recent failed authentication
+    **fail_count**
+        count of failed attempts
+
+**princ_meta**
+    principal metadata
+
+    **name**
+        principal name
+    **modby**
+        name of last principal to modify this principal
+    **modtime**
+        timestamp of last modification
+    **lastpwd**
+        timestamp of last password change
+    **policy**
+        policy object name
+    **mkvno**
+        key version number of the master key that encrypts this
+        principal's key data
+    **hist_kvno**
+        key version number of the history key that encrypts the key
+        history data for this principal
+
+**princ_stringattrs**
+    string attributes (key/value pairs)
+
+    **name**
+        principal name
+    **key**
+        attribute name
+    **value**
+        attribute value
+
+**princ_tktpolicy**
+    per-principal ticket policy data, including maximum ticket
+    lifetimes
+
+    **name**
+        principal name
+    **expiration**
+        principal expiration date
+    **pw_expiration**
+        password expiration date
+    **max_life**
+        maximum ticket lifetime
+    **max_renew_life**
+        maximum renewable ticket lifetime
+
+Examples::
+
+    $ kdb5_util tabdump -o keyinfo.txt keyinfo
+    $ cat keyinfo.txt
+    name	keyindex	kvno	enctype	salttype	salt
+    foo at EXAMPLE.COM	0	1	aes128-cts-hmac-sha1-96	normal	-1
+    bar at EXAMPLE.COM	0	1	aes128-cts-hmac-sha1-96	normal	-1
+    bar at EXAMPLE.COM	1	1	des-cbc-crc	normal	-1
+    $ sqlite3
+    sqlite> .mode tabs
+    sqlite> .import keyinfo.txt keyinfo
+    sqlite> select * from keyinfo where enctype like 'des-cbc-%';
+    bar at EXAMPLE.COM	1	1	des-cbc-crc	normal	-1
+    sqlite> .quit
+    $ awk -F'\t' '$4 ~ /des-cbc-/ { print }' keyinfo.txt
+    bar at EXAMPLE.COM	1	1	des-cbc-crc	normal	-1
+
 
 SEE ALSO
 --------


More information about the cvs-krb5 mailing list