501 Modules match your search

Extend and customize Drupal functionality with contributed modules. If a module doesn't quite do what you want it to do, if you find a bug or have a suggestion, then join forces and help the module maintainer. Or, share your own by starting a new module.

Token Content Access

Token Content Access allows you to restrict access to individual nodes using URL tokens. In order to view protected nodes, users must provide a unique token via the URL. This allows nodes to be published and viewable to anonymous users (for instance with a special link from an email campaign) but not visible to the public at large. It also automatically hides any TCA-protected content from Views results.


Entity reference access

entityreference_access settings


This module adds new field formatters for entityreference which check access before displaying rendered entities. Views has access filters such as 'published', but entityreference rendered entity formatter only checks entity_access() for the current user.

Current formatters

  • Role


Workflow Content Permissions

This module allows the site administrators to control the permissions to edit or view fields of a node that participates in a Workflow for each state.

It's based on the Content Permissions that comes with CCK.

Depends on CCK and Workflow


Taxonomy Autocomplete Permission

Defines which roles can add new taxonomy terms when using the autocomplete widget.


TAC Unpublished

The TAC Unpublished module is an extension module for Taxonomy Access Control (TAC). It allows TAC's grants to control unpublished nodes.

This module allows administrators to grant certain roles the Use Taxonomy Access Control for unpublished nodes permission. Users with this permission can access unpublished nodes according to TAC's taxonomy-based grants. Users without the permission are denied access for unpublished nodes.


OSF for Drupal

OSF for Drupal

The Open Semantic Framework (OSF) for Drupal is a middleware layer that allows structured data (RDF) and associated vocabularies (ontologies) to "drive" tailored tools and data displays within Drupal. The basic OSF for Drupal modules provide two types of capabilities. First, there are a series of connector modules such as OSF Entities, OSF SearchAPI, OSF Field Storage and OSF Views to integrate an OSF instance into Drupal's core APIs. Second, there is a series of module tools used to administer all of these capabilities.

By using OSF for Drupal, you may create, read, update and delete any kind of content in a OSF instance. You may also search, browse, import and export structured datasets from an OSF instance.

OSF for Drupal connects to the underlying structured (RDF) data via the separately available OSF Web services. OSF Web Services is a mostly RESTful Web services layer that also allows multiple Drupal installations to share and collaborate structured data with one another via user access rights and privileges to registered datasets. Collaboration networks may be established directly to distributed OSF Web Services servers, also allowing non-Drupal installations to participate in the network.


Node Access Auto Reference

Node Access Auto Reference - How it works?

Gives automatic access to users if they are referenced somehow to this node.
It's scanning automatically for references with unlimited deep path, so you don't need to worry anymore how to configure your permissions correct, because it's checking for references automatically.

Example 1:
User 1 want to edit or delete Node 1, but the owner of this node is User 2.
But Node 1 have node reference (via nodereference) to profile of User 2 and User 2 have another reference (via userreference) to User 1. So that means that User 1 is referenced to that node, so give him access to edit it (you can customized other operations).
See following chart for example:
Using with view_own module, you can disable view permission for users and enable them only through references.


- Just enable the module;)


- http://drupal.org/project/cck module with nodereference and userreference module enabled
- knowledge how references are working and at least one content type with nodereference or userreference field





Other similar modules with access functionality through references:


Login to view fields

login_to_view_fields module

A simple module that adds a message "Login or register to view ABC" to each node where ABC is a field that is not visible to unauthenticated users.

Download, extract to sites/all/modules, enable on admin/build/modules page.


Moderation Dropbutton

Backport of Drupal 8 submit button displayed as dropbutton for changing publications states of node.


Access to Term page by Role


This module allows you to restrict access to term page based on user roles. It depends on the Drupal core taxonomy.module—just activate both modules and edit a term item as usual. There will be a new fieldset that allows you to restrict access by role or close term page for all roles.

If you're interested in helping with this or have problems with this module, please contact me or open an issue in the Term per role module issue tracker.


Installation is like with all normal drupal modules: extract the 'term_per_role' folder from the tar ball to the modules directory from your website (typically sites/all/modules).


Just open to edit edit or create term and add seetings to new fieldset that allows you to restrict access by role or close term page for all roles.
In admin area(path is admin/config/content/term-per-role) you can change behavior if access is denied to page(show page 404 or 403).


This project has been sponsored by:
Volcanoideas Drupal consulting and development.

Where is this module used?


Node access product

Node Access Product for e-Commerce and Ubercart
This module is unsupported due to a security issue the maintainer didn’t fix. See SA-CONTRIB-2015-045 - Node Access Product - Cross Site Scripting (XSS) - Unsupported for details.

If you want to use this module, your options are:

Provides 'Node access' settings for product nodes, whereby users who purchase the product are granted view access to content, which can be predefined either by taxonomy, by node, or by Views.


Deep link

Sometimes you want to be able to give simple URL access to content that would not normally be available to a particular user (or perhaps someone not even registered with the site).

Deep link module allows the direct access to a specific item of content under certain circumstances and limitations. Such as one-off or time-limited deeplinks.

The deeplink module provides a framework for generating special URLs which can be inserted into emails that allow access to a content item or page, and tracks the uses of that link.

The controls that go with deeplink provide the means by which users are selected, one allows selection by user - so only users will receive the deeplink and only those users will be able to use it; and by email: this allows you to enter a set of email addresses that will be sent the deeplink URL. Obviously this one is more limited in that unregistered users can look at the content.

Other controls, for example to select by role, could be built.


