Simple Sponge Authentication plugin
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Dale c5c898a3ba
misc: Clearer setting description
1 month ago
project feat: Added GenSoc auth mechanism 1 month ago
src/main feat: Better usern link for pleroma logins 1 month ago
.gitignore feat: Workable plugin 1 month ago
README.md misc: Clearer setting description 1 month ago
build.sbt feat: Better usern link for pleroma logins 1 month ago

README.md

GensokyoAuth

Simple Sponge Authentication plugin using internal SQLite source and external provider (Mastodon / Pleroma Auth)

Plugin Usage

Local users are saved in gensokyo-auth.db SQLite database

Remote users are fetched using external auth mechanism

Configure plugin by setting appropriate settings and setting up an authentication provider.

Commands and Permissions

Command Permission Description
User Commands
/register gensokyoauth.register.local Register with simple password.
/login gensokyoauth.login.local Login using simple password.
/login:remote gensokyoauth.login.remote Login using GenSoc token.
/logout gensokyoauth.logout Logout from the server.
/unregister gensokyoauth.unregister.local Unregister and Logout from the server.
/unregister:remote gensokyoauth.unregister.remote Unregister and Logout from the server as remote user.
Admin Commands
/auth:list-users gensokyoauth.admin.list List all registered users.
/auth:register gensokyoauth.admin.register.local Register a local user.
/auth:register-remote gensokyoauth.admin.register.remote Register a remote user.
/auth:unregister gensokyoauth.admin.unregister Unregister a local user.

Configuration

config/gensokyo-auth.conf

    authHomeInstance="mastodon.social"
    authProviderUrl="http://localhost:8082"
    db {
        filename="gensoc-auth.db"
    }
Key Default Value Desctiption
authHomeInstance "gensokyo.social" Instance URL for the hosting instance. If set, drops the instance part from the chat name for all users of that instance.
authProviderUrl "https://mcauth.gensokyo.social" Remote authentication provider.
db.filename "gensoc-auth.db" Filename for the SQLi database that will hold users.

Build

Build with sbt assembly.

Dist

target/scala-2.12/GensokyoAuth-{version}.jar is the artifact file. For use, copy to your plugins folder.

Roadmap

  • Add complete Mastodon \ Pleroma support to login core.
  • Ensure unique password generation on the auth provider server.