Home | History | Annotate | Line # | Download | only in hdb
hdb.asn1 revision 1.1
      1  1.1  elric -- $Id: hdb.asn1,v 1.1 2011/04/13 18:14:42 elric Exp $
      2  1.1  elric HDB DEFINITIONS ::=
      3  1.1  elric BEGIN
      4  1.1  elric 
      5  1.1  elric IMPORTS EncryptionKey, KerberosTime, Principal FROM krb5;
      6  1.1  elric 
      7  1.1  elric HDB_DB_FORMAT INTEGER ::= 2	-- format of database, 
      8  1.1  elric 				-- update when making changes
      9  1.1  elric 
     10  1.1  elric -- these must have the same value as the pa-* counterparts
     11  1.1  elric hdb-pw-salt	INTEGER	::= 3
     12  1.1  elric hdb-afs3-salt	INTEGER	::= 10
     13  1.1  elric 
     14  1.1  elric Salt ::= SEQUENCE {
     15  1.1  elric 	type[0]		INTEGER (0..4294967295),
     16  1.1  elric 	salt[1]		OCTET STRING,
     17  1.1  elric 	opaque[2]	OCTET STRING OPTIONAL
     18  1.1  elric }
     19  1.1  elric 
     20  1.1  elric Key ::= SEQUENCE {
     21  1.1  elric 	mkvno[0]	INTEGER (0..4294967295) OPTIONAL, -- master key version number
     22  1.1  elric 	key[1]		EncryptionKey,
     23  1.1  elric 	salt[2]		Salt OPTIONAL
     24  1.1  elric }
     25  1.1  elric 
     26  1.1  elric Event ::= SEQUENCE {
     27  1.1  elric 	time[0]		KerberosTime,
     28  1.1  elric 	principal[1]	Principal OPTIONAL
     29  1.1  elric }
     30  1.1  elric 
     31  1.1  elric HDBFlags ::= BIT STRING {
     32  1.1  elric 	initial(0),			-- require as-req
     33  1.1  elric 	forwardable(1),			-- may issue forwardable
     34  1.1  elric 	proxiable(2),			-- may issue proxiable
     35  1.1  elric 	renewable(3),			-- may issue renewable
     36  1.1  elric 	postdate(4),			-- may issue postdatable
     37  1.1  elric 	server(5),			-- may be server
     38  1.1  elric 	client(6),			-- may be client
     39  1.1  elric 	invalid(7),			-- entry is invalid
     40  1.1  elric 	require-preauth(8),		-- must use preauth
     41  1.1  elric 	change-pw(9),			-- change password service
     42  1.1  elric 	require-hwauth(10),		-- must use hwauth
     43  1.1  elric 	ok-as-delegate(11),		-- as in TicketFlags
     44  1.1  elric 	user-to-user(12),		-- may use user-to-user auth
     45  1.1  elric 	immutable(13),			-- may not be deleted
     46  1.1  elric 	trusted-for-delegation(14),	-- Trusted to print forwardabled tickets
     47  1.1  elric 	allow-kerberos4(15),		-- Allow Kerberos 4 requests
     48  1.1  elric 	allow-digest(16),		-- Allow digest requests
     49  1.1  elric 	locked-out(17)			-- Account is locked out,
     50  1.1  elric 					-- authentication will be denied
     51  1.1  elric }
     52  1.1  elric 
     53  1.1  elric GENERATION ::= SEQUENCE {
     54  1.1  elric 	time[0]		KerberosTime,			-- timestamp
     55  1.1  elric 	usec[1]		INTEGER (0..4294967295),	-- microseconds
     56  1.1  elric 	gen[2]		INTEGER (0..4294967295)		-- generation number
     57  1.1  elric }
     58  1.1  elric 
     59  1.1  elric HDB-Ext-PKINIT-acl ::= SEQUENCE OF SEQUENCE {
     60  1.1  elric 	subject[0]	UTF8String,
     61  1.1  elric 	issuer[1]	UTF8String OPTIONAL,
     62  1.1  elric 	anchor[2]	UTF8String OPTIONAL
     63  1.1  elric }
     64  1.1  elric 
     65  1.1  elric HDB-Ext-PKINIT-hash ::= SEQUENCE OF SEQUENCE {
     66  1.1  elric 	digest-type[0] OBJECT IDENTIFIER,
     67  1.1  elric 	digest[1] OCTET STRING
     68  1.1  elric }
     69  1.1  elric 
     70  1.1  elric HDB-Ext-PKINIT-cert ::= SEQUENCE OF SEQUENCE {
     71  1.1  elric 	cert[0] OCTET STRING
     72  1.1  elric }
     73  1.1  elric 
     74  1.1  elric HDB-Ext-Constrained-delegation-acl ::= SEQUENCE OF Principal
     75  1.1  elric 
     76  1.1  elric -- hdb-ext-referrals ::= PA-SERVER-REFERRAL-DATA
     77  1.1  elric 
     78  1.1  elric HDB-Ext-Lan-Manager-OWF ::= OCTET STRING
     79  1.1  elric 
     80  1.1  elric HDB-Ext-Password ::= SEQUENCE {
     81  1.1  elric 	mkvno[0]	INTEGER (0..4294967295) OPTIONAL, -- master key version number
     82  1.1  elric 	password	OCTET STRING
     83  1.1  elric }
     84  1.1  elric 
     85  1.1  elric HDB-Ext-Aliases ::= SEQUENCE {
     86  1.1  elric 	case-insensitive[0]	BOOLEAN, -- case insensitive name allowed
     87  1.1  elric 	aliases[1]		SEQUENCE OF Principal -- all names, inc primary
     88  1.1  elric }
     89  1.1  elric 
     90  1.1  elric 
     91  1.1  elric HDB-extension ::= SEQUENCE {
     92  1.1  elric         mandatory[0]    BOOLEAN,        -- kdc MUST understand this extension,
     93  1.1  elric                                         --   if not the whole entry must
     94  1.1  elric                                         --   be rejected
     95  1.1  elric         data[1]          CHOICE {
     96  1.1  elric 	        pkinit-acl[0]			HDB-Ext-PKINIT-acl,
     97  1.1  elric 	        pkinit-cert-hash[1]  		HDB-Ext-PKINIT-hash,
     98  1.1  elric 		allowed-to-delegate-to[2]   HDB-Ext-Constrained-delegation-acl,
     99  1.1  elric --		referral-info[3]		HDB-Ext-Referrals,
    100  1.1  elric 		lm-owf[4]			HDB-Ext-Lan-Manager-OWF,
    101  1.1  elric 		password[5]			HDB-Ext-Password,
    102  1.1  elric 		aliases[6]			HDB-Ext-Aliases,
    103  1.1  elric 		last-pw-change[7]		KerberosTime,
    104  1.1  elric 	        pkinit-cert[8]  		HDB-Ext-PKINIT-cert,
    105  1.1  elric 		...
    106  1.1  elric 	},
    107  1.1  elric 	...
    108  1.1  elric }
    109  1.1  elric 
    110  1.1  elric HDB-extensions ::= SEQUENCE OF HDB-extension
    111  1.1  elric 
    112  1.1  elric hdb_keyset ::= SEQUENCE {
    113  1.1  elric 	kvno[1]		INTEGER (0..4294967295),
    114  1.1  elric 	keys[0]		SEQUENCE OF Key
    115  1.1  elric }
    116  1.1  elric 
    117  1.1  elric hdb_entry ::= SEQUENCE {
    118  1.1  elric 	principal[0]	Principal  OPTIONAL, -- this is optional only 
    119  1.1  elric 					     -- for compatibility with libkrb5
    120  1.1  elric 	kvno[1]		INTEGER (0..4294967295),
    121  1.1  elric 	keys[2]		SEQUENCE OF Key,
    122  1.1  elric 	created-by[3]	Event,
    123  1.1  elric 	modified-by[4]	Event OPTIONAL,
    124  1.1  elric 	valid-start[5]	KerberosTime OPTIONAL,
    125  1.1  elric 	valid-end[6]	KerberosTime OPTIONAL,
    126  1.1  elric 	pw-end[7]	KerberosTime OPTIONAL,
    127  1.1  elric 	max-life[8]	INTEGER (0..4294967295) OPTIONAL,
    128  1.1  elric 	max-renew[9]	INTEGER (0..4294967295) OPTIONAL,
    129  1.1  elric 	flags[10]	HDBFlags,
    130  1.1  elric 	etypes[11]	SEQUENCE OF INTEGER (0..4294967295) OPTIONAL,
    131  1.1  elric 	generation[12]	GENERATION OPTIONAL,
    132  1.1  elric         extensions[13]  HDB-extensions OPTIONAL
    133  1.1  elric }
    134  1.1  elric 
    135  1.1  elric hdb_entry_alias ::= [APPLICATION 0] SEQUENCE {
    136  1.1  elric 	principal[0]	Principal  OPTIONAL
    137  1.1  elric }
    138  1.1  elric 
    139  1.1  elric END
    140