2 * Copyright (c) 2006 Kungliga Tekniska Högskolan
3 * (Royal Institute of Technology, Stockholm, Sweden).
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the
15 * documentation and/or other materials provided with the distribution.
17 * 3. Neither the name of the Institute nor the names of its contributors
18 * may be used to endorse or promote products derived from this software
19 * without specific prior written permission.
21 * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
36 #ifndef HEIMDAL_KDC_KDC_AUDIT_H
37 #define HEIMDAL_KDC_KDC_AUDIT_H 1
43 /* auth event type enumeration, currently for AS only */
44 #define KDC_AUTH_EVENT_INVALID 0 /* no event logged */
45 #define KDC_AUTH_EVENT_CLIENT_AUTHORIZED 1 /* all authn/authz checks passed */
46 #define KDC_AUTH_EVENT_CLIENT_UNKNOWN 2 /* client unknown */
47 #define KDC_AUTH_EVENT_CLIENT_LOCKED_OUT 3 /* client locked out */
48 #define KDC_AUTH_EVENT_CLIENT_TIME_SKEW 4 /* client time skew */
49 #define KDC_AUTH_EVENT_WRONG_LONG_TERM_KEY 5 /* PA failed to validate long term key */
50 #define KDC_AUTH_EVENT_VALIDATED_LONG_TERM_KEY 6 /* PA validated long term key */
51 #define KDC_AUTH_EVENT_CLIENT_NAME_UNAUTHORIZED 7 /* couldn't map GSS/PKINIT name to principal */
52 #define KDC_AUTH_EVENT_PREAUTH_FAILED 8 /* generic PA failure */
53 #define KDC_AUTH_EVENT_PREAUTH_SUCCEEDED 9 /* generic (non-long term key) PA success */
56 * Audit keys to be queried using kdc_audit_getkv(). There are other keys
57 * intended for logging that are not defined below; the constants below are
58 * there to ease migration from the older auth_status HDB API.
61 #define KDC_REQUEST_KV_AUTH_EVENT "#auth_event" /* heim_number_t */
62 #define KDC_REQUEST_KV_PA_NAME "pa" /* heim_string_t */
63 #define KDC_REQUEST_KV_PA_ETYPE "pa-etype" /* heim_number_t */
64 #define KDC_REQUEST_KV_GSS_INITIATOR "gss_initiator" /* heim_string_t */
65 #define KDC_REQUEST_KV_PKINIT_CLIENT_CERT "pkinit_client_cert" /* heim_string_t */
67 #endif /* HEIMDAL_KDC_KDC_AUDIT_H */