New documentation describing the format of the 'users' file.
[freeradius.git] / man / man5 / users.5
1 .TH USERS 5 "05 August 2000"
2 .SH NAME
3 users \- RADIUS users file
4 .SH DESCRIPTION
5 The \fIusers\fP file resides in the radius database directory,
6 by default \fI/etc/raddb\fP.  It contains a series of configuration
7 directives which are used by the server to decide how to authorize and
8 authenticate each user request.
9
10 Every line starting with a hash sign
11 .RB (' # ')
12 is treated as comment and ignored.
13 .PP
14
15 Each entry of the file begins with a username, followed by a (possibly
16 empty) list of check items.  The next line begins with a tab, and a
17 (possibly empty) list of reply items.  Each item in the check or reply
18 item list is an attribute of the form \fIname = value\fP.  Multiple
19 items may be placed on one line, in which case they must be seperated
20 by commas.
21
22 The check items are a list of attributes used to match the incoming
23 request.  If the username matches, AND all of the check items match
24 the incoming request, then the reply items are added to the list of
25 attributes which will be used in the reply to that request.  This
26 process is repeated for all of the entries in the users file.
27
28 .SH CAVEATS
29 The special username \fIDEFAULT\fP matches any usernames.
30
31 The entries are processed in order, from the top of the 'users' file,
32 on down.  If an entry contains the special attribute 'Fall-Through =
33 No' as a reply attribute, then the processing of the file stops, and
34 no more entries are matched.  Any reply item list without any
35 Fall-Through attribute is treated as though it included a
36 'Fall-Through = No' attribute.
37
38 If an entry contains the special attribute 'Fall-Through = Yes' as a
39 reply attribute, then the processing proceeds to the next entry in
40 order.
41
42 Care should be taken when using Fall-Through.  The server should be
43 tested in debugging mode with a number of test requests, in order to
44 verify that the configured entries behave as expected.
45
46 .SH OPERATORS
47 Additional operators other than '=' may be used for the attributes in
48 either the check item, or reply item list.  The following is a list of
49 operators, and their meaning.
50
51 .IP "Attribute = Value"
52 Not allowed as a check item.
53 .br
54 As a reply item, it means "add the item
55 to the reply list, but only if there is no other item of the same
56 attribute."
57
58 .IP "Attribute := Value"
59 Always matches as a check item, and replaces in the request any
60 attribute of the same name.  If no attribute of that name appears in
61 the request, then this attribute is added.
62 .br
63 As a reply item, it has an identical meaning, but for the reply items,
64 instead of the request items.
65
66 .IP "Attribute += Value"
67 Always matches as a check item, and adds the current attribute with
68 value to the incoming request.
69 .br
70 As a reply item, it has an identical meaning, but the attribute is
71 added to the reply items.
72
73 .IP "Attribute != Value"
74 As a check item, matches if the given attribute is in the request, AND
75 does not have the given value.
76
77 .IP "Attribute > Value"
78 As a check item, it matches if the request contains an attribute with
79 a value greater than the one given.
80 .br
81 Not allowed as a reply item.
82
83 .IP "Attribute >= Value"
84 As a check item, it matches if the request contains an attribute with
85 a value greater than, or equal to the one given.
86 .br
87 Not allowed as a reply item.
88
89 .IP "Attribute < Value"
90 As a check item, it matches if the request contains an attribute with
91 a value less than the one given.
92 .br
93 Not allowed as a reply item.
94
95 .IP "Attribute <= Value"
96 As a check item, it matches if the request contains an attribute with
97 a value less than, or equal to the one given.
98 .br
99 Not allowed as a reply item.
100
101 .IP "Attribute =~ Expression"
102 As a check item, it matches if the request contains an attribute which
103 matches the given regular expression.  This operator may only be
104 applied to string attributes.
105 .br
106 Not allowed as a reply item.
107
108 .IP "Attribute !~ Expression"
109 As a check item, it matches if the request contains an attribute which
110 does not match the given regular expression.  This operator may only be
111 applied to string attributes.
112 .br
113 Not allowed as a reply item.
114
115
116
117
118 .SH FILES
119 .I /etc/raddb/users
120 .SH "SEE ALSO"
121 .BR radiusd (8),
122 .BR dictionary (5)
123 .BR naslist (5)
124
125 .SH AUTHOR
126 The FreeRADIUS team.