1. Install module and the Controls module.
2. Enable.


  • generating one-time or time limited login access for specified entity,



Similar modules

http://drupal.org/project/one_time_login (?)


Node Access Keys


Node Access Keys helps to grant users temporary view permissions to selected content types on a per user role basis. You can have multiple Access Keys for different content types and user roles.


Review Token

Review Token provides a tokenised URL for bypassing access restrictions on unpublished content.

It can be used to provide per-node access for unpublished content to users without logins, though a specially crafted URL.

Currently incompatible with modules which provide workflowed versioning, as the module will load the current published content, rather than a specific draft.


This module was originally created by Boztek.


Queued Node Access Rebuild

This module uses Queue to rebuild node access in a non-disruptive
manner. This module depends on drupal_queue.

Node Access Rebuild Process

En-queueing process:

  1. On cron, module checks if node access needs rebuild.
  2. All nodes are queued for rebuild.
  3. Node access needs rebuild variable is reset.

Queue processing:

  1. A node (X) is claimed from the queue.
  2. Node X's node access records are deleted.
  3. Node X's node access records are rebuilt.
  4. Node X's queue entry is deleted.



Ubercart compatible module.

This module extends Ubercart product features.

Grant customers access to items like Nodes and CCK fields, Taxonomy, Roles etc. on your site when they purchase specified Ubercart products. Access can be configured to start immediately, after a fixed period from purchase, or on a preset date, and it can be given either for indefinite time, until a preset date or for a limited period based on the feature's settings.

Currently it has nodes and CCK fields handler that uses ACL and Content Access modules.

With future addition of more handler modules, it can grant access to other items (i.e. Taxonomy, Roles).


Ubercart Order Access

Order Access settings page

This module allow administrators of an ubercart store to allow access to view / edit / delete / change status of orders only to certain roles and based on current order status.


  • View orders by status and role.
  • (This feature replace 'view all orders' from Ubercart with view orders by status. For example you can now select for "role1" to view only New orders but not Completed ones. Also the user can search only orders that he has view access. Be careful that when you have 'view all orders' selected for that role this function is disabled and the user can see all the orders no matter of order's state.)

  • Edit order by role and status.
  • Delete order by role and status.
  • Change orders status by role and current order status.

This is useful when you are running a store, powered by Ubercart and you have certain users that handle the orders. For example if a group "shipping" only has to put orders in "Processing" or "Shipped" but NOT in "Complete" or "Payment Received" this module allow you to achieve this goal.



If you want to share and work with your documents online Google Docs, Zoho, iNetWord, Office 365 or Sharepoint are most likely to be - depending on how deep you can dig into your pocket - the solutions of choice. Especially, a large legacy of documents in proprietary formats, such as MS Word or Excel, may discourage from moving to an online editor. Additionnally, legal issues might arise if confidential files are hosted by a third party service provider.

WireDocs is a lightweight remote file editing tool. It takes the best of both worlds: Drupal as a CMS being responsible for hosting files and applications on a operating system (OS) doing the editing part. The approach automatizes a manual process: a file is downloaded, edited by a local editor and uploaded to its original remote location again. WireDocs makes this procedure completely transparent from a user perspective. The user only watches the application opening the demanded file and uploads are processed in the background after the file has been saved. WireDocs integrates with Drupal's content structure, namely the Field API, and currently supports file and image fields.

Client requirements

As a Java applet bridges the gap between Drupal and the OS the client must fulfill some prerequisites:


    User Auth.log

    User Auth.log

    Allows for logging user actions on sensitive/critical administrative pages. Logging is limited to specific users and/or user roles (configurable). Logging only occurs on specific administrative pages (configurable). Features include:


    Custom Listing Pages

    The Custom Listing Pages module provides the ability to create custom pages with data from existing content types.
    - Display data from an existing content type with various options including:
    - View Mode to display.
    - Filter by one or more taxonomy vocabularies linked to the content type selected.
    - Filter further by the tags for each selected taxonomy vocabularies.
    - Sort by (title, last updated date, created date)
    - Sort order (ascending, descending)
    - Entries to display per page (pagination)

    This module differs from Views as one of its main goals is to allow a content editor to publish listings of content without requiring administrative rights to the Views module. In a larger environment, you may need site builders or delegated site section owners, to create a listing of selected content. Using this module, this can be done and it's as simple as "Create new content" of type Custom Listing .. select the content type "profiles" , filter the output by selecting any assigned taxonomy terms and then select one of the pre-defined view modes. The Site Administrators will have created standard entity view modes for the selected content type, which can be themed with the necessary fields.

    Example Use:


    Role indicators

    Provides markup to indicate user roles and roles that can access restricted content.


    Content Language Access

    Content Language Access Module restricts the access of only contents with language (except neutral language) that are equal of the actual Drupal language being accessed or others that were previous configured in the admin page.

    This module helps when you have a content that needs to have access restriction by Drupal language.



    YouTube Video Accessibility Controls

    This module integrate YouTube Video Player Accessible Controls library which add buttons to control YouTube videos, this module requires ytp.js library click here to download the library.

    This module depends on the following modules :


    CTools Token Access

    Build Status

    Drupal module to restrict access based on token presence. You can even set up a token that expires after a certain time or expires after a selected number of hits.

    Use this module when you want to easily share restricted content with one click.

    This module provides:


    aGov Appearance

    This lightweight module provides an additional permission 'Administer theme settings' to allow finer grained control over which roles can change theme settings.

    Part of the aGov suite of modules.