source: trunk/LATMOS-Accounts/man/man8/latmos-accounts-base-sql.pod @ 1590

Last change on this file since 1590 was 1590, checked in by nanardon, 9 years ago

Add employment start date like end*

File size: 5.6 KB
Line 
1# $Id$
2
3=head1 DESCRIPTION
4
5=head1 SPECIFIC SETUP PARAMTERS
6
7=head2 db_conn
8
9The C<libpq> connection parameters, eg a semin colon separated paramaters
10containing the server, the database name, user and password, etc...
11
12=head1 FEATURES
13
14=head2 Network managment
15
16Link::Accounts can build automatically some part of your DNS or DHCP
17configuration.
18
19To do this you have to create a C<netzone> object. Such object need a type:
20
21=over 4
22
23=item dns: to build a DNS zone for classic domain
24
25=item reverse: for reverse IP address (168.192.in-addr.arpa)
26
27=item dhcp: ISC dscpd configuration for fixed address
28
29=item puppet: puppet configuration
30
31=back
32
33The way it works is quite simple, each zone will make the code to write a file
34you can include in your server configuration. The match is done by looking the
35zone IP address masks and the host IPs.
36
37For example someone having a zone named C<private.mydomain.com> having masks
38C<192.168.5.0/24>, and having an host named C<foo> with IP C<192.168.5.3> and
39another host C<bar> with IP C<192.168.13.78>. The zone built will look likes:
40
41    foo IN A 192.168.5.3
42
43As you can see this DNS zone is not valid: the goal of such feature is to make
44the repetive work for us, not to manage the full zone (even such feature could
45be possible). The repetitive work is declaring the hundred computers our users
46have.
47
48The output will be happend to a template have the name of the zone suffixed by
49C<.in>. You can put in this template evering about the zone declaration (SOA,
50NS, TXT...).
51
52=head2 User endcircuit
53
54The C<endcircuit> attribute contain the deadline for people to make
55admnistrative task when starting to work.
56If set this attribute take precedence to C<expire> attribute for computed
57attributes (C<accountExpires> for Active Directory).
58
59=head2 User Employment
60
61The employment object allow you to set time when you're user have a status. This
62allow through 'Employment' module for la-sync-manager to automate changes.
63
64The synchronized attributes are:
65
66=over 4
67
68=item C<company>
69
70=item C<department>
71
72=item C<contratType>
73
74=item C<managerContact>
75
76=item C<expire>
77
78=item C<endcircuit>
79
80=back
81
82To avoid error when modifying user direclty when you're using employment those
83attribute become on user's side become read-only once an employment exists.
84
85You can change this beaviour using C<employment_lock_user> parameter:
86
87=over 4
88
89=item any (default)
90
91Any existing employment lock those attribute, you must
92create another employment to change user status or delete all employements for
93this user.
94
95=item always
96
97The user's attribute are always locked
98
99=item never
100
101The user's attribute are always locked
102
103=item active
104
105Thoses attributes are locked is any employment are still active (ie unfinished
106or coming later).
107
108=item attribute=value
109
110Thoses attributes are read-only if the C<attribute> given contains C<value>,
111C<*> allow to match any value.
112
113=back
114
115When active users become out of any employment all managed attribute are unset
116(except the expire attribute).
117
118A default value for each of this attribute can be set in configuration using
119parameter in form C<unemployment.ATTRIBUTE>. For example
120C<unemployment.contratType=external> will set any C<contratType> to C<external>
121when no employment apply to user anymore.
122
123Only active accounts are modified in this way.
124
125=head3 User endEmployment
126
127This attribute compute the next day the user will leave the company according
128the employment object registered.
129
130The parameter C<employment_delay> give the number of days to ignore when a hole
131exists between two employment.
132
133If no employment are found, if set the date given in C<unemployed_expire>
134database parameter is returned.
135
136=head3 User endStrictEmployment
137
138This attribute compute the next day the user will leave the company according
139the employment object registered.
140
141It does not take C<employment_delay> parameter into account.
142
143If no employment are found, if set the date given in C<unemployed_expire>
144database parameter is returned.
145
146=head3 User endLastEmployment
147
148This attribute return the very last end of all registered employment fr this
149user.
150
151=head3 User endCurrentEmployment
152
153The end of the employment matching current date.
154
155=head3 Account Expiration
156
157When using employment, account expiration are set to match employment. By
158default the expiration is set to C<endEmployment> value.
159
160This behaviour can be changed by setting C<expireOn> parameter into base
161definition:
162
163=over 4
164
165=item any of endCurrentEmployment, endEmployment, endStrictEmployment, endLastEmployment
166
167=item never
168
169The expire date is left unchanged and must managed manually.
170
171=back
172
173=head2 Group AutoMemberFilter
174
175Group objects contains users members by setting either C<members> or
176C<memberUID> attributes.
177
178Sometimes it can be usefull to have group automatically populated by arbitrary
179rules.
180
181This is possible by setting a filter in the C<autoMemberFilter> attribute,
182The filter format is the same the one used by L<la-search>, the attribute is
183multivaluable.
184
185So for example one can create an account automatically a group containing people
186having "Olivier" as first name:
187
188    autoMemberFilter: givenBame=Olivier
189
190A probably more usefull example is a group containing people from two others
191groups:
192
193    autoMemberFilter: memberOf=group1
194    autoMemberFilter: memberOf=group2
195
196The  C<members> or C<memberUID> attribute becomes read-only attribute once
197C<autoMemberFilter> attribute is set.
198
199=head2 Aliases AutoMemberFilter
200
201This attribute allow to create automatics dynamics aliases according filter
202rules exactly like L<Group AutoMemberFilter> works.
203
204The C<forward> attributes is automatically set with email address of selected
205user, user w/o email address are ignored.
Note: See TracBrowser for help on using the repository browser.