联邦 Keyless 集成指南
-
第 1 步:设置 IAM 提供商
使用 IAM 设置项目,使其符合所需账户结构。
-
第 2 步:在链上注册 JSON Web Key Set(JWKS)
联邦 Keyless 账户要求在链上注册 JWKS。
要注册 JWKS,请使用一个 Aptos 账户调用
0x1::jwks::update_federated_jwk_setentry 函数。该账户将存储用于验证联邦 Keyless 账户签名交易的 JWK。JWK 集地址如下:
AWS Cognito:
https://cognito-idp.<region>.amazonaws.com/<userPoolId>/.well-known/jwks.jsonAuth0:https://<yourDomain>/.well-known/jwks.jsonTypeScript SDK 提供功能来简化此过程:给定 IAM 提供商设置的发行方(用户 JWT 中的
issclaim 值)和用于进行更新的账户即可。import {Aptos} from '@aptos-labs/ts-sdk'; // Requires version v1.29.1 or laterconst aptos = new Aptos(new AptosConfig({ network: Network.DEVNET })); // Configure your network hereconst alice = // Derive your Aptos account hereconst jwkTxn = await aptos.updateFederatedKeylessJwkSetTransaction({ sender: alice, iss });await aptos.signAndSubmitTransaction({ signer: alice, transaction: jwkTxn });可使用 SDK 提供的交互式示例,在 Devnet 或 Testnet 上轻松为 IAM 提供商注册 JWKS。该示例会使用 Google Keyless 账户设置 JWK 所有者账户。
Terminal window git clone https://github.com/aptos-labs/aptos-ts-sdkcd aptos-ts-sdkpnpm install && pnpm buildcd examples/typescriptpnpm installpnpm jwk_update要在 Mainnet 上设置 JWK 所有者账户,需要创建账户并使用它注册 JWKS。
请保存用于注册 JWKS 的账户地址,因为下一步需要使用它。
有关
0x1::jwks::update_federated_jwk_setentry 函数的更多信息,请参阅参考文档。 -
第 3 步:遵循 Aptos Keyless 集成指南
注册 JWKS 后,可以从第 2 步开始遵循 Aptos Keyless 集成指南。派生
KeylessAccount时,请务必将jwkAddress设置为用于注册 JWKS 的账户地址。