128.4. 传输安全性和身份验证支持(可从 Camel 2.20获得)
以下 验证机制 内置于 gRPC 中,在此组件中可用:
- SSL/TLS: gRPC 具有 SSL/TLS 集成,并推广使用 SSL/TLS 验证服务器,以及加密客户端和服务器之间交换的所有数据。客户端可以为客户端提供相互验证证书的可选机制。
- 通过 Google 进行基于令牌的身份验证: gRPC 提供通用机制来将基于元数据的凭据附加到请求和响应。提供通过 gRPC 访问 Google API 时获取访问令牌的其他支持。通常,必须使用此机制以及频道上的 SSL/TLS。
要启用这些功能,必须配置以下组件属性组合:
num. | 选项 | 参数 | 值 | 必填/选填 |
---|---|---|---|---|
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 (默认)或(HMAC384,HMAC512) | 选填 | ||
jwtSecret | 必需 | |||
jwtIssuer | 选填 | |||
jwtSubject | 选填 |
目前,使用 OpenSSL 的 TLS 是使用 gRPC over TLS 组件的方法。在 ALPN 中使用 JDK 通常较慢,且可能不支持 HTTP2 的必要密码。这个功能在组件中不实施。