【发布时间】:2020-06-17 04:44:05
【问题描述】:
我正在测试 Istio(服务网格)授权和身份验证功能,并一直在做一些测试以在微服务环境中实现 JWT。并且文档不清楚对象类型“AuthorizationPolicy”和“RequestAuthentication”之间的区别,
【问题讨论】:
标签: authentication kubernetes authorization istio
我正在测试 Istio(服务网格)授权和身份验证功能,并一直在做一些测试以在微服务环境中实现 JWT。并且文档不清楚对象类型“AuthorizationPolicy”和“RequestAuthentication”之间的区别,
【问题讨论】:
标签: authentication kubernetes authorization istio
不确定您是否检查了这 2 个文档页面:
Authorization Policy 和 RequestAuthentication。
使用授权策略,您可以允许或拒绝请求,但您不能定义身份验证,因此请求将被接受或不接受,但不考虑身份验证方法。
另一方面,RequestAuthentication 将定义将用于验证请求的身份验证方法,但它根本不会限制未经身份验证的请求,因此您需要一个链接到它的授权规则。
RequestAuthentication 文档中的这句话解释了它:
将接受不包含任何身份验证凭据的请求,但不会具有任何经过身份验证的身份。 要限制对经过身份验证的请求的访问,这应该伴随着授权规则。
因此,在您的授权策略中,您可以定义允许或拒绝请求的策略,并使用 RequestAuthentication 定义您的身份验证方法。
如果您想将其限制为经过身份验证的请求,那么您将需要两者。 基本上,最佳方法取决于您的用例。
【讨论】: