Unleashed v1.4
[unleashed.git] / share / man / man5 / pam_authtok_check.5
blobf597665fe8dddaf393a85b3007f180b1a804f5b9
1 '\" te
2 .\" Copyright (C) 2003, Sun Microsystems, Inc.
3 .\" All Rights Reserved
4 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
5 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
6 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
7 .TH PAM_AUTHTOK_CHECK 5 "Mar 1, 2005"
8 .SH NAME
9 pam_authtok_check \- authentication and password management module
10 .SH SYNOPSIS
11 .LP
12 .nf
13 \fBpam_authtok_check.so.1\fR
14 .fi
16 .SH DESCRIPTION
17 .sp
18 .LP
19 \fBpam_authtok_check\fR provides functionality to the Password Management
20 stack. The implementation of \fBpam_sm_chauthtok()\fR performs a number of
21 checks on the construction of the newly entered password.
22 \fBpam_sm_chauthtok()\fR is invoked twice by the PAM framework, once with flags
23 set to \fBPAM_PRELIM_CHECK\fR, and once with flags set to
24 \fBPAM_UPDATE_AUTHTOK\fR. This module only performs its checks during the first
25 invocation. This module expects the current authentication token in the
26 \fBPAM_OLDAUTHTOK\fR item, the new (to be checked) password in the
27 \fBPAM_AUTHTOK\fR item, and the login name in the \fBPAM_USER\fR item. The
28 checks performed by this module are:
29 .sp
30 .ne 2
31 .na
32 \fBlength\fR
33 .ad
34 .RS 20n
35 The password length should not be less that the minimum specified in
36 \fB/etc/default/passwd\fR.
37 .RE
39 .sp
40 .ne 2
41 .na
42 \fBcircular shift\fR
43 .ad
44 .RS 20n
45 The password should not be a circular shift of the login name. This check may
46 be disabled in \fB/etc/default/passwd\fR.
47 .RE
49 .sp
50 .ne 2
51 .na
52 \fBcomplexity\fR
53 .ad
54 .RS 20n
55 The password should contain at least the minimum number of characters described
56 by the parameters \fBMINALPHA\fR, \fBMINNONALPHA\fR, \fBMINDIGIT\fR, and
57 \fBMINSPECIAL\fR. Note that \fBMINNONALPHA\fR describes the same character
58 classes as \fBMINDIGIT\fR and \fBMINSPECIAL\fR combined; therefore the user
59 cannot specify both \fBMINNONALPHA\fR and \fBMINSPECIAL\fR (or \fBMINDIGIT\fR).
60 The user must choose which of the two options to use. Furthermore, the
61 \fBWHITESPACE\fR parameter determines whether whitespace characters are
62 allowed. If unspecified \fBMINALPHA\fR is 2, \fBMINNONALPHA\fR is 1 and
63 \fBWHITESPACE\fR is yes
64 .RE
66 .sp
67 .ne 2
68 .na
69 \fBvariation\fR
70 .ad
71 .RS 20n
72 The old and new passwords must differ by at least the \fBMINDIFF\fR value
73 specified in \fB/etc/default/passwd\fR. If unspecified, the default is 3. For
74 accounts in name services which support password history checking, if prior
75 history is defined, the new password must not match the prior passwords.
76 .RE
78 .sp
79 .ne 2
80 .na
81 \fBdictionary check\fR
82 .ad
83 .RS 20n
84 The password must not be based on a dictionary word. The list of words to be
85 used for the site's dictionary can be specified with \fBDICTIONLIST\fR. It
86 should contain a comma-separated list of filenames, one word per line. The
87 database that is created from these files is stored in the directory named by
88 \fBDICTIONDBDIR\fR (defaults to \fB/var/passwd\fR). See \fBmkpwdict\fR(8) for
89 information on pre-generating the database. If neither \fBDICTIONLIST\fR nor
90 \fBDICTIONDBDIR\fR is specified, no dictionary check is made.
91 .RE
93 .sp
94 .ne 2
95 .na
96 \fBupper/lower case\fR
97 .ad
98 .RS 20n
99 The password must contain at least the minimum of upper- and lower-case letters
100 specified by the \fBMINUPPER\fR and \fBMINLOWER\fR values in
101 \fB/etc/default/passwd\fR. If unspecified, the defaults are 0.
105 .ne 2
107 \fBmaximum repeats\fR
109 .RS 20n
110 The password must not contain more consecutively repeating characters than
111 specified by the \fBMAXREPEATS\fR value in \fB/etc/default/passwd\fR. If
112 unspecified, no repeat character check is made.
117 The following option may be passed to the module:
119 .ne 2
121 \fBforce_check\fR
123 .RS 15n
124 If the \fBPAM_NO_AUTHTOK_CHECK\fR flag set, \fBforce_check\fR ignores this
125 flag. The \fBPAM_NO_AUTHTOK_CHECK\fR flag can be set to bypass password checks
126 (see \fBpam_chauthtok\fR(3PAM)).
130 .ne 2
132 \fBdebug\fR
134 .RS 15n
135 \fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
138 .SH RETURN VALUES
141 If the password in \fBPAM_AUTHTOK\fR passes all tests, \fBPAM_SUCCESS\fR is
142 returned. If any of the tests fail, \fBPAM_AUTHTOK_ERR\fR is returned.
143 .SH FILES
145 .ne 2
147 \fB/etc/default/passwd\fR
149 .RS 23n
150 See \fBpasswd\fR(1) for a description of the contents.
153 .SH ATTRIBUTES
156 See \fBattributes\fR(5) for descriptions of the following attributes:
161 box;
162 c | c
163 l | l .
164 ATTRIBUTE TYPE  ATTRIBUTE VALUE
166 Interface Stability     Evolving
168 MT Level        MT-Safe with exceptions
171 .SH SEE ALSO
174 \fBpasswd\fR(1), \fBpam\fR(3PAM), \fBmkpwdict\fR(8),
175 \fBpam_chauthtok\fR(3PAM), \fBsyslog\fR(3C), \fBlibpam\fR(3LIB),
176 \fBpam.conf\fR(4), \fBpasswd\fR(4), \fBshadow\fR(4), \fBattributes\fR(5),
177 \fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
178 \fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
179 \fBpam_unix_session\fR(5)
180 .SH NOTES
183 The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
184 multi-threaded application uses its own \fBPAM\fR handle.
187 The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
188 provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
189 \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
190 \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
191 \fBpam_unix_session\fR(5).