Configure Required Multiple

Version 3 (Bryan Heath, 07/25/2012 10:04 am)

1 1
h1. Configure Required Multiple
2 1
3 1
Everything is pretty well documented in the /ldap/config.php file however here is a more inclusive documentation
4 1
5 1
These directions are +*only*+ meant for use with multiple domains on different controllers
6 1
7 1
h1. Delete
8 1
9 1
Delete from config.php
10 1
11 1
<pre>/**
12 1
 * LDAP domain info
13 1
 * AD Prefix => Base DN
14 1
 * array('@mydomain.local' => 'DC=mydomain,DC=local')
15 1
 */
16 1
$ldap_domain_info = array('@mydomain.local' => 'DC=mydomain,DC=local');
17 1
18 1
/**
19 1
 * Domain controller(s).  You can use names or IPs
20 1
 * You can have more than one domain server by using
21 1
 * array('dc01.mydomain.local', 'dc02.mydomain.local', 'dc03.mydomain.local');
22 1
 */
23 1
$ldap_domain_controllers = array('dc01.mydomain.local');</pre>
24 1
25 1
h1. Add
26 1
27 3 Bryan Heath
You now need to add $multiple_domains_controllers with an array for each domain and controllers.
28 1
29 1
h2. Example
30 1
31 3 Bryan Heath
<pre>$multiple_domains_controllers = array(
32 1
    array(
33 1
        'domain_info' => array('@domain1.com' => 'DC=domain1,DC=com'),
34 1
        'domain_controllers' => array('dc01.domain1.com'),
35 1
    ),
36 1
    array(
37 1
        'domain_info' => array('@domain2.com' => 'DC=domain2,DC=com'),
38 1
        'domain_controllers' => array('dc02.domain2.com'),
39 1
    ),
40 1
); </pre>
41 1
42 2 Bryan Heath
Notice how each domain has it's own array.  
43 2 Bryan Heath
44 2 Bryan Heath
So another example lets say you have domain3.com and dc03.domain3.com is the controller that knows about it
45 1
46 3 Bryan Heath
<pre>$multiple_domains_controllers = array(
47 1
    array(
48 1
        'domain_info' => array('@domain1.com' => 'DC=domain1,DC=com'),
49 1
        'domain_controllers' => array('dc01.domain1.com'),
50 1
    ),
51 1
    array(
52 1
        'domain_info' => array('@domain2.com' => 'DC=domain2,DC=com'),
53 1
        'domain_controllers' => array('dc02.domain2.com'),
54 1
    ),
55 1
    array(
56 1
        'domain_info' => array('@domain3.com' => 'DC=domain3,DC=com'),
57 1
        'domain_controllers' => array('dc03.domain3.com'),
58 1
    ),
59 1
); </pre>
60 1
61 1
Another example let say that each domain has multiple controllers.
62 1
63 3 Bryan Heath
<pre>$multiple_domains_controllers = array(
64 1
    array(
65 1
        'domain_info' => array('@domain1.com' => 'DC=domain1,DC=com'),
66 1
        'domain_controllers' => array('dc01.domain1.com', 'dc02.domain1.com', 'dc03.domain1.com'),
67 1
    ),
68 1
    array(
69 1
        'domain_info' => array('@domain2.com' => 'DC=domain2,DC=com'),
70 1
        'domain_controllers' => array('dc02.domain2.com', 'dc02.domain2.com', 'dc03.domain2.com', 'dc04.domain2.com', 'dc05.domain2.com'),
71 1
    ),
72 1
    array(
73 1
        'domain_info' => array('@domain3.com' => 'DC=domain3,DC=com'),
74 1
        'domain_controllers' => array('dc03.domain3.com', 'dc02.domain3.com'),
75 1
    ),
76 1
); </pre>
77 1
78 1
You can also group domains and controllers together.  Lets say that domain1.com and domain3.com are all on the same controllers and only domain2 is not.
79 1
80 3 Bryan Heath
<pre>$multiple_domains_controllers = array(
81 1
    array(
82 1
        'domain_info' => array('@domain1.com' => 'DC=domain1,DC=com', '@domain3.com' => 'DC=domain3,DC=com'),
83 1
        'domain_controllers' => array('dc01.domain1.com', 'dc02.domain1.com', 'dc03.domain1.com'),
84 1
    ),
85 1
    array(
86 1
        'domain_info' => array('@domain2.com' => 'DC=domain2,DC=com'),
87 1
        'domain_controllers' => array('dc02.domain2.com', 'dc02.domain2.com', 'dc03.domain2.com', 'dc04.domain2.com', 'dc05.domain2.com'),
88 1
    ),
89 1
); </pre>
90 1
91 1
h1. @$staff_groups = array('Group' => 'Staff');@
92 1
93 1
*+This is only required if you are going to use this for staff logins+*
94 1
95 1
If you are not sure what this part is for please see the [[Setup]] page and Staff setup.
96 1
97 1
Change for AD staff groups a user +must+ be in to login
98 1
99 1
* AD_Group => Kayako_Staff_Team
100 1
* Case sensitive 
101 1
* Can have more than one
102 1
** The list goes in order of how its entered and stops when a user is found.  So if the user is in more than one AD group that have a Staff Team he will only be apart of the team of the first AD group they are found in
103 1
** So in the example below lets say you have a user in the Tech Support and Finance AD Group.  They would only be a Support team because that one is before Sales on the list.
104 1
105 1
h2. Example:
106 1
107 1
Let's say you have an AD group call Tech Support and you have a Kayako Staff Team called Support
108 1
@$staff_groups = array('Tech Support' => 'Support');@
109 1
More than one:
110 1
@$staff_groups = array('Tech Support' => 'Support', 'IS' => 'Support', 'Finance' => 'Sales', 'Customer Service' => 'Sales');@