summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrédéric Guillot <fguillot@users.noreply.github.com>2014-05-04 11:18:30 -0400
committerFrédéric Guillot <fguillot@users.noreply.github.com>2014-05-04 11:18:30 -0400
commita4335c0e52f246ad93965650cedf63af332f8496 (patch)
tree5c56eb9c75b4ee1223cedb72679e97f194069269
parent8ab4c38373932a3f40c4810cf88c278a2f478976 (diff)
Add Google auth documentation
-rw-r--r--README.markdown28
-rw-r--r--docs/google-authentication.markdown65
2 files changed, 85 insertions, 8 deletions
diff --git a/README.markdown b/README.markdown
index 605ff98c..a04d6c94 100644
--- a/README.markdown
+++ b/README.markdown
@@ -12,7 +12,6 @@ Official website: <http://kanboard.net>
- Open source and self-hosted
- Super simple installation
-
[![Build Status](https://travis-ci.org/fguillot/kanboard.svg)](https://travis-ci.org/fguillot/kanboard)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/fguillot/kanboard/badges/quality-score.png?s=2b6490781608657cc8c43d02285bfafb4f489528)](https://scrutinizer-ci.com/g/fguillot/kanboard/)
@@ -25,6 +24,7 @@ Features
- Tasks with different colors, Markdown support for the description
- Automatic actions
- Users management with a basic privileges separation (administrator or regular user)
+- External authentication: Google Account and LDAP/ActiveDirectory
- Webhooks to create tasks from an external software
- Host anywhere (shared hosting, VPS, Raspberry Pi or localhost)
- No external dependencies
@@ -68,25 +68,37 @@ There is also many people who have reported bugs or proposed awesome ideas.
Documentation
-------------
+### Using Kanboard
+
+- [Usage examples](docs/usage-examples.markdown)
+- [Manage users](docs/manage-users.markdown)
+- [Syntax guide](docs/syntax-guide.markdown)
+- [Automatic actions](docs/automatic-actions.markdown)
+
### Technical details
+#### Installation
+
- [Installation instructions](docs/installation.markdown)
- [Installation on Ubuntu](docs/ubuntu-installation.markdown)
- [Installation on Debian](docs/debian-installation.markdown)
- [Installation on Centos](docs/centos-installation.markdown)
- [Upgrade Kanboard to a new version](docs/update.markdown)
+
+#### Database
+
- [Sqlite database management](docs/sqlite-database.markdown)
- [How to use Mysql instead of Sqlite](docs/mysql-configuration.markdown)
+
+#### Authentication
+
- [LDAP authentication](docs/ldap-authentication.markdown)
-- [How to use Kanboard with Vagrant](docs/vagrant.markdown)
-- [Webhooks](docs/webhooks.markdown)
+- [Google authentication](docs/google-authentication.markdown)
-### Using Kanboard
+#### Developers
-- [Usage examples](docs/usage-examples.markdown)
-- [Manage users](docs/manage-users.markdown)
-- [Syntax guide](docs/syntax-guide.markdown)
-- [Automatic actions](docs/automatic-actions.markdown)
+- [How to use Kanboard with Vagrant](docs/vagrant.markdown)
+- [Webhooks](docs/webhooks.markdown)
The documentation is written in [Markdown](http://en.wikipedia.org/wiki/Markdown).
If you want to improve the documentation, just send a pull-request.
diff --git a/docs/google-authentication.markdown b/docs/google-authentication.markdown
new file mode 100644
index 00000000..033cf4bb
--- /dev/null
+++ b/docs/google-authentication.markdown
@@ -0,0 +1,65 @@
+Google Authentication
+=====================
+
+Requirements
+------------
+
+- OAuth Google API credentials (available in the Google Developer Console)
+
+How does this work?
+-------------------
+
+- The Google authentication in Kanboard use the OAuth 2.0 protocol
+- Any user account in Kanboard can be linked to a Google Account
+- When a Kanboard user account is linked to Google, you can login with one click
+
+Procedure to link a Google Account
+----------------------------------
+
+1. The first step is to link an existing user account to a Google Account
+2. Login with the desired user
+3. Go to the **Edit user** page and click on the link **Link my Google Account**
+4. You are redirected to the **Google Consent screen**, authorize Kanboard by clicking on the button **Accept**
+5. Finally, you are redirected to Kanboard and now your user account is linked to your Google account
+6. During the process, Kanboard have updated your full name and your email address based on your Google profile
+7. Log out and you should be able to login directly with Google by clicking on the link **Login with my Google Account**
+
+Installation instructions
+-------------------------
+
+### Setting up OAuth 2.0
+
+Follow the [official Google documentation](https://developers.google.com/accounts/docs/OAuth2Login#appsetup), in summary:
+
+- Go to the [Developer Console](https://console.developers.google.com)
+- On the sidebar, click on **Credentials** and choose **Create a new Client Id**
+- Fill the form, the redirect URL must be: **http://YOUR_SERVER/?controller=user&action=google**
+
+### Setting up Kanboad
+
+Create a custom `config.php` file or copy the `config.default.php` file:
+
+```php
+<?php
+
+// Enable/disable Google authentication
+define('GOOGLE_AUTH', true); // Set this value to true
+
+// Google client id (Get this value from the Google developer console)
+define('GOOGLE_CLIENT_ID', 'YOUR_CLIENT_ID');
+
+// Google client secret key (Get this value from the Google developer console)
+define('GOOGLE_CLIENT_SECRET', 'YOUR_CLIENT_SECRET');
+
+```
+
+Notes
+-----
+
+Kanboard use these information from your Google profile:
+
+- Full name
+- Email address
+- Google unique id
+
+The Google unique id is used to link together the local user account and the Google account.