[译]Ocelot - Claims Transformation

原文

用户授权后才能使用此功能。

用户获得授权后claims将被发送到claims transformation中间件。用户授权后,我们首先调用claims to headers middleware,claims to query string parameters middleware。

在ReRoute配置中添加名为AddClaimsToRequest, AddHeadersToRequest, AddQueriesToRequest的字典信息。

字典的条目标识ocelot将怎么转换,键会作为另外一个claim,header, query parameter的键。

Claims[CustomerId]标识我么就去到claims获取类型为CustomerId的claim。接下来的大于号 (>) 用来分割字符串。最后的值一个值,或者一个带索引号的值。(具体相关,看下面的)

Claims to Claims Transformation

下面是一个 transforms claims to claims 的例子:

"AddClaimsToRequest": {
    "UserType": "Claims[sub] > value[0] > |",
    "UserId": "Claims[sub] > value[1] > |"
}

Ocelot会查找用户的sub claim,将其转换成UsetType claim和UserId claim。并且假设sub claim的格式为 “usertypevalue|useridvalue”。

Claims to Headers Tranformation

下面是一个 transforms claims to headers 的例子

"AddHeadersToRequest": {
    "CustomerId": "Claims[sub] > value[1] > |"
}

Ocelot会查找用户的sub claim,将其转换成一个CustomerId 请求头。并且假设sub claim的格式为 “usertypevalue|useridvalue”。

Claims to Query String Parameters Transformation

下面是一个 transforms claims to query string parameters的例子:

"AddQueriesToRequest": {
    "LocationId": "Claims[LocationId] > value",
}

Ocelot会查找LocationId claim, 将其转为一个querystring parameter。并转发给下游。

转载于:https://www.cnblogs.com/irocker/p/Ocelot-claimstransformation.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值