128.4. 传输安全性和身份验证支持(可从 Camel 2.20获得)
以下 身份验证机制 内置了 gRPC,在此组件中可用:
- SSL/TLS: gRPC 具有 SSL/TLS 集成,并推广使用 SSL/TLS 验证服务器,并加密客户端和服务器之间交换的所有数据。客户端可以使用可选机制为 mutual 身份验证提供证书。
- 使用 Google 的基于令牌的身份验证: gRPC 提供了将基于元数据的凭证附加到请求和响应的通用机制。提供了在通过 gRPC 访问 Google API 时获取访问令牌的额外支持。通常,这个机制必须被用作频道上的 SSL/TLS。
要启用这些功能,必须配置以下组件属性组合:
| num. | 选项 | 参数 | value | 必填/选填 |
|---|---|---|---|---|
| 1 | SSL/TLS | negotiationType | TLS | 必填 |
| keyCertChainResource | 必填 | |||
| keyResource | 必填 | |||
| keyPassword | 选填 | |||
| trustCertCollectionResource | 选填 | |||
| 2 | 使用 Google API 的基于令牌的身份验证 | authenticationType | | 必填 |
| negotiationType | TLS | 必填 | ||
| serviceAccountResource | 必填 | |||
| 3 | 自定义 JSON Web 令牌实施身份验证 | authenticationType | JWT | 必填 |
| negotiationType | NONE 或 TLS | 可选。TLS/SSL 不检查此类型,但强烈建议使用。 | ||
| jwtAlgorithm | HMAC256 (default)或(HMAC384,HMAC512) | 选填 | ||
| jwtSecret | 必填 | |||
| jwtIssuer | 选填 | |||
| jwtSubject | 选填 |
目前,使用 OpenSSL 的 TLS 是通过 TLS 组件使用 gRPC 的建议方法。将 JDK 用于 ALPN 通常较慢,可能不支持 HTTP2 所需的密码。此功能没有在组件中实施。