为kong网关添加key-auth插件实现安全认证

这篇具有很好参考价值的文章主要介绍了为kong网关添加key-auth插件实现安全认证。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

官方指导文档:https://docs.konghq.com/gateway/latest/get-started/key-authentication/

一、新建一个用户

这里我们新建一个username=luka的用户

[root@min ~]# curl -i -X POST http://localhost:8001/consumers/ \
>   --data username=luka
HTTP/1.1 201 Created
Date: Tue, 30 May 2023 14:16:56 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: http://localhost:8002
X-Kong-Admin-Request-ID: bDQSAZLydiS5oRKeaELyg1ul17eAC7Fo
vary: Origin
Access-Control-Allow-Credentials: true
vary: Origin
Content-Length: 173
X-Kong-Admin-Latency: 18
Server: kong/3.3.0.0-enterprise-edition

{"created_at":1685456216,"custom_id":null,"username":"luka","tags":null,"type":0,"id":"2385bb30-9c0b-4aae-9dc8-34c3b0191589","username_lower":"luka","updated_at":1685456216}[root@min ~]# 

二、为用户luka分配一个key

[root@min ~]# curl -i -X POST http://localhost:8001/consumers/luka/key-auth
HTTP/1.1 201 Created
Date: Tue, 30 May 2023 14:20:24 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: http://localhost:8002
X-Kong-Admin-Request-ID: f7kYQ2qPNXyVM1sWh3OwLeDNIHDV77I2
vary: Origin
Access-Control-Allow-Credentials: true
Content-Length: 190
X-Kong-Admin-Latency: 10
Server: kong/3.3.0.0-enterprise-edition

{"created_at":1685456424,"id":"796e126a-5e61-41ad-a4ba-404a71feb3bd","ttl":null,"tags":null,"key":"mZiuw2s2mJvFTbwhVx1zpYzFGaUbS2t1","consumer":{"id":"2385bb30-9c0b-4aae-9dc8-34c3b0191589"}}

这一步我们看到kong给我们分配一个key:mZiuw2s2mJvFTbwhVx1zpYzFGaUbS2t1

三、开启全局的key-auth

1、启用key-auth插件

[root@min ~]# curl -X POST http://localhost:8001/plugins/ \
>     --data "name=key-auth"  \
>     --data "config.key_names=apikey"
{"created_at":1685456863,"consumer":null,"protocols":["grpc","grpcs","http","https","ws","wss"],"updated_at":1685456863,"ordering":null,"enabled":true,"instance_name":null,"id":"b123cd0a-2410-4fb5-8cd1-3953ed095d4f","service":null,"name":"key-auth","tags":null,"config":{"hide_credentials":false,"key_in_body":false,"key_in_query":true,"key_in_header":true,"run_on_preflight":true,"key_names":["apikey"],"anonymous":null},"route":null}

2、不带key进行请求

为kong网关添加key-auth插件实现安全认证

3、携带错误的key进行请求

为kong网关添加key-auth插件实现安全认证

4、使用正确的key进行请求

为kong网关添加key-auth插件实现安全认证

四、查看当前的已经有的插件,并且取消对应插件

1、查看当前已经有的插件

[root@min ~]# curl -X GET http://192.168.19.50:8001/plugins
{"data":[{"created_at":1685456863,"consumer":null,"protocols":["grpc","grpcs","http","https","ws","wss"],"updated_at":1685456863,"ordering":null,"enabled":true,"instance_name":null,"id":"b123cd0a-2410-4fb5-8cd1-3953ed095d4f","service":null,"name":"key-auth","tags":null,"config":{"hide_credentials":false,"key_in_body":false,"key_in_query":true,"key_in_header":true,"run_on_preflight":true,"key_names":["apikey"],"anonymous":null},"route":null}],"next":null}

2、禁用插件

使用api: http://192.168.19.50:8001/plugins/{plugin_id}来进行禁用

[root@min ~]# curl -X PATCH  http://192.168.19.50:8001/plugins/b123cd0a-2410-4fb5-8cd1-3953ed095d4f --data enabled=false
{"created_at":1685456863,"consumer":null,"protocols":["grpc","grpcs","http","https","ws","wss"],"updated_at":1685458558,"ordering":null,"enabled":false,"instance_name":null,"id":"b123cd0a-2410-4fb5-8cd1-3953ed095d4f","service":null,"name":"key-auth","tags":null,"config":{"hide_credentials":false,"key_in_body":false,"key_in_query":true,"key_in_header":true,"run_on_preflight":true,"key_names":["apikey"],"anonymous":null},"route":null}

# 3、测试禁用后不携带apikey能够正常访问

为kong网关添加key-auth插件实现安全认证文章来源地址https://www.toymoban.com/news/detail-464595.html

