import torrus 1.0.9
[freeside.git] / torrus / doc / manpages / torrus_acledit.pod.in
1 #  Copyright (C) 2004  Stanislav Sinyagin
2 #
3 #  This program is free software; you can redistribute it and/or modify
4 #  it under the terms of the GNU General Public License as published by
5 #  the Free Software Foundation; either version 2 of the License, or
6 #  (at your option) any later version.
7 #
8 #  This program is distributed in the hope that it will be useful,
9 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
10 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 #  GNU General Public License for more details.
12 #
13 #  You should have received a copy of the GNU General Public License
14 #  along with this program; if not, write to the Free Software
15 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
16
17 # $Id: torrus_acledit.pod.in,v 1.1 2010-12-27 00:04:39 ivan Exp $
18 # Stanislav Sinyagin <ssinyagin@yahoo.com>
19 #
20 #
21
22 =head1 NAME
23
24 acledit - Manage Torrus access control lists (ACLs).
25
26 =head1 SYNOPSIS
27
28 B<torrus acledit> [I<options...>]
29
30 =head1 DESCRIPTION
31
32 This command manages the Torrus access control lists. Each user is
33 identified by user ID, and has a set of attributes. Currently
34 supported attributes are C<cn> (common name) and C<userPasswordMD5>
35 (MD5 digest of the user's password).
36
37 Each user belongs to one or several groups. Each group has its own
38 set of privileges. A privilege is identified by privilege name and
39 object name. Currently only one privilege name is supported:
40 C<DisplayTree>, and the object name is the name of the tree that
41 this group is allowed to browse.
42
43 User authorization in the web interface is controlled by the
44 C<$Torrus::CGI::authorizeUsers> variable in F<torrus-siteconfig.pl>.
45
46 =head1 GROUP MANAGEMENT OPTIONS
47
48 =over 4
49
50 =item B<--addgroup>=I<GROUP>
51
52 Creates a new group with the given name.
53
54 =item B<--delgroup>=I<GROUP>
55
56 Deletes the group with the given name.
57
58 =item B<--modgroup>=I<GROUP>
59
60 Modifies the given group.
61
62 =item B<--permit>=I<PRIVILEGE>
63
64 Grants privilege to group(s). Currently supported privileges are:
65 C<DisplayTree> for displaying a datasource tree, and C<DisplayAdmInfo>
66 for displaying the administrative information (all significant
67 parameters for a given datasource leaf).
68
69 =item B<--deny>=I<PRIVILEGE>
70
71 Revokes group(s) privilege.
72
73 =item B<--for>=I<OBJECT>
74
75 Object for which privileges are granted or revoked. Currently it must be
76 the name of the tree for which the C<DisplayTree> and  C<DisplayAdmInfo>
77 privilegs are granted or revoked. The asterisk (*) instead of the object
78 name assigns the privilege for all objects.
79
80 =back
81
82
83 =head1 USER MANAGEMENT OPTIONS
84
85 =over 4
86
87 =item B<--adduser>=I<UID>
88
89 Creates a new user with the given user ID.
90
91 =item B<--addhost>=I<HOST>
92
93 Creates a new user for host-based authentication. I<HOST> should be an
94 IPv4 or IPv6 address of the HTTP client. The new username is the address
95 with all non-alphanumeric characters replaced with underscores.
96 Host password is changed by <--hostpassword> option.
97
98 =item B<--deluser>=I<UID>
99
100 Deletes user with the given user ID.
101
102 =item B<--moduser>=I<UID>
103
104 Modifies the user attributes for the given user ID.
105
106 =item B<--addtogroup>=I<GROUP>
107
108 Adds user to the given group.
109
110 =item B<--delfromgroup>=I<GROUP>
111
112 Deletes user from the given group.
113
114 =item B<--password>=I<PASSWORD>
115
116 Sets user's password.
117
118 =item B<--hostpassword>=I<PASSWORD>
119
120 Sets the password for host-based authentication. The HTTP client should
121 add C<hostauth> parameter with the password as a value.
122
123 =item B<--cn>=I<NAME>
124
125 Sets user's common name.
126
127 =item B<--showuser>=I<UID>
128
129 Displays information for a given user.
130
131 =back
132
133
134 =head1 GENERAL OPTIONS
135
136 =over 4
137
138 =item B<--export>=I<FILE>
139
140 Exports ACL configuration to a given file.
141
142 =item B<--template>=I<FILE>
143
144 Uses the given template file when exporting. Default value is F<aclexport.xml>.
145
146 =item B<--import>=I<FILE>
147
148 Imports ACL configuration from the given file.
149
150 =item B<--clear>
151
152 Deletes all user and privileges configuration.
153
154 =item B<--list>
155
156 Lists all users and groups they belong to.
157
158 =item B<--debug>
159
160 Sets the log level to debug.
161
162 =item B<--verbose>
163
164 Sets the log level to info.
165
166 =item B<--help>
167
168 Displays a help message.
169
170 =back
171
172
173 =head1 EXAMPLES
174
175   torrus acledit --addgroup=staff --permit=DisplayTree \
176     --for=main --for=thecustomer
177   torrus acledit --adduser=jsmith --password=mysecretpassword \
178     --cn="John Smith" --addtogroup=staff
179   torrus acledit --addgroup=admin --permit=DisplayTree --for='*'
180
181 This example creates a group I<staff> and gives all its members the permission
182 to browse the datasource trees I<main> and I<thecustomer>. The next command
183 creates a user I<jsmith> and addts it to this group. The user name will
184 be displayed as I<John Smith>, and it will be let in with the given
185 password. The third command creates a group I<admin> which is allowed
186 o browse all existing trees.
187
188 =head1 FILES
189
190 =over 4
191
192 =item F<@siteconfdir@/torrus-siteconfig.pl>
193
194 Torrus site configuration script.
195
196 =item F<@tmpldir@/aclexport.xml>
197
198 Default template for the exports of ACL configuration.
199
200 =back
201
202 =head1 SEE ALSO
203
204 L<torrus(@mansec_usercmd@)>
205
206 =head1 NOTES
207
208 See more documentation at Torrus home page: http://torrus.org
209
210 =head1 AUTHOR
211
212 Stanislav Sinyagin E<lt>ssinyagin@yahoo.comE<gt>