PermissionEvaluator: rename query to authorizeConditional

Signed-off-by: Vincenzo Scamporlino <me@vinzscam.dev>
This commit is contained in:
Vincenzo Scamporlino
2022-04-07 20:25:53 +02:00
parent 3f41ada39d
commit 63902fcc17
21 changed files with 98 additions and 84 deletions
+1 -1
View File
@@ -2,4 +2,4 @@
'@backstage/plugin-catalog-backend': patch
---
Use new `PermissionEvaluator#query` method when retrieving permission conditions.
Use new `PermissionEvaluator#authorizeConditional` method when retrieving permission conditions.
+1 -1
View File
@@ -2,4 +2,4 @@
'@backstage/plugin-search-backend': patch
---
Use `PermissionEvaluator` instead of `PermissionAuthorizer`.
Use `PermissionEvaluator` instead of `PermissionAuthorizer`, which is now deprecated.
+1 -1
View File
@@ -5,4 +5,4 @@
Added `PermissionEvaluator`, which will replace the existing `PermissionAuthorizer` interface. This new interface provides stronger type safety and validation by splitting `PermissionAuthorizer.authorize()` into two methods:
- `authorize()`: Used when the caller requires a definitive decision.
- `query()`: Used when the caller can optimize the evaluation of any conditional decisions. For example, a plugin backend may want to use conditions in a database query instead of evaluating each resource in memory.
- `authorizeConditional()`: Used when the caller can optimize the evaluation of any conditional decisions. For example, a plugin backend may want to use conditions in a database query instead of evaluating each resource in memory.
+1 -1
View File
@@ -2,4 +2,4 @@
'@backstage/plugin-permission-node': minor
---
**BREAKING:** `ServerPermissionClient` now implements `PermissionEvaluator`, which moves out the capabilities for evaluating conditional decisions from `authorize()` to `query()` method.
**BREAKING:** `ServerPermissionClient` now implements `PermissionEvaluator`, which moves out the capabilities for evaluating conditional decisions from `authorize()` to `authorizeConditional()` method.
+1 -1
View File
@@ -2,4 +2,4 @@
'@backstage/plugin-jenkins-backend': patch
---
Use PermissionEvaluator instead of PermissionAuthorizer
Use `PermissionEvaluator` instead of `PermissionAuthorizer`, which is now deprecated.
+5 -8
View File
@@ -2,23 +2,20 @@
'@backstage/create-app': patch
---
Accept `PermissionEvaluator` together with the deprecated `PermissionAuthorizer`.
Accept `PermissionEvaluator` instead of the deprecated `PermissionAuthorizer`.
Apply the following to `packages/backend/src/types.ts`:
```diff
- import { ServerPermissionClient } from '@backstage/plugin-permission-node';
+ import {
+ PermissionAuthorizer,
+ PermissionEvaluator,
+ } from '@backstage/plugin-permission-common';
- import { PermissionAuthorizer } from '@backstage/plugin-permission-common';
+ import { PermissionEvaluator } from '@backstage/plugin-permission-common';
export type PluginEnvironment = {
...
discovery: PluginEndpointDiscovery;
tokenManager: TokenManager;
scheduler: PluginTaskScheduler;
- permissions: ServerPermissionClient;
+ permissions: PermissionEvaluator | PermissionAuthorizer;
- permissions: PermissionAuthorizer;
+ permissions: PermissionEvaluator;
};
```