- 最新
- 投票最多
- 评论最多
【以下的回答经过翻译处理】 当在 MSK 集群上启用多重身份验证时,授权取决于客户端使用哪些访问控制方法来访问 MSK 集群。
让我们以上面的示例为例,其中启用了 IAM 和 SASL/SCRAM,假设“客户端 A”正在通过 IAM 身份验证访问 MSK 集群,而“客户端 B”正在通过 SASL/SCRAM 访问集群。您仍然可以调用 Apache Kafka ACL API 并为使用 IAM 访问控制的 MSK 集群添加 ACL,但存储在 Apache ZooKeeper 中的 ACL 对 IAM 角色的授权没有影响。因此,使用 IAM 身份验证的“客户端 A”的访问/授权将由 IAM 策略控制,因为即使添加了 ACL,ACL 对“客户端 A”也没有影响。
但是当客户端使用非 IAM 身份验证时,这些添加的 ACL(和 allow.everyone.if.no.acl.found)将生效,即在这种情况下授权将由 ACL 控制。因此,当使用 SASL/SCRAM 的“客户端 B”尝试执行任何操作时,它会根据添加的 ACL 进行验证。
简而言之,填补您提到的上表中的空白
| Authn & Authz mech | Kafka client authn | Kafka client authz | Kafka ACL behaviour | Property allow.everyone.if.no.acl.found | | --- | --- | --- | --- | --- | --- | | SASL/IAM clients | SASL/IAM | IAM | No effect | No effect | | SASL/SCRAM clients | SASL/SCRAM | ACLs | Applies/Does have an effect | Applies/Does have an effect |
相关内容
- AWS 官方已更新 1 年前
- AWS 官方已更新 3 年前
- AWS 官方已更新 3 个月前