* Add writefreely Signed-off-by: Tealk <tealk@rollenspiel.monster> * fix lint Signed-off-by: Jens Langhammer <jens@goauthentik.io> --------- Signed-off-by: Tealk <tealk@rollenspiel.monster> Signed-off-by: Jens Langhammer <jens@goauthentik.io> Co-authored-by: Jens Langhammer <jens@goauthentik.io>
2.3 KiB
title |
---|
Writefreely |
Support level: Community
What is Writefreely
From https://writefreely.org/ :::note An open source platform for building a writing space on the web. :::
:::caution Currently it is not possible to connect writefreely to authentik without making an adjustment in the database. See here and Writefreely Setup :::
Preparation
The following placeholders will be used:
writefreely.company
is the FQDN of the writefreely install.authentik.company
is the FQDN of the authentik install.
authentik Configuration
Step 1 - OAuth2/OpenID Provider
Create a OAuth2/OpenID Provider (under Applications/Providers) with these settings:
- Name : writefreely
- Redirect URI:
https://writefreely.company/oauth/callback/generic
Step 3 - Application
Create an application (under Resources/Applications) with these settings:
- Name: Writefreely
- Slug: writefreely
- Provider: writefreely
Writefreely Setup
Database
Currently the column access_token
is configured too small, so it needs to be adjusted
ALTER TABLE `oauth_users` MODIFY `access_token` varchar(2048);
Configuration
Configure Writefreely settings by editing the config.ini
and add the following:
So that new users can be created the following variable must be set to true
open_registration = false
To disable the local login/registration use the following setting (this is useful because writefreely attracts a lot of spam)
disable_password_auth = false
The following settings must be made for oauth
[oauth.generic]
client_id = <Client ID>
client_secret = <Client Secret>
host = https://authentik.company
display_name = authentik
callback_proxy =
callback_proxy_api =
token_endpoint = /application/o/token/
inspect_endpoint = /application/o/userinfo/
auth_endpoint = /application/o/authorize/
scope = openid profile email
allow_disconnect = false
map_user_id = sub
map_username = nickname
map_display_name = name
map_email = email
Restart writefreely.service