Wiki
Version 2 (Ashish Kataria, 10/17/2012 07:26 am)
1 | 1 | Using single sign-on (SSO) will permit a single action of user authentication and authorization to access all computers and systems where he has access permission, without the need to enter multiple passwords. |
|
---|---|---|---|
2 | 1 | INSTALLATION |
|
3 | 1 | --------------------- |
|
4 | 1 | 1. Download and extract Single. |
|
5 | 1 | ||
6 | 1 | You can obtain the latest Single Sign-On release from [[http://forge.kayako.com/attachments/download/260/samlsso.zip]] -- the files are available in .zip formats and can be extracted using most compression tools. |
|
7 | 1 | To download and extract the files, on a typical Unix/Linux command line, use the following commands: |
|
8 | 1 | ||
9 | 2 | Ashish Kataria | <pre> |
10 | 1 | wget http://forge.kayako.com/attachments/download/260/samlsso.zip |
|
11 | 1 | tar -zxvf samlsso.zip |
|
12 | 2 | Ashish Kataria | </pre> |
13 | 1 | This will create a new directory samlsso/ containing all samlsso files and directories. Then, to move the contents of that directory within your helpdesk app folder, continue with this command: |
|
14 | 2 | Ashish Kataria | |
15 | 2 | Ashish Kataria | <pre> |
16 | 1 | mv samlsso /path/to/your/installation/__apps/ |
|
17 | 2 | Ashish Kataria | </pre> |
18 | 1 | ||
19 | 1 | 2. Go to Admin interface of your helpdesk and click on Apps on left hand side menu |
|
20 | 1 | ||
21 | 1 | !http://forge.kayako.com/attachments/download/309/Screen_Shot_2012-10-12_at_11.27.33_AM.png! |
|
22 | 1 | ||
23 | 1 | 3. Now click on Single Sign On and then click on Install button, this will install this app |
|
24 | 1 | ||
25 | 1 | !http://forge.kayako.com/attachments/download/310/Screen_Shot_2012-10-12_at_11.34.35_AM.png! |
|
26 | 1 | ||
27 | 1 | 4. Now click on Settings option from left side menu and click on Single Sign On |
|
28 | 1 | ||
29 | 1 | !http://forge.kayako.com/attachments/download/311/Screen_Shot_2012-10-12_at_11.45.25_AM.png! |
|
30 | 1 | ||
31 | 1 | 5. You will see Single Sign On settings page |
|
32 | 1 | ||
33 | 2 | Ashish Kataria | !http://forge.kayako.com/attachments/download/315/Screen_Shot_2012-10-17_at_5.05.30_PM.png! |
34 | 1 | ||
35 | 1 | 6. First you have to enable the Single Sign On by selecting yes for first option i.e. "Enable Single Sign" |
|
36 | 1 | ||
37 | 2 | Ashish Kataria | 7. Next you can enable sign on through twitter or facebook by enabling option “Enable Twitter Authentication” or “Enable Facebook Authentication” correspondingly but if you want to use Twitter or Facebook login then first you have to configure your Apache |
38 | 1 | ||
39 | 2 | Ashish Kataria | 8. Find the Apache configuration file for the virtual hosts where you run your helpdesk. The configuration may look like this: |
40 | 2 | Ashish Kataria | <pre> |
41 | 2 | Ashish Kataria | <VirtualHost *> |
42 | 2 | Ashish Kataria | ServerName service.example.com |
43 | 2 | Ashish Kataria | DocumentRoot /var/www/service.example.com(i.e. path to your helpdesk trunk folder) |
44 | 1 | ||
45 | 2 | Ashish Kataria | Alias /samlidp path to your helpdesk trunk folder/__apps/samlsso/thirdparty/samlidp/www |
46 | 2 | Ashish Kataria | </VirtualHost> |
47 | 2 | Ashish Kataria | </pre> |
48 | 1 | ||
49 | 2 | Ashish Kataria | 9. For Twitter integration you need to get an API Consumer key and a Consumer secret (update it in Admin settings), by register the application at: http://twitter.com/oauth_clients |
50 | 1 | ||
51 | 2 | Ashish Kataria | 10. Set the callback URL to be: http://ky.example.org/samlidp/module.php/authtwitter/linkback.php . Replace ky.example.org with your hostname. |
52 | 1 | ||
53 | 2 | Ashish Kataria | 11. For Facebook integration you need to get App ID (or API Key) and App Secret (update it in Admin settings), by register the application at: http://www.facebook.com/developers/ |
54 | 2 | Ashish Kataria | Please Note :- Facebook needs the CURL and JSON PHP extensions. |
55 | 1 | ||
56 | 2 | Ashish Kataria | 12. If you want to login from your own Identity Provider then provides your IdP details in next few settings options (for setting up your IdP and adding our Service Provider to your IdP refer to http://simplesamlphp.org/docs/stable/simplesamlphp-idp ) |
57 | 1 | ||
58 | 2 | Ashish Kataria | 13. Entity ID – Specify the index of your IdP metadata array, use these while setting IdP for your help desk |
59 | 1 | ||
60 | 2 | Ashish Kataria | 14. SingleSignOnService URL – Specify the URL that Kayako will invoke to redirect users to your Identity Provider |
61 | 1 | ||
62 | 2 | Ashish Kataria | 15. Your IdP should return Email address and Name |
63 | 1 | ||
64 | 2 | Ashish Kataria | 16. Our Assertion Consumer Service (ACS) URL is http://yourservername.kayako.com/index.php?/Samlsso/Sso/Idp/Login |
65 | 1 | ||
66 | 2 | Ashish Kataria | 17. Next provide the path for your certificate which you can obtain this from your SAML identity provider |
67 | 1 | ||
68 | 2 | Ashish Kataria | 18. Once you are done with all the settings then change the template. |
69 | 2 | Ashish Kataria | |
70 | 2 | Ashish Kataria | 19. Now click on Templates -> Templates option from left side menu and click on General |
71 | 2 | Ashish Kataria | |
72 | 2 | Ashish Kataria | 20. List of templates will be shown up, click on header template |
73 | 2 | Ashish Kataria | |
74 | 2 | Ashish Kataria | 21. Add the below code: - |
75 | 2 | Ashish Kataria | |
76 | 2 | Ashish Kataria | *After* |
77 | 2 | Ashish Kataria | <pre> |
78 | 2 | Ashish Kataria | <div id="loginsubscribebuttons"><input class="rebutton" value="<{$_language[login]}>" type="submit" /></div> |
79 | 2 | Ashish Kataria | </pre> |
80 | 2 | Ashish Kataria | *Add code* |
81 | 2 | Ashish Kataria | <pre> |
82 | 2 | Ashish Kataria | <{if isset($_twitterEnable) || isset($_facebookEnable) || isset($_ssoIdpEnable)}> |
83 | 2 | Ashish Kataria | <hr class="vdivider"> |
84 | 2 | Ashish Kataria | <{/if}> |
85 | 2 | Ashish Kataria | <{if isset($_twitterEnable)}> |
86 | 2 | Ashish Kataria | <div id="twitterlogin" class="widgetrow" style="padding-left:5px; " > |
87 | 1 | <span onclick="javascript: window.location.href='http://ver2.kayako.com/index.php?/Samlsso/Sso/Twitter/Login';"> |
|
88 | 1 | <a class="widgetrowitem defaultwidget" style="background-repeat: no-repeat; background-position: 5px 5px; width: 139px; font-size: 13px; padding: 14px 10px 15px 50px;background-image: URL('http://ver2.kayako.com/__swift/themes/client/images/twitter_icon.jpg');" href="<{$_baseName}><{$_templateGroupPrefix}>/Samlsso/Sso/Twitter/Login"> |
|
89 | 1 | <span class="widgetitemtitle">Login Using Twitter</span> |
|
90 | 1 | </a> |
|
91 | 1 | </span> |
|
92 | 2 | Ashish Kataria | </div> |
93 | 2 | Ashish Kataria | <{/if}> |
94 | 2 | Ashish Kataria | <{if isset($_facebookEnable)}> |
95 | 2 | Ashish Kataria | <div id="facebooklogin" class="widgetrow" style="padding-left:5px;" > |
96 | 1 | <span onclick="javascript: window.location.href='http://ver2.kayako.com/index.php?/Samlsso/Sso/Facebook/Login';"> |
|
97 | 1 | <a class="widgetrowitem defaultwidget" style="background-repeat: no-repeat; background-position: 5px 5px; width: 139px; font-size: 13px; padding: 14px 10px 15px 50px;background-image: URL('http://ver2.kayako.com/__swift/themes/client/images/facebook_icon.jpg');" href="<{$_baseName}><{$_templateGroupPrefix}>/Samlsso/Sso/Facebook/Login"> |
|
98 | 1 | <span class="widgetitemtitle">Login Using Facebook</span> |
|
99 | 1 | </a> |
|
100 | 1 | </span> |
|
101 | 2 | Ashish Kataria | </div> |
102 | 2 | Ashish Kataria | <{/if}> |
103 | 2 | Ashish Kataria | <{if isset($_ssoIdpEnable)}> |
104 | 2 | Ashish Kataria | <div id="ssoidplogin" class="widgetrow" style="padding-left:5px;" > |
105 | 1 | <span onclick="javascript: window.location.href='http://ver2.kayako.com/index.php?/Samlsso/Sso/Idp/Login';"> |
|
106 | 1 | <a class="widgetrowitem defaultwidget" style="background-repeat: no-repeat; background-position: 5px 5px; width: 139px; font-size: 13px; padding: 14px 10px 15px 50px;background-image: URL('http://ver2.kayako.com/__swift/themes/client/images/saml_icon.jpg');" href="<{$_baseName}><{$_templateGroupPrefix}>/Samlsso/Sso/Idp"> |
|
107 | 1 | <span class="widgetitemtitle">Login Using Your IdP</span> |
|
108 | 1 | </a> |
|
109 | 1 | </span> |
|
110 | 2 | Ashish Kataria | </div> |
111 | 2 | Ashish Kataria | <{/if}> |
112 | 2 | Ashish Kataria | </pre> |
113 | 2 | Ashish Kataria | 22. After changing the template file you can see the login buttons in Support Center corresponding to remote authentications you have enabled |
114 | 1 | ||
115 | 1 | !http://forge.kayako.com/attachments/download/313/Screen_Shot_2012-10-12_at_2.41.57_PM.png! |
|
116 | 1 | ||
117 | 2 | Ashish Kataria | 23. Now you can login with any account |