Customizing authorization - kavyasukumar/shenanigans GitHub Wiki

Authenticated users are authorized in Autotune via groups and roles.

Creating groups

Autotune comes with a Generic group if nothing is specified. New groups are added as they are encountered during authentication.

Initial groups

An initial list of groups and themes can be specified at config\theme_map.yml.

This should be done before data migration

---
- name: Generic
  theme: generic
- name: My News org
  theme: newsorg

Creating new groups and authorizing

To customize authorization modify verify_omniauth function in /config/initializers/autotune.rb.

See code here for documentation on how to assign roles.

  • To assign global roles (applicable across all groups) return an array with a role symbol. For instance, to make the user a super user, return [:superuser].
  • To assign a role to particular groups, return a hash in the following format - :{role_name} => [{comma separated list of group names}].
    Eg: :author => ['My news org'] or :editor => ['My news org', 'Generic'].

If the group doesn't exist, Autotune creates the group and add a default theme to it.

⚠️ **GitHub.com Fallback** ⚠️