关于 using-backstage-identity
using-backstage-identity 是面向 Backstage 插件开发的技能,说明如何获取当前用户身份、资料和所属实体引用,以及以当前用户身份调用后端 API。
主要功能
- 01获取用户实体引用
- 02读取用户资料信息
- 03获取所属实体引用
- 04使用当前用户的 Backstage 令牌
适用场景
- 01在插件中显示当前用户信息
- 02按用户所属实体筛选资源
- 03以当前用户身份调用后端 API
- 04为新脚手架插件添加身份逻辑
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ vinzscam/ backstage-skills --skill using-backstage-identity安装后在 Claude Code 中输入/using-backstage-identity确认已加载。
附带文件references/current-user.md
详细介绍
Backstage 身份模式
何时使用此技能
- 插件需要当前用户的实体引用(例如
user:default/jdoe) - 插件需要用户的个人资料信息(显示名称、电子邮件、图片)
- 插件需要所有权实体引用,以筛选“我拥有的内容”
- 插件需要 Backstage 令牌,以当前用户的身份调用后端 API
选择合适的模式
| 情况 | 模式 | 参考 |
|---|---|---|
| 获取当前用户(实体引用、所有权引用、个人资料) | useApi(identityApiRef).getBackstageIdentity() / getProfileInfo() | references/current-user.md |
两种调用模式
- 独立使用(开发过程中):用户正在编辑现有插件。阅读参考资料,并将此模式应用于需要它的组件。
- 脚手架生成后(由
creating-backstage-plugin调用):将此模式应用于刚生成脚手架的插件。参考资料中的“脚手架生成后用法”一节会明确指出要编辑的文件以及要插入的内容。
常见注意事项
- 在 NFS 插件中,
identityApiRef从@backstage/frontend-plugin-api导入。(为兼容旧版,同一引用也从@backstage/core-plugin-api重新导出;新插件始终使用 NFS 包。) getBackstageIdentity()是异步函数,会返回一个BackstageUserIdentity——从中解构出userEntityRef和ownershipEntityRefs。- 不要将结果存储在顶层变量中;应在钩子内部调用(例如在 React 组件或
useAsync回调中),这样身份变更时会重新运行。
UI 约定
尽可能使用 @backstage/ui 进行渲染(Skeleton、Alert、Text、Flex、Button 等)。完整的组件目录和样式指南请参阅 using-backstage-ui 技能。
评论
支持 Markdown