AddOn Manual - Google Login for ((OTRS)) Community Edition
Manuais > AddOns > Google Login
What this AddOn Does?
This AddOn allows authentication on ((OTRS)) Community Edition in the agent and customer interfaces using a Google account.
After the installation, the agent and customer can view the login option using their Google account:
Click on "Sign in with Google".
If the user are already connected in any Google service, he will see a screen that is possible to select which account will be used for connection:
If the user are not connected to a Google service, the system will ask for the login and password to make the connection:
To connect as an agent, is needed to have a prior record in the database of your ((OTRS)) Community Edition.
To connect to the customer interface, you can configure ((OTRS)) Community Edition to automatically register a valid Google user, including filtering valid domains of one or more G suites (Google Professional accounts).
Installing Perl Dependencies
Install the development package Openssl. In CentOS it's possible with this command:
sudo yum install openssl-devel
In Debian, Ubuntu or Mint:
sudo apt-get install libssl-dev
Next, install another Perl dependencies:
perl -MCPAN -e shell install MIME::Base64::URLSafe install Crypt::OpenSSL::X509 install Crypt::OpenSSL::RSA install GoogleIDToken::Validator
Installing the AddOn
IMPORTANT: We recommend this addon only if your((OTRS)) Community Edition is securely accessible (HTTPS).
This AddOn can be installed for free through the Complemento Repository for((OTRS)) Community Edition. See more details here.
Obtaining a Client ID in the Google API for your application
Follow the step to obtain the Client ID in the document below:
Creating a Google API Console project and client ID
Enter the API Key in the module settings. Access Admin --> System Configuration (Sysconfig)--> Complemento-GoogleLogin--> Core.
Change the GoogleLogin::Webclientid parameter by entering the Web Client ID obtained.
Enabling the login of agents with Google accounts
Enter a new authentication backend in your Config.pm file. In this example, will be inserted a second backend:
$Self->{"AuthModule2"} = 'Kernel::System::Auth::Google';
Enabling Client Login
Insert a new authentication backend for customers in your file Config.pm:
$Self->{"Customer::AuthModule2"} = 'Kernel::System::CustomerAuth::Google';
This client backend has additional parameters.
To enable automatic creation of customer in your ((OTRS)) Community Edition if the login is accomplished successfully:
$Self->{"Customer::AuthModule::AutoCreateUser2"} = 1 ;
To restrict login and create logins only if authenticated users belong to one or more G suite domains:
$Self->{"Customer::AuthModule::AllowedDomains2"} = { 'complemento.net.br' => 1, 'mydomain.com' => 1 };
What the system should use as CustomerID in the auto-creation of customers. By default, the system will use the customers's e-mail. It's possible to use the customer domain if desired:
$Self->{"Customer::AuthModule::AutoCreateUserCustomerID2"} = 'domain';
Disabling the login button on the Agent or Client interface
If for any reason it is necessary to remove the login button from one of the ((OTRS)) Community Edition interfaces, access Admin --> System Configuration (Sysconfig) --> Complemento-GoogleLogin--> OutputFilter.
If you want to disable the login button on the agent screen, remove the "login" option or if you wish to remove the button from the customer interface, remove the "CustomerLogin" option from the following parameter: