PHPackages                             bitpatroon/bpn\_request\_access - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Security](/categories/security)
4. /
5. bitpatroon/bpn\_request\_access

ActiveTypo3-cms-extension[Security](/categories/security)

bitpatroon/bpn\_request\_access
===============================

Automates requesting access

v10.4.12(4y ago)0447GPL-2.0-or-laterJavaScript

Since May 18Pushed 4y ago1 watchersCompare

[ Source](https://github.com/bitpatroon/bpn_request_access)[ Packagist](https://packagist.org/packages/bitpatroon/bpn_request_access)[ RSS](/packages/bitpatroon-bpn-request-access/feed)WikiDiscussions master Synced 4w ago

READMEChangelogDependencies (3)Versions (5)Used By (0)

bpn\_request\_access
====================

[](#bpn_request_access)

Allows to request for access

Configuration
-------------

[](#configuration)

Set values in plugin configuration for TypoScript template for

- verificationCode.secureKey
- verificationCode.numberOfSecondsBeforeExpiration
- email.validatorName
- email.validatorEmail

Variable texts
--------------

[](#variable-texts)

### Actors

[](#actors)

Notice the following actors are in play:

1. The Granter, the person granting or denying access.
2. The Requester, the person making the request for access for Receiver
3. The Reciever, the person for whom the access is requested.

### Required labels

[](#required-labels)

Add variable texts records with the following labels

- `request_access_requested`
    The text to tell Requester, the access was requested
- `request_access_requested_another`
    The text to tell Requester to request another
- `request_access_email_subject`
    The subject of the e-mail to request access (for Granter)
- `request_access_email_body` \[1\]
    The body of the e-mail to request for access (for Granter)
- `request_access_form`The intro text of the request form for Requester
- `request_access_grant_access` \[2\]
    The text to display when Granter has granted the access.
- `request_access_account_not_valid`
    The text displayed Requester when the selected user is not valid
- `request_access_deny_access`The text displayed when Granter has rejected the access for the Receiver
- `request_access_denied_source_subject`The email subject for Requester when the access was denied for Reciever.
- `request_access_denied_source_body` \[3\]
    The email body for Requester when the access was denied for Reciever.
- `request_access_granted_source_body`\[2\]
    The email body to send to Requester the access was granted.
- `request_access_granted_target_body`\[2\]
    The email body to send to Receiver the access was granted.
- `request_access_granted_body`\[2\]
    The email body for Reciever when the access was requested for Reciever.
- `request_access_granted_subject`
    The email subject for Reciever when the access was requested for Reciever.
- `request_access_invalid_request`
    The request was invalid message

\[1\] Accepts the following parameters in the text:

- `###requesting_user_email###`
- `###target_user_full_name###`
- `###target_user_email###`
- `###target_user_full_name###`
- `###requesting_usergroup###`
- `###user_expiring_groups###`
- `###start_date###`
- `###end_date###`
- `###target_user_title###`
- `###link_allow_access###` Required!!!
- `###link_deny_access###` Required!!!

\[2\] Accepts the following parameters in the text:

- `###requesting_user_email###`
- `###target_user_full_name###`
- `###target_user_email###`
- `###target_user_full_name###`
- `###requesting_usergroup###`
- `###user_expiring_groups###`
- `###start_date###`
- `###end_date###`

\[3\] Accepts the following parameters in the text:

- `###requesting_user_email###`
- `###target_user_full_name###`
- `###target_user_email###`
- `###target_user_full_name###`
- `###requesting_usergroup###`
- `###start_date###`
- `###end_date###`
- `###user_request_denied_reason###`

Placeholders in above text:
---------------------------

[](#placeholders-in-above-text)

- `###requesting_user_email###` the email adres of the requester
- `###target_user_full_name###` the name of the requester
- `###target_user_email###` the email adres of the reciever
- `###target_user_full_name###` the name of the reciever
- `###requesting_usergroup###` the name of the usergroup the request was done for
- `###user_expiring_groups###` receivers current expiring groups
- `###start_date###` start date
- `###end_date###` end date
- `###link_allow_access###` the link to approve
- `###link_deny_access###` the link to reject
- `###user_request_denied_reason###` The reason given for denying the access.
- `###target_user_title###` the function or title of the user

Error codes:
------------

[](#error-codes)

- 785325 Request was already processed
- 790051 Request was not found

Page handles
------------

[](#page-handles)

When storing new request, some handles need to be created in the back end.

- page\_handle\_request\_access This handle should be added to the (folder) page that stores the requests.

Example variable texts
----------------------

[](#example-variable-texts)

See [examples in Dutch](nl.examples.md) or
See [examples in English](en.examples.md)

Thanks to
---------

[](#thanks-to)

Frans van der Veen.
May the force be with you!

Ported to TYPO3 10.4 by Sjoerd Zonneveld

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~4 days

Total

4

Last Release

1802d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/17638058?v=4)[Sjoerd Zonneveld](/maintainers/bitpatroon)[@bitpatroon](https://github.com/bitpatroon)

---

Top Contributors

[![bitpatroon](https://avatars.githubusercontent.com/u/17638058?v=4)](https://github.com/bitpatroon "bitpatroon (16 commits)")

---

Tags

securityservicegroupstypo3

### Embed Badge

![Health badge](/badges/bitpatroon-bpn-request-access/health.svg)

```
[![Health](https://phpackages.com/badges/bitpatroon-bpn-request-access/health.svg)](https://phpackages.com/packages/bitpatroon-bpn-request-access)
```

###  Alternatives

[phpseclib/phpseclib

PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.

5.6k434.8M1.3k](/packages/phpseclib-phpseclib)[defuse/php-encryption

Secure PHP Encryption Library

3.9k162.4M212](/packages/defuse-php-encryption)[mews/purifier

Laravel 5/6/7/8/9/10 HtmlPurifier Package

2.0k16.7M112](/packages/mews-purifier)[robrichards/xmlseclibs

A PHP library for XML Security

41278.1M118](/packages/robrichards-xmlseclibs)[spatie/laravel-csp

Add CSP headers to the responses of a Laravel app

8519.6M19](/packages/spatie-laravel-csp)[spooner-web/be_secure_pw

You can set password conventions to force secure passwords for BE users.

10461.3k](/packages/spooner-web-be-secure-pw)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
