# Authentication

如果使能的话, eKuiper 从 1.4.0 起将为 RESTful API 提供基于 JWT RSA256 的身份验证。用户需要将他们的公钥放在 etc/mgmt 文件夹中,并使用相应的私钥来签署 JWT 令牌。 当用户请求 RESTful API 时,将 Token 放在 http 请求头中,格式如下:

Authorization:XXXXXXXXXXXXXXX
1

如果token正确,eKuiper会响应结果;否则,它将返回 http 401 代码。

# JWT Header

{
  "typ": "JWT",
  "alg": "RS256"
}
1
2
3
4

# JWT Payload

JWT Payload 应使用以下格式

字段是否可选意义
iss颁发者 , 此字段必须与etc/mgmt目录中的相应公钥文件名字一致
aud颁发对象 , 此字段必须是 eKuiper
exp过期时间
jtiJWT ID
iat颁发时间
nbfNot Before
sub主题

这里有一个 json 格式的例子

{
  "iss": "sample_key.pub",
  "adu": "eKuiper"
}
1
2
3
4

使用此格式时,用户必须确保正确的公钥文件 sample_key.pub 位于 etc/mgmt 下。

# JWT Signature

需要使用私钥对令牌进行签名,并将相应的公钥放在 etc/mgmt 中。

本页导航