Interface AppKeyProvider
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
非对称签名密钥获取函数式接口
用于根据 appId 获取非对称签名所需的公钥/私钥。与 AppSecretProvider(对称密钥)并列:
对称算法(HMAC)使用 secret,非对称算法(SM2/RSA)使用此接口的密钥对象。
使用者可自行实现该接口,从数据库、配置中心、KMS/HSM 等任意来源获取密钥。
框架本身不提供任何默认实现,也不从配置文件读取密钥(无 default-secret /
app-secrets / sm2.default-*-key 等配置项)——密钥一律由业务方以 Bean 形式提供,
生产环境从上述来源查询即可,避免密钥明文落盘。
// 从密钥库/KMS 获取
AppKeyProvider kmsProvider = appId -> {
KeyPair kp = kmsClient.getKeyPair(appId);
return new AppKey(appId, kp.getPrivate(), kp.getPublic());
};
- Author:
- Kerbores(kerbores@riemann.tech)
-
Nested Class Summary
Nested Classes -
Method Summary
-
Method Details
-
getKey
根据 appId 获取非对称密钥对- Parameters:
appId- 应用ID- Returns:
- 密钥对(含公钥与可选私钥),找不到返回 null
-