更新时间:2024-10-09 GMT+08:00

配置安全策略

ASM提供的安全功能主要分为访问授权、对端认证和JWT认证,以确保服务间通信的可靠性。

操作步骤

  1. 登录应用服务网格控制台,单击服务网格的名称,进入网格详情页面。
  2. 在左侧导航栏选择“服务管理”,在列表右上方选择服务所在命名空间。
  3. 选择一个服务,单击操作列的“安全”,在右侧页面进行访问授权和对端认证配置。

    访问授权

    用来实现对网格中服务的访问控制功能,即判断一个请求是否允许发送到当前的服务。

    选择“访问授权”,单击“立即配置”,在弹出对话框中,单击,选择指定命名空间下的一个或多个服务进行访问授权设置。

    对端认证

    Istio通过客户端和服务端的PEP(Policy Enforcement Points)隧道实现服务实例之间的通信,对端认证定义了流量如何通过隧道(或者不通过隧道)传输到当前服务的实例。已经注入sidecar的服务实例之间,默认通过隧道进行通信,流量会自动进行TLS加密。

    选择“对端认证”页签,单击“立即配置”,在弹出对话框中选择认证策略类型。

    表1 参数说明

    参数名称

    参数说明

    默认模式(UNSET)

    如果父作用域配置了对端认证策略,服务将继承父作用域的配置。

    宽容模式(PERMISSIVE)

    请求可以不通过隧道进行传输,既可以是明文,也可以是TLS加密的密文。默认情况下,网格配置了宽容模式(PERMISSIVE)的对端认证策略。

    严格模式(STRICT)

    流量只能通过隧道进行传输,因为请求必须是TLS加密的密文,且必须带有客户端证书。

    JWT认证

    在服务网格中配置JWT(JSON Web Token)请求授权,可以实现来源认证。在接收用户请求时,该配置用于认证请求头信息中的Access Token是否可信,并授权给来源合法的请求。

    仅支持为HTTP协议的服务配置JWT认证。

    选择“JWT认证”页签,单击“立即配置”,在弹出对话框中配置如下参数:

    • 发行者:JWT的颁发者。
    • 令牌受众:设置哪些服务可以使用JWT Token访问目标服务,多个受众用“,”隔开,若为空表示对访问的服务不受限制。
    • jwks:JWT规则集。

    JWT认证的原理及应用示例请参见JWT认证原理在ASM中对入口网关进行JWT请求认证