跳转至正文
@capgo/capacitor-app-attest 身份验证与安全 开源

App Attest Capacitor 插件

Capacitor 插件,使用 Apple App Attest 和 Google Play Integrity Standard 实现跨平台设备认证

安装

bun add @capgo/capacitor-app-attest bunx cap sync
npm、pnpm 或 yarn
  • npm install @capgo/capacitor-app-attest
  • pnpm add @capgo/capacitor-app-attest
  • yarn add @capgo/capacitor-app-attest

指南

如何在 Capacitor 中使用 App Attest

在设备上测试

下载 Capgo App,然后扫描二维码 code。

App Attest 插件预览 QR code

使用 @capgo/capacitor-app-attest

专为 Capacitor 设计的统一跨平台设备认证插件。

安装

bun add @capgo/capacitor-app-attest
bunx cap sync

插件暴露的内容

  • isSupported - 检测当前设备是否支持原生设备认证。
  • prepare - 准备认证状态并返回用于后续调用的 key handle。
  • createAttestation - 创建与后端 challenge 绑定的注册认证 token。
  • createAssertion - 创建与请求负载绑定的请求断言 token。

用法示例

isSupported

检查此设备是否支持原生 attestation。

import { AppAttestNative } from '@capgo/capacitor-app-attest';

const result = await AppAttestNative.isSupported();
console.log(result);

prepare

准备 attestation 状态并返回供后续调用使用的 key handle。

import { AppAttestNative } from '@capgo/capacitor-app-attest';

const result = await AppAttestNative.prepare();
console.log(result);

createAttestation

创建与后端下发的 challenge 绑定的注册 attestation token。

import { AppAttestNative } from '@capgo/capacitor-app-attest';

const result = await AppAttestNative.createAttestation({
  keyId: 'key-id-123',
  challenge: 'challenge',
});
// The result holds sensitive values: use it without logging it.

createAssertion

创建与请求负载绑定的请求断言 token。

import { AppAttestNative } from '@capgo/capacitor-app-attest';

const result = await AppAttestNative.createAssertion({
  keyId: 'key-id-123',
  payload: 'payload',
});
// The result holds sensitive values: use it without logging it.

完整参考

继续阅读:使用 @capgo/capacitor-app-attest

如果你正在使用 使用 @capgo/capacitor-app-attest 来规划安全与合规,请结合 @capgo/capacitor-app-attest 有关 @capgo/capacitor-app-attest 中的实现细节, 快速入门 有关“入门指南”中的实现细节, 加密 了解 Encryption 的实现细节, 合规性 有关“合规性”中的实现细节,以及 Capgo 安全扫描器 有关 Capgo Security Scanner 中的产品工作流。

常见问题

App Attest 插件常见问题

如何在 Capacitor 应用中安装 App Attest 插件?

运行 "bun add @capgo/capacitor-app-attest" (或 "npm install @capgo/capacitor-app-attest"),然后运行 "bunx cap sync",使 iOS 和 Android 项目同步 native code。最后在你的应用 code 中从 "@capgo/capacitor-app-attest" 导入即可。

@capgo/capacitor-app-attest 是否支持 React、Vue 和 Angular?

支持。App Attest 是一个 Capacitor 包,因此适用于任何运行在 Capacitor 中的 Web 框架,包括 Ionic、React、Vue、Angular、Svelte 和纯 JavaScript。

@capgo/capacitor-app-attest 支持哪个版本的 Capacitor?

Capgo 插件遵循 Capacitor 的主版本号:请使用与 Capacitor 主版本号一致的插件主版本(例如插件 v8 对应 Capacitor 8)。GitHub README 中的兼容性表列出了仍在维护的版本。

@capgo/capacitor-app-attest 是免费开源的吗?

是的。code 的源代码已在 GitHub 上公开,地址为 https://github.com/Cap-go/capacitor-app-attest/,该包可在 npm 免费安装。欢迎提交 Bug 报告和 Pull Request。

使用 App Attest 的 code 能否不经过 App Store 审核直接更新?

安装或升级插件会改动原生 code,因此需要重新做一次商店构建。之后,调用该插件的 JavaScript、HTML 和 CSS 改动就能通过 Capgo live updates 立即发布。

无需等待应用审核,即可快速发布 App Attest 更新

只要插件已包含在你的商店版本中,Capgo live updates 就能在几分钟内把 JavaScript、HTML 和 CSS 的改动推送给用户。

开始使用 Capgo