到了这里,关于为kong网关添加key-auth插件实现安全认证的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 整合一套高性能网关Kong

    前言 #     相信大家对Api网关都比较的熟悉,我们之前的文章也介绍过ASP.NET Core的网关Ocelot,也介绍过Spring Cloud Gateway。说到网关的主要功能,其实总结起来就两个字\\\"统一\\\",无论是作为应用的入口、认证授权、熔断限流等等主要都是为了统一的地方做一些事情。今天我们介

    2024年02月04日
    浏览(46)
  • Nginx、Kong、Apisix、Gateway网关比较

    Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。能够支撑 5 万并发链接,并且 cpu、内存等资源消耗却非常低,运行非常稳定,由C语言编写。支持负载均衡、限流熔断、热部署、安全认证等。 应用场景 http 服务器:独立提供 http 服务,用于

    2024年02月14日
    浏览(38)
  • 深入理解API网关Kong:动态负载均衡配置

    在 NGINX 中,负载均衡的配置主要在 upstream 指令中进行。 upstream 指令用于定义一个服务器群组和负载均衡方法。客户端请求在这个服务器群组中进行分发。 NGINX 提供了以下几种负载均衡方法: 轮询(round-robin) :这是默认的负载均衡方法,每个请求按照时间分发,从第一个

    2024年02月07日
    浏览(54)
  • Kong 服务和路由的添加

    这里参考DB-less-Mode,因为使用的是 yaml 配置文件的形式,所以所有的相关配置只需要往初始化的 kong.yml 文件中添加就可以了,就像nginx的配置文件 DB-less-Mode vim /etc/kong/kong.yml Response: 我们可以在kong的 8000 端口后加上路由后缀 /test-service 查看服务是否正常 这里由于项目路径原因

    2024年02月16日
    浏览(39)
  • Kong 自定义插件安装和调试

    官方文档 1、在本地安装(基于当前目录中的.rockspec) response 2、打包已安装的文件 response 同时会生成 kong-plugin-mepjwt-0.1.0-1.all.rock 文件 3、安装插件 response 查看 response 在 kong.conf 文件中添加插件 yaml 文件配置 在加载过程中难免会有错误,需要自己打日志排查 我的插件主要是解开

    2024年02月15日
    浏览(54)
  • ELK集添加安全认证

    1、elasticsearch集群启用SSL 编辑所有elasticsearch节点 elasticsearch/config/elasticsearch.yml 配置文件新增以下内容: 2、生成证书 注意:如果是在docker中部署的,需要进入到容器中进行操作 生成的证书默认都在 /usr/share/elasticsearch 目录下: 查看是否成功生成证书 把这两个证书移动到 /

    2023年04月17日
    浏览(33)
  • SpringBoot为WebSocket添加安全认证与授权功能

    作者:禅与计算机程序设计艺术 19年初,Spring 推出了 Spring Websocket 技术,这是一种基于WebSocket协议的消息通信框架,用于快速开发WebSocket API。在实际应用中,WebSocket 可以很好的降低服务器负载、节省带宽资源并提供实时数据传输。但是,由于WebSocket本身没有身份验证机制、

    2024年02月09日
    浏览(40)
  • BS问题:k8s部署Nacos Could not resolve placeholder ‘NACOS_AUTH_IDENTITY_KEY‘ in value “${NACOS_AUTH_IDENT

    官网文档2.X Kubernetes Nacos Nacos镜像: nacos/nacos-server:latest 我按照官方文档执行到 验证Nacos节点启动成功  然后pods一直重启,查看pod日志   这个参数怎么会少呢? 启动pod的Yaml文件 尝试修改配置文件增加环境变量env: -name: NACOS_AUTH_IDENTITY_KEY   value: serverIdentity 但是依然无效 上面

    2023年04月11日
    浏览(38)
  • python Requests添加Auth和Cert

    最近通过postman发起另外一个项目的请求,鉴权较为复杂,首先需要设置cert,postman中设置如下: 需要设置basic auth的参数 然后将接口返回的token放入auth的bearer token中。 实际使用时发现使用postman的数据驱动功能较为麻烦,而且不利于对测试结果日志采集,于是通过requests实现该

    2024年02月12日
    浏览(37)
  • elasticsearch-5.6.15集群部署,如何部署x-pack并添加安全认证

    目录 一、环境 1、JDK、映射、域名、三墙 2、三台服务器创建用户、并为用户授权 二、配置elasticsearch-5.6.15实例 1、官网获取elasticsearch-5.6.15.tar.gz,拉取到三台服务器 2、elas环境准备 3、修改elasticsearch.yml配置 4、修改软、硬件线程数 5、修改最大连接  6、修改jvm内存 7、所有节

    2024年01月22日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包