This repository has been archived on 2024-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
authentik/website/docs/integrations/services/wordpress/index.md
Ernie f93e2c5eb6
website/docs: Add Wordpress to Integrations (#1259)
* Create index.mdx

Add Wekan example

* updated to include wekan entry

* Update and rename website/docs/sources.md to website/docs/sources/index.md

Break Sources into individual pages.

* Update and rename website/docs/sources/index.md to website/docs/sources/ldap/index.md

* Create index.md

* Update index.md

* Update index.md

* Create index.md

* Create index.md

* Create index.md

* Update index.md

* Update index.md

* Update index.md

* Create index.md

* discord images

* spacing

* Added discord

* discord changes

* Added sources breakdown to the sidebar

* Fixed the saml title

* Added github examples

* fixed formatting

* Changed file path, updated sidebar, added google.

* fixed a spelling mistake

* Cleaned up formatting

* Fixed Notes

* docs: fix typo in logout url

* docs: added wordpress integration
2021-08-16 10:33:53 +02:00

2.8 KiB

title
Wordpress

What is Wordpress

From https://en.wikipedia.org/wiki/WordPress

:::note WordPress is a free and open-source content management system written in PHP and paired with a MySQL or MariaDB database. Features include a plugin architecture and a template system, referred to within WordPress as Themes :::

:::note There are many different plugins for Wordpress that allow you to setup SSO using different authentication methods. The plugin that is explained in this tutorial is "OpenID Connect Generic" version 3.8.5 by daggerhart. This plugin uses OpenID/OAUTH2 and is free without paywalls or subscriptions at the time of writing this. The plugin is available for free in the Wordpress Plugin gallery. :::

Preparation

The following placeholders will be used:

  • wp.company is the FQDN of Wordpress.
  • authentik.company is the FQDN of authentik.

Step 1 - Authentik

In authentik, under Providers, create an OAuth2/OpenID Provider with these settings:

:::note Only settings that have been modified from default have been listed. :::

Protocol Settings

  • Name: Wordpress
  • Client type: Confidential
  • Client ID: Copy and Save this for Later
  • Client Secret: Copy and Save this for later
  • Redirect URIs/Origins: https://wp.company/wp-admin/admin-ajax.php?action=openid-connect-authorize

Step 2 - Wordpress

:::note Assumption is being made that you have successfully downloaded and activated the required plugin "OpenID Connect Generic" by daggerhart :::

In Wordpress, under Settings, Select OpenID Connect Client

::note Only settings that have been modified from default have been listed. :::

  • Login Type: OpenID Connect Button of Login (This option display a button to login using OpenID as well as local WP login)
  • Client ID: Client ID from step 1
  • Client Secret: Client Secret from step 1
  • OpenID Scope: email profile openid
  • Login Endpoint URL: https://authentik.company/application/o/authorize/
  • Userinfo Endpoint URL: https://authentik.company/application/o/userinfo/
  • Token Validation Endpoint URL: https://authentik.company/application/o/token/
  • End Session Endpoint URL: https://authentik.company/application/o/wordpress/end-session/

:::note Review each setting and choose the ones that you require for your installation. Examples of popular settings are Link Existing Users, Create user if does not exist, and Enforce Privacy :::

Step 3 - Authentik

In authentik, create an application which uses this provider. Optionally apply access restrictions to the application using policy bindings.

Notes

:::note OpenID Connect Generic Client Reference link: https://wordpress.org/plugins/daggerhart-openid-connect-generic/ :::