新万博移动客户端Collibra JSON Web Token认证指南

本教程是使用JSON Web令牌进行REST API身份验证的完整指南。

几乎所有的Collibra API调新万博移动客户端用都需要身份验证。

要了解基本身份验证,请参见新万博移动客户端Collibra REST API认证

您可以对与Collibra REST API交互的应用程序使用JSON Web令牌(JWT)身份验证。新万博移动客户端在此过程中,应用程序从身份提供者(Identity Provider, IdP)请求访问令牌。IdP充当身份验证服务器,并返回一个签名的JWT访问令牌。当您的应用程序对Collibra进行API调用时,它将提供JWT访问令牌作为新万博移动客户端持票人HTTP中的令牌授权头。

curl -H '授权:持有者'…

使用JWT令牌身份验证的好处包括:

  • 将身份验证细节保存在IdP中,并与Collibra分开。新万博移动客户端
  • 简化安全管理。
  • 限制令牌的有效时间。

新万博移动客户端天秤最小版本

JWT身份验证可从以下版本开始:

  • 新万博移动客户端Collibra数据智能云2020.11。
  • 新万博移动客户端Collibra数据治理中心5.7.7-1。

设置并使用JWT

下表总结了在Collibra REST API请求中获取和使用JWT的过程。新万博移动客户端

过程

步骤

初始设置
  1. 在IdP中创建一个秘密的客户端凭据帐户。
  2. 确定IdP的JSON Web Key Set (JWKS)端点URL。
  3. 用Collibra注册JWKS端点。新万博移动客户端
  4. 在Collibra中为您的客户端应新万博移动客户端用程序帐户创建一个用户。

    提供一个有意义的姓和名,以确定这是一个服务帐户。

应用程序何时启动
  1. 使用IdP对客户端应用程序进行身份验证。
  2. 保存返回的访问令牌,以便在REST API调用中使用。
当您的应用程序调用Collibra REST api时新万博移动客户端
  1. 将JWT令牌作为承载令牌包含在授权HTTP报头中。
  2. 如果API调用响应未经授权的,访问令牌或JWKS凭据可能已经过期。重新验证并重试请求。

JWT依赖于您的标识提供程序

您的IdP必须在JWT令牌中提供以下详细信息,以便Collibra接受令牌。新万博移动客户端

部分

描述

alg

加密算法。

新万博移动客户端Collibra支持所有标准加密算法。

孩子

用于签署JWT令牌的公钥的JWKS标识符。

身份提供程序可能具有多个公钥证书,例如,在进行密钥轮换时可能存在多个有效密钥。

typ

可选字段,定义JWT类型。

例如,使用MIME类型格式应用程序/ jwt应用程序/ secevent + jwt应用程序/例如,前缀被删除jwtsecevent + jwt

有效载荷 国际空间站

令牌的发行者。

该字段用于检查令牌是否来自预期的IdP。

经验值 令牌到期时间。
iat 发行令牌的时间。
主体或主体ID。
签名

报头和有效载荷的数字签名。

签名验证消息在整个过程中没有更改。对于用私钥签名的令牌,签名还会验证JWT发送方的真实性。

配置JWT设置

启用或更改JSON Web Token配置:

  1. 打开Col新万博移动客户端libra控制台。
    新万博移动客户端Collibra控制台以基础设施页面。
  2. 在选项卡窗格中,展开环境以显示其服务。
  3. 在选项卡窗格中,单击该环境的Data Governance Center服务。
  4. 点击配置
  5. 点击编辑配置
  6. JWT部分,进行必要的更改。
    设置 描述
    JSON Web Key Set URL

    检索由授权服务器发布的验证JSON Web令牌(jwt)真实性所需的公钥信息的URL。

    启用JWT身份验证需要此设置。

    JWT令牌类型

    列表中接受的JWT媒体类型,以逗号分隔,不区分大小写typ头参数。

    如果授权服务器没有提供媒体类型参数,则留空。

    默认值为在+ jwt, jwt

    JWT算法

    中接受的JWT算法的逗号分隔列表alg头参数。看到https://tools.ietf.org/html/rfc7518#section-3.1获取详细信息。

    保留空白以接受所有数字签名算法。

    JWT发行人

    被接受的开证人进入国际空间站JWT索赔。

    如果授权服务器没有提供颁发者声明,则留空。

    JWT观众

    对象的可接受受众值列表,以逗号分隔澳元索赔。

    该字段的值是授权服务器中的一个配置设置,它将Collibra环境标识为JWT的预期接收者。新万博移动客户端

    如果授权服务器没有提供受众声明,则留空。

    JWT主体ID索赔名称。

    包含当事人身份的智威汤逊索赔的名称。看到https://tools.ietf.org/html/rfc7519#section-4.1.2获取详细信息。

    默认为标准主题声明,

    只有当您的授权服务器有其他识别主体的方法时,才更改此设置client_id索赔。

    如果启用JWT身份验证,则需要设置。

    最大时钟倾斜

    运行授权服务器和Collibra的机器的时钟之间可接受的最大秒差。新万博移动客户端

    在执行令牌验证的时间比较时,将忽略小于给定值的差异。

    如果不为空,缺省值为60秒。

  7. 点击保存所有
  8. 重新启动环境以应用更改。看到停止环境而且启动一个环境

JWT故障排除

类的主体中可能出现的JWT身份验证错误代码401年未经授权HTTP响应。您可以使用错误代码来确定应用程序的适当操作过程。

错误代码 描述 可能的行动

malformedToken

JWT令牌编码错误或语法不正确。

检查IdP配置,确保它返回JWT格式的令牌。

expiredToken

JWT令牌已过期。

在应用程序中,从IdP请求一个新的令牌,然后重试。

invalidToken

JWT令牌无效。

常见的原因有:

  • 糟糕的签名。
  • 错误的观众。
  • 错误的发行人。
  • 错误的媒体类型。
  • 不允许签名算法。

检查您的IdP和Collibra JW新万博移动客户端T配置,以确保设置一致。

unableToProcessToken

无法处理JWT令牌。

检查您的IdP和Collibra JW新万博移动客户端T配置,如果问题仍然存在,请联系新万博移动客户端Collibra支持

额外的资源狗万新闻c