summaryrefslogtreecommitdiff
path: root/usr.bin/ssh/auth.h
diff options
context:
space:
mode:
authorDamien Miller <djm@cvs.openbsd.org>2010-05-07 11:30:31 +0000
committerDamien Miller <djm@cvs.openbsd.org>2010-05-07 11:30:31 +0000
commit52c11610cb668bb2d16beeab8db488503604b9bc (patch)
tree34c8bc058192aa4e55e8ec49458d4a5ac80b5e4a /usr.bin/ssh/auth.h
parentdf6345e4898e4044424852df9eb6883ca20963c5 (diff)
add some optional indirection to matching of principal names listed
in certificates. Currently, a certificate must include the a user's name to be accepted for authentication. This change adds the ability to specify a list of certificate principal names that are acceptable. When authenticating using a CA trusted through ~/.ssh/authorized_keys, this adds a new principals="name1[,name2,...]" key option. For CAs listed through sshd_config's TrustedCAKeys option, a new config option "AuthorizedPrincipalsFile" specifies a per-user file containing the list of acceptable names. If either option is absent, the current behaviour of requiring the username to appear in principals continues to apply. These options are useful for role accounts, disjoint account namespaces and "user@realm"-style naming policies in certificates. feedback and ok markus@
Diffstat (limited to 'usr.bin/ssh/auth.h')
-rw-r--r--usr.bin/ssh/auth.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/usr.bin/ssh/auth.h b/usr.bin/ssh/auth.h
index d7fbdfba620..217723fcac6 100644
--- a/usr.bin/ssh/auth.h
+++ b/usr.bin/ssh/auth.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: auth.h,v 1.65 2010/03/04 10:36:03 djm Exp $ */
+/* $OpenBSD: auth.h,v 1.66 2010/05/07 11:30:29 djm Exp $ */
/*
* Copyright (c) 2000 Markus Friedl. All rights reserved.
@@ -146,8 +146,10 @@ int verify_response(Authctxt *, const char *);
char *authorized_keys_file(struct passwd *);
char *authorized_keys_file2(struct passwd *);
+char *authorized_principals_file(struct passwd *);
FILE *auth_openkeyfile(const char *, struct passwd *, int);
+FILE *auth_openprincipals(const char *, struct passwd *, int);
int auth_key_is_revoked(Key *);
HostStatus