function hook_ENTITY_TYPE_access

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Entity/entity.api.php \hook_ENTITY_TYPE_access()
  2. 8.9.x core/lib/Drupal/Core/Entity/entity.api.php \hook_ENTITY_TYPE_access()
  3. 10 core/lib/Drupal/Core/Entity/entity.api.php \hook_ENTITY_TYPE_access()

Control entity operation access for a specific entity type.

Note that this hook is not called for listings (e.g., from entity queries and Views). For nodes, see Node access rights for a full explanation. For other entity types, see hook_query_TAG_alter().

Parameters

\Drupal\Core\Entity\EntityInterface $entity: The entity to check access to.

string $operation: The operation that is to be performed on $entity. Usually one of:

  • "view"
  • "update"
  • "delete"

\Drupal\Core\Session\AccountInterface $account: The account trying to access the entity.

Return value

\Drupal\Core\Access\AccessResultInterface The access result. hook_entity_access() has detailed documentation.

See also

\Drupal\Core\Entity\EntityAccessControlHandler

hook_ENTITY_TYPE_create_access()

hook_entity_access()

hook_query_TAG_alter()

Related topics

20 functions implement hook_ENTITY_TYPE_access()

Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.

content_moderation_entity_field_access in core/modules/content_moderation/content_moderation.module
Implements hook_entity_field_access().
entity_test_entity_create_access in core/modules/system/tests/modules/entity_test/entity_test.module
Implements hook_entity_create_access().
entity_test_entity_field_access in core/modules/system/tests/modules/entity_test/entity_test.module
Implements hook_entity_field_access().
entity_test_entity_test_access in core/modules/system/tests/modules/entity_test/entity_test.module
Implements hook_ENTITY_TYPE_access() for 'entity_test'.
entity_test_entity_test_create_access in core/modules/system/tests/modules/entity_test/entity_test.module
Implements hook_ENTITY_TYPE_create_access() for 'entity_test'.

... See full list

File

core/lib/Drupal/Core/Entity/entity.api.php, line 741

Code

function hook_ENTITY_TYPE_access(\Drupal\Core\Entity\EntityInterface $entity, $operation, \Drupal\Core\Session\AccountInterface $account) {
    // No opinion.
    return AccessResult::neutral();
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.