Skip to main content

前端集成

现在我们了解了如何制定许可政策现在,让我们考虑一下需要在前端使用授权检查来补充策略的情况。

在大多数情况下,各种插件中的实际功能已被插件作者置于授权之后。 权限后端将使用您的权限策略返回授权结果,插件前端将相应地显示/隐藏/禁用相关的用户界面组件。

不过,在某些情况下,集成商需要在前端对策略进行补充。 应用程序级路由就是一个例子。

如果您的Backstage许可政策可能会返回一个DENY的用户请求catalogEntityCreatePermission在这种情况下,例如,取消对"...... "的访问可能是合理的。/catalog-import页:

packages/app/src/App.tsx
import { RequirePermission } from '@backstage/plugin-permission-react';
import { catalogEntityCreatePermission } from '@backstage/plugin-catalog-common';

const routes = (
<FlatRoutes>
<Route path="/catalog-import" element={<CatalogImportPage />} />
<Route
path="/catalog-import"
element={
<RequirePermission permission={catalogEntityCreatePermission}>
<CatalogImportPage />
</RequirePermission>
}
/>
{/* ... */}
</FlatRoutes>
);

作出这一更改后,被拒绝使用catalogEntityCreatePermission现在应该无法访问/catalog-importpage.