OpenConext / OpenConext/OpenConext-engineblock

Allow ARP wildcard matching at the start of the attribute values

Open Beginner friendly
#2,040 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
17
Forks
25
Avg merge
4d 1h
Merged PRs (30d)
1

Description

Currenty, we only support matching of attribute values with wildcards at the end of the string: https://github.com/OpenConext/OpenConext-engineblock/blob/b64cea9e6350b1884ea9618f4a765c258225633c/src/OpenConext/EngineBlock/Metadata/AttributeReleasePolicy.php#L204-L216

This works well for urns etc (such as in eduPersonEntitlement) but not in email-syntax values like mail and eduPersonPrincipalName. However, sometimes it is useful to only release ePPN or mail for a specific institution. See for example https://servicedesk.surf.nl/jira/browse/SD-129817

So I would like to add support for suffix-matching, for example to be able to release ePPN and mail only for *@uni-harderwijk.nl. Looking at the code (linked above) this seems rather straightforward.

Note that I explicitly do not whish to introduce support for wildcards in the middle of the string

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in src/OpenConext/EngineBlock/Metadata/AttributeReleasePolicy.php around lines 204-216, where attribute-value wildcard matching is implemented. Trace the existing end-of-string matching behavior and identify the relevant test coverage, then verify that suffix matching such as *@uni-harderwijk.nl works while wildcards in the middle remain unsupported.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
backend, security
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
76/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.