授权消费者
操作步骤1:在消费者管理侧授权
登录 云原生API网关控制台。
在左侧导航栏,选择 "消费者",并在顶部菜单栏选择地域。
在消费者页面,单击目标消费者进入详情页,选择消费者授权页签>"添加授权"。
在授权面板中,配置相关参数,单击"确定"。
配置项 描述 授权范围 云原生API网关支持四种维度的授权范围:
实例:若授权消费者给实例,则作用于该实例下的所有路由和接口。
API:若授权消费者给API,则作用于该API下的所有接口。目前只支持授权给REST类型的API。
接口:若授权消费者给接口,则作用于该接口。
路由:若授权消费者给路由,则作用于该路由。
作用范围由大到小为:实例>API>接口=路由
有效期 选择此次消费者授权的有效期,如果不选择,则默认永久有效。 授权实例 选择需要授权的实例。 授权API
选择需要授权的API,如果API有多个版本,则通过API名称/版本名称的形式展示。 授权接口
选择需要授权的接口。 授权路由 选择需要授权的路由。
操作步骤2:在资源端侧授权
登录 云原生API网关控制台。
找到不同资源端的消费者管理页面。
点击授权,选择消费者列表>"确定"。
对于实例,在左侧导航栏,选择 "实例",进入实例概览页>消费者认证页签。
对于API,在左侧导航栏,选择 "API",进入"REST API"详情页>消费者认证页签。
对于接口,在左侧导航栏,选择 "API",进入"REST API"详情页,单击接口>消费者认证页签。
对于路由,在左侧导航栏,选择 "API",进入"HTTP/WebSocket API"详情页,单击路由>消费者认证页签。
解除授权
操作步骤1:在消费者管理侧解除授权
登录 云原生API网关控制台。
在左侧导航栏,选择 "消费者",并在顶部菜单栏选择地域。
在消费者页面,单击目标消费者进入详情页>消费者授权页签。
在已授权列表中,支持批量勾选后点击"解除授权",也支持对单个资源右侧操作栏点击"解除授权"。
操作步骤2:在资源端侧解除授权
登录 云原生API网关控制台。
找到不同资源端的"消费者管理页面"。
已授权消费者列表右侧操作栏中点击"解除授权"。
对于实例,在左侧导航栏,选择 "实例",进入实例概览页>消费者认证页签。
对于API,在左侧导航栏,选择 "API",进入"REST API"详情页>消费者认证页签。
对于接口,在左侧导航栏,选择 "API",进入"REST API"详情页,单击接口>消费者认证页签。
对于路由,在左侧导航栏,选择 "API",进入"HTTP/WebSocket API"详情页,单击路由>消费者认证页签。
资源端开启消费者认证
注意
在资源端开启消费者认证后,需为当前路由/接口绑定消费者授权关系,否则无法访问。
实例侧开启消费者认证
说明
在实例上开启消费者认证后,则将对该实例下的所有路由/接口都生效,请谨慎开启。
实例上的认证是独立的,例如在实例上开启了JWT认证,在实例下的路由开启HMAC认证,则访问该路由时需要同时携带两种认证方式。如果在实例和路由上开启的是同一种认证,则需要携带相同的消费者认证才能访问。
操作步骤
登录 云原生API网关控制台。
在左侧导航栏,选择 "实例",并在顶部菜单栏选择地域。
进入实例概览页>消费者认证页签。
点击编辑配置信息,填写配置信息后,点击"确认"。
配置项 描述 启用状态 开启后,认证鉴权生效,访问其下资源需要携带对应认证信息。 认证方式 当前路由认证消费者时使用的认证方式。目前支持JWT、HMAC、KEY、BASIC的认证方式。 Token配置 访问携带Token相关配置信息。 JWT Token JWT Token 配置信息。
隐藏认证信息:是否将认证信息透传到后端服务。
Header:设置从哪个header获取token,优先级最高。默认值为'authorization',使用方式 -H 'authorization: token值'。
Query:设置从哪个query string获取token,优先级低于header。默认值为'jwt',使用方式 '?jwt=token值'。
Cookie:设置从哪个cookie获取token,优先级低于query。默认值为'jwt',使用方式 '--cookie=jwt值'。
HMAC Token HMAC Token 配置信息。
隐藏认证信息:是否将认证信息透传到后端服务。
加密算法:支持"hmac-sha1", "hmac-sha256", "hmac-sha512"。
KEY Token KEY Token 配置信息。
隐藏认证信息:是否将认证信息透传到后端服务。
Header:设置从哪个header获取token,优先级最高。默认值为'apiKey',使用方式 -H 'apiKey: token值'。
Query:设置从哪个query string获取token,优先级低于header。默认值为'apiKey',使用方式 '?apiKey=token值'。
BASIC Token BASIC Token 配置信息。
隐藏认证信息:是否将认证信息透传到后端服务。
API侧开启消费者认证
说明
- 在REST API上开启消费者认证后,则将对该API下的所有接口都生效。
API和接口上只能开启同一种认证方式。因此,如API上开启消费者认证,则其下所有接口都会开启相同认证;如存在接口开启了消费者认证,则无法在该API上开启认证,需要关闭API下所有接口的认证后才能开启。
API需要发布后才能生效。
操作步骤
登录 云原生API网关控制台。
在左侧导航栏,选择 "API",并在顶部菜单栏选择地域。
进入REST API详情页>消费者认证页签。
点击编辑配置信息,填写配置信息后,点击"确认"。
接口侧开启消费者认证
说明
- 接口上如未开启消费者认证,则默认和所在API上的消费者认证状态一致。
接口可以额外进行消费者授权。例如接口所在API授权了消费者1,接口本身授权了消费者2,则携带消费者1或消费者2的认证信息都能访问该接口。
接口需为发布状态才能生效。
操作步骤
登录 云原生API网关控制台。
在左侧导航栏,选择 "API",并在顶部菜单栏选择地域。
进入REST API详情页,单击接口>消费者认证页签。
点击编辑配置信息,填写配置信息后,点击"确认"。
路由侧开启消费者认证
说明
路由需为发布状态才能生效。
操作步骤
登录 云原生API网关控制台。
在左侧导航栏,选择 "API",并在顶部菜单栏选择地域。
进入HTTP/WebSocket API详情页,单击路由>消费者认证页签。
点击编辑配置信息,填写配置信息后,点击"确认"。
资源端关闭消费者认证
操作步骤
登录 云原生API网关控制台。
找到不同资源端的消费者管理页面。
点击编辑配置信息,启用状态选择"关闭"。
对于实例,在左侧导航栏,选择 "实例",进入实例概览页>消费者认证页签。
对于API,在左侧导航栏,选择 "API",进入"REST API"详情页>消费者认证页签。
对于接口,在左侧导航栏,选择 "API",进入"REST API"详情页,单击接口>消费者认证页签。
对于路由,在左侧导航栏,选择 "API",进入"HTTP/WebSocket API"详情页,单击路由>消费者认证页签。