mcpField
U
using-backstage-identity

using-backstage-identity

github.com/vinzscam开发444 次安装9 周前更新
代码仓库

关于 using-backstage-identity

using-backstage-identity 是面向 Backstage 插件开发的技能,说明如何获取当前用户身份、资料和所属实体引用,以及以当前用户身份调用后端 API。

主要功能

  1. 01获取用户实体引用
  2. 02读取用户资料信息
  3. 03获取所属实体引用
  4. 04使用当前用户的 Backstage 令牌

适用场景

  1. 01在插件中显示当前用户信息
  2. 02按用户所属实体筛选资源
  3. 03以当前用户身份调用后端 API
  4. 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