当前位置: 首页 > news >正文

kong插件详解之Basic Authentication

1.3、Basic Authentication

支持基于用户名和密码的基本认证,通常用于简单的身份验证场景。

1.3.1、环境准备

1.3.1.1、创建一个服务,basic-auth-service
curl -i -s -X POST http://localhost:8001/services \
  --data name=basic-auth-service \
  --data url='http://localhost:8080'

http://localhost:8080 端口是运行一个Go的服务,请求/hello将返回对应的数据。

将会返回数据:

Hello, kong,I'm runing at 8080!
1.3.1.2、创建对应的路由,basic-auth-route
curl -i -X POST http://localhost:8001/services/basic-auth-service/routes \
  --data 'paths[]=/basic-auth' \
  --data name=basic-auth-route
1.3.1.3、测试环境
[root@iZbp1ivu3yaedumdy0va2vZ kong]# curl http://localhost:8000/basic-auth/hello
Hello, kong,I'm runing at 8080!

看到如下输出,证明已经环境已经搭建OK。

1.3.2 插件安装

安装basic authentication插件

1.3.2 .1、服务范围内安装
curl -X POST http://localhost:8001/services/basic-auth-service/plugins \
   --header "accept: application/json" \
   --header "Content-Type: application/json" \
   --data '
   {
 "name": "basic-auth",
 "config": {
   "hide_credentials": true
 }
}'

1.3.2 .2、route范围内按照
curl -X POST http://localhost:8001/routes/basic-auth-route/plugins \
   --header "accept: application/json" \
   --header "Content-Type: application/json" \
   --data '
   {
 "name": "basic-auth",
 "config": {
   "hide_credentials": true
 }
}'
1.3.2.3、全局范围安装
curl -X POST http://localhost:8001/plugins/ \
    --header "accept: application/json" \
    --header "Content-Type: application/json" \
    --data '
    {
  "name": "basic-auth",
  "config": {
    "hide_credentials": true
  }
}
    '

1.3.3、测试插件效果

如果开启了basic-auth插件,直接访问。将会出现如下错误信息:

[root@iZbp1ivu3yaedumdy0va2vZ ~]# curl http://localhost:8000/basic-auth/hello
{
  "message":"Unauthorized",
  "request_id":"c6301004ca5d8e72f932746c08a0ce44"
}
  • 创建用户
curl -X POST http://localhost:8001/consumers -d username=alex
  • 给用户授予basic auth权限
curl -X POST http://localhost:8001/consumers/alex/basic-auth \
 -d username=alex \
 -d password=secret123
  • 执行访问

    [root@iZbp1ivu3yaedumdy0va2vZ ~]# curl -u alex:secret123  http://localhost:8000/basic-auth/hello
    Hello, kong,I'm runing at 8080!
    
    [root@iZbp1ivu3yaedumdy0va2vZ ~]# echo "alex:secret123" | base64
    YWxleDpzZWNyZXQxMjMK
    [root@iZbp1ivu3yaedumdy0va2vZ ~]# curl http://localhost:8000/basic-auth/hello \
     -H 'Authorization: Basic YWxleDpzZWNyZXQxMjMK'
    Hello, kong,I'm runing at 8080!
    

相关文章:

  • uni-app 学习(一)
  • 算法兵法全略(译文)
  • 图的表示:邻接表和邻接矩阵
  • android launcher拖动图标释放错位
  • 群体智能优化:粒子群算法(PSO)详解与实战
  • 工业物联网平台在设备远程运维中的应用
  • 小米 R3G 路由器刷机教程(Pandavan)
  • Python 调用 DeepSeek API 案例详细教程
  • webpack构建流程
  • untiy3D 让角色动起来,角色动画的使用
  • 常见的系统架构
  • ArcGIS基础知识之ArcMap基础设置——ArcMap选项:数据视图及布局视图选项卡的作用及设置
  • Jetpack Compose初体验
  • 保姆级GitHub大文件(100mb-2gb)上传教程
  • Texas Moves to Regulate AI 德克萨斯州着手规范人工智能
  • 3、《Spring Boot 常见注解详解》
  • 盲注技术获取数据库的表、列和具体数据
  • CZML 格式详解,javascript加载导出CZML文件示例
  • 动手学深度学习11.7. AdaGrad算法-笔记练习(PyTorch)
  • DeepSeek API 调用 - Spring Boot 实现
  • 王毅谈中拉论坛第四届部长级会议重要共识
  • 中国巴西民间推动建立经第三方验证的“森林友好型”牛肉供应链
  • 中保协发布《保险机构适老服务规范》,全面规范保险机构面向老年人提供服务的统一标准
  • 西北大学副校长范代娣成陕西首富?系家庭财富,本人已从上市公司退出
  • 睡觉总做梦是睡眠质量差?梦到这些事,才要小心
  • 青海规范旅游包车行为:不得引导外省籍旅游包车违规驻地运营