Content
View differences
Updated by Jan Sandbrink 1 day ago
**As** a provider of an admin API
**I want to** be able to pass additional scopes into JWTs, handle out tokens that are restricted to certain endpoints
**so that** I can restrict the capabilities of tokens handed out via OIDC. it is more secure
**Acceptance criteria**
* OpenProject reads additional scopes It is possible to restrict the scope of a JWT, JWT token, similar to what was implemented for internal Doorkeeper OAuth tokens (see [https://github.com/opf/openproject/pull/25879](https://github.com/opf/openproject/pull/25879) - not yet merged at time of writing)
* Those The same naming scheme for scopes are passed to APIs relying on should be used with the JWT Oid strategy as well
* in other words: Assuming [PR 25879](https://github.com/opf/openproject/pull/25879) is merged, a scope like `op:resource:documents:edit` has the same effect in a JWT that it already has in a doorkeeper-based token
**Technical notes**
* This is probably needed for <mention class="mention" data-id="83366" data-type="work_package" data-text="###COMMS-1122" data-display-id="COMMS-1122">###COMMS-1122</mention>. If it's not implemented when we start working on this, the COMMS team will probably implement it.
**Permissions and visibility considerations**
* _To whom is this feature visible?_
* _When is it not visible?_
**Translation considerations**
* _Key terms and phrases in the key languages_ languages_
**Out of scope**
* <br>
_Set the_ **To be informed/consulted teams** _field to include all teams necessary to be informed of the changes._
**I want to** be able to pass additional scopes into JWTs,
**so that** I can restrict the capabilities of tokens handed out via OIDC.
**Acceptance criteria**
* OpenProject reads additional scopes
* Those
* in other words: Assuming [PR 25879](https://github.com/opf/openproject/pull/25879) is merged, a scope like `op:resource:documents:edit` has the same effect in a JWT that it already has in a doorkeeper-based token
* This is probably needed for <mention class="mention" data-id="83366" data-type="work_package" data-text="###COMMS-1122" data-display-id="COMMS-1122">###COMMS-1122</mention>. If it's not implemented when we start working on this, the COMMS team will probably implement it.
**Permissions and visibility considerations**
* _To whom is this feature visible?_
* _When is it not visible?_
**Translation considerations**
* _Key terms and phrases in the key languages_
**Out of scope**
* <br>
_Set the_ **To be informed/consulted teams** _field to include all teams necessary to be informed of the changes._