Link a Gitlab account to a Kanboard user profile.
- Frédéric Guillot
- License MIT
- Kanboard >= 1.0.29
- Account on Gitlab.com or you own self-hosted Gitlab instance
- Have Kanboard registered as application in Gitlab (Settings > Applications)
- Kanboard application URL is defined properly
You have the choice between 3 methods:
- Install the plugin from the Kanboard plugin manager in one click
- Download the zip file and decompress everything under the directory
plugins/GitlabAuth
- Clone this repository into the folder
plugins/GitlabAuth
Note: Plugin folder is case-sensitive.
The Gitlab authentication in Kanboard uses the OAuth 2.0 protocol, so any user of Kanboard can be linked to a Gitlab account.
That means you can use your Gitlab account to login on Kanboard.
- Go to your user profile
- Click on External accounts
- Click on the link Link my Gitlab Account
- You are redirected to the Gitlab authorization form
- Authorize Kanboard by clicking on the button Accept
- Your account is now linked
Now, on the login page you can be authenticated in one click with the link Login with my Gitlab Account.
Your name and email are automatically updated from your Gitlab Account if defined.
- On Gitlab, register a new application by following the official documentation
- In Kanboard, you can get the callback url in Settings > Integrations > Gitlab Authentication, just copy and paste the url
- The easiest way is to copy and paste the Gitlab OAuth2 credentials in the form Settings > Integrations > Gitlab Authentication.
- Or add the credentials in your custom config file
If you use the second method, use these parameters in your config.php
:
// Gitlab application id
define('GITLAB_CLIENT_ID', 'YOUR_APPLICATION_ID');
// Gitlab application secret
define('GITLAB_CLIENT_SECRET', 'YOUR_APPLICATION_SECRET');
Change these default values if you use a self-hosted instance of Gitlab:
- Define your custom Kanboard URL in Settings > Application settings > Application URL
- Define the Gitlab custom URL in Settings > Integrations > Gitlab Authentication:
- Gitlab Authorize URL:
http://YOUR_GITLAB_HOSTNAME:CUSTOM_PORT/oauth/authorize
(example:http://192.168.99.100:8080/oauth/authorize
) - Gitlab Token URL:
http://YOUR_GITLAB_HOSTNAME:CUSTOM_PORT/oauth/token
- Gitlab API URL:
http://YOUR_GITLAB_HOSTNAME:CUSTOM_PORT/api/v3/
(don't forget the trailing slash)
- Gitlab Authorize URL:
Kanboard uses these information from your Gitlab profile:
- Full name
- Email address
- Gitlab unique id
The Gitlab unique id is used to link the local user account and the Gitlab account.
Gitlab OAuth will work only with url rewrite enabled. At the moment, Gitlab doesn't support callback url with query string parameters. See Gitlab issue