Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Add roles or groups to anonymous or logged-in visitors based on HTTP headers

Introduction

The AutoRoleFromHostHeader PAS plugin allows to assign roles to users looking at HTTP headers.

There is an extraction and authentication plugin included, to enable additional roles for anonymous users. They are required since PAS does not support roles (or properties or groups) for anonymous users. You can disable these interfaces if only logged-in users should get additional roles.

AutoRoleFromHostHeader furthermore provides a groups plugin interface, allowing you to assign groups instead of roles.

Configuration

The plugin is configured by editing the Header name; regexp; roles/groups property on the plugin’s properties screen (through ZMI). Each line represents a mapping from an header value (using a regexp match) to one or more roles. The format is as follows:

http_header_name; regular expression; role[, role ...] ; TALES

The (optional) TALES allows arbitrary expressions to be added to role mappings, for example to check other HTTP headers:

...;python:request.getHeader('MY-SPECIAL-HEADER')=='somevalue'

Assign groups, not roles

This plugin can be used to assign groups instead of roles if used as a group plugin instead of a role plugin:

http_header_name; regular expression; group[, group ...] ; TALES

Groups plugin is not activated by default.

Caveat

If you have AutoRoleFromHostHeader configured for anonymous users and come from a network matching one of its rules, you will not be able to log in with an account from a higher-up user folder. This is because AutoRole authenticates the Anonymous User which stops the lookup process.

Dependencies

Tested with all Plone versions from 4.0 to 4.3.

Credits

Developed with the support of:

All of them supports the PloneGov initiative.

Authors

  • This product was developed by RedTurtle Technology team.

    RedTurtle Technology Site
  • AutoRoleFromHostHeader is not an original idea but is taken from the work made by Jarn company for the AutoRole plugin.

  • Special thanks to Mauro Amico (mamico) for giving us the main direction.

  • Matthew Wilkes (MatthewWilkes) contributed adding the conditional expression.

Changelog

2.0.0a1 (2026-08-17)

  • Make the import compatible with Plone 6 [ale-rt]

1.0.1 (2021-01-28)

  • Zope 4 compatibility: Replaced broken imports of InitializeClass. [reinhardt]

  • Python 3 compatibility [reinhardt]

1.0.0 (2015-06-05)

Dropped Plone 3 compatibility

  • Add TALES field to assignments, allowing users to provide arbitrary conditions [matthewwilkes]

0.4.1 (2014-07-10)

  • Restored MANIFEST file that was destroyed [keul]

  • Run import step profile only when needed [keul]

0.4.0 (Unreleased)

  • Do not fail if the configured header was not found [keul]

  • Dropped support for ancient Plone versions (Python 2.3) [keul]

  • Pyflakes cleanup [keul]

  • Now works also on Plone 4.3 [keul]

0.3.0 (2011-10-17)

  • Fixed compatibliy with webserverauth [yurj]

  • Updates tests on Plone 4.1 [keul]

0.2.0 (2010-10-04)

  • Fixed project URL on plone.org [keul]

  • Added plugin icon [keul]

  • Fixed broken tests [keul]

  • Added z3c.autoinclude support [keul]

0.1.0a (2010-03-24)

  • Initial release

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

products_autorolefromhostheader-2.0.0a1.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file products_autorolefromhostheader-2.0.0a1.tar.gz.

File metadata

File hashes

Hashes for products_autorolefromhostheader-2.0.0a1.tar.gz
Algorithm Hash digest
SHA256 a28aa74484716a4bec4aa9a5542a36bb1fa2c8c4193fb019292d7cb30ce42326
MD5 4d06372ee1eba7eab1a1c51a0a39c80e
BLAKE2b-256 9cbaf0f021dfdbab3cc9dafe1a17540dbc0df5affa403271cc2c157d623a0246

See more details on using hashes here.

File details

Details for the file products_autorolefromhostheader-2.0.0a1-py3-none-any.whl.

File metadata

File hashes

Hashes for products_autorolefromhostheader-2.0.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 ce062bbb387ea8ec3548298d28e5afb064652b5700ba4b9f23b666370c249edd
MD5 13876efccd671042d5795ebf80322b25
BLAKE2b-256 10c0e73601a65aba712bfc53eab1f41595137d0c201cbd73ec91b81fd6db793a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

2.0.0a1 This release

2 files

1.0.1

1 file

1.0.0

1 file

0.4.1

1 file

0.3.0

1 file

0.2.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page