Mishka CMS Auth Slack

Copy Markdown View Source

Sign in with Slack for Mishka CMS. Each site switches it on and sets its own keys; no other setup is needed.

Install

# mix.exs
{:mishka_cms_auth_slack, "~> 0.0.1"}

Run mix deps.get and restart. The package registers itself with Mishka CMS through mishka_installer; there is no config to add and no migration.

Set up

  1. Make the app at api.slack.com/apps → Create New App (under OAuth & Permissions add the user scopes openid, email, profile).
  2. Redirect URL (OAuth & Permissions; Slack takes https:// only): https://<your-site>/api/auth/user/provider/callback
  3. In Mishka CMS: Settings → Security → Sign-in methods → switch Slack on. Paste the Client ID and Client Secret (Basic Information → App Credentials) into the fields that open under it, then Save.

The Slack button now shows on the sign-in and registration pages.

What it does

  • "Sign in with Slack" (OpenID Connect). Slack says whether the email is verified; only a verified one signs in.
  • Links to an existing confirmed account with the same email, and claims one nobody confirmed.
  • Makes a new account only while the site allows it, and never makes a master.
  • Asks for the authenticator code when the account has two-step sign-in.
  • Keeps none of Slack's tokens.

License

Apache-2.0