Advanced Access
Component ID
Component name
Component type
Maintenance status
Development status
Component security advisory coverage
Downloads
Component created
Component changed
Component body
Advanced Access is an access control suite designed to provide an extensible access control system that leverages plugins to determine access pathways. The module extends the concepts of the node_access implementation in code to support additional entity types and to make the interface between access modules simple.
Design
Advanced access leverages two major concepts. Access Providers and Access Consumers. Working together these two plugins can be used to provide access control to many entity types throughout Drupal. To create an access grant system for an entity type, it simply an access consumer plugin needs to be provided for that type. Grants are then provided based on then available and supported provider plugins. Consumers can be provided as part of the module providing the entity type, or by another module, using an Overriding consumer plugin.
Flexibility
This module is designed with flexibility in mind. This means that the module is not designed around a particular entity type, or required minimum configuration. Unlike the Core Nodes access implementation, having a module enabled does not mean its being used for any particular entity type, this is all configurable via the admin UI.
Using Advanced Access
This module was developed for sites that might leverage complex access control, and is designed to cut down the logic required to implement efficient access control on multiple entity types, while also still leveraging the same mechanisms that are available for Content in Drupal Core.
Node Access
Advanced Access comes with a module that implements a bridge between Core's Node access system and the Advanced Access plugin environment. Just enable adva_na in the module list, and configure it to use the desired providers.
Backward compatibility for content Access
The adva_na module does not out of the box support existing node_access modules that implement the node_access hooks, since this is not required. These modules, may in the future be leveraged to use Advanced Access or plugin bridges may be written in the future to support them.
At this point in time, there is a plan to implement support for the following modules:
Other entity types
At this time the following modules provide integration with or leverage Advanced Access.
- Paragraphs Access version 8.x-2.x
Access Providers
Access providers can be leveraged to provide access to to any entity or only specific types. The following access providers are available:
- Role Access Control 8.x-2.x - Entity Access control for field able entities with a Entity Reference Role field.
Support
For questions or support with the module, please open an issue in the issue queue, or contact me directly via drupal.org.