问题标签 [kong]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ubuntu - Kong:未找到 Luajit
我正在尝试开始kong
工作,但是每次运行时kong start
我都会得到一个/usr/local/bin/kong: 3: exec: /usr/local/bin/luajit: not found
,这很奇怪,因为我已经luajit
安装了?
我的/usr/local/bin
包含这些文件:
其他安装kong
过并知道如何通过它的人吗?我已经四处寻找,但没有运气。
如果有任何帮助,我在 ubuntu 14.04 上。
api - 如何将 API 网关与微服务和 JWT 结合使用?
大家下午,
只是想找人仔细检查我的工作。以下是保护微服务的有效方法吗?
前提
将我们的单体应用程序和单体合作伙伴 API 分解为面向特定业务功能的微服务。它们很可能是在弹性 beantalk 上运行在 docker 容器中的小型 expressjs 应用程序,谁知道呢。他们会住在某个地方:)
我正在考虑将Kong作为我的 API 网关,或者使用 AWS API 网关来封装我的微服务的细节。此外,它只是感觉很好。
Kong的JWT 插件将验证 JWT 的签名,然后将customer_id
标头中的签名传递给微服务。我还应该提到,我们也有第 3 方开发人员,他们也将参与到集成的乐趣中。这是我所看到的情况的基本草图:
执行
- 为我们拥有的每个平台和第 3 方开发人员生成“消费者”。(Web 应用程序、移动应用程序以及我们目前拥有的集成合作伙伴。注意:我不希望为每个登录的用户创建消费者。虽然肯定更安全,但这会增加很多工作。另外,如果你弄清楚如何从我的 API 网关中获取秘密我显然还有其他问题)
- 让Kong为我验证请求。有点像门口的保镖,没有授权,只是身份验证。
- 我不需要知道令牌到达微服务后是否有效,我可以使用一些中间件对其进行解码并使用自定义逻辑来决定该用户是否真的应该做他们想做的任何事情。
额外的东西
Kong 有一个不错的访问控制插件。我们的应用程序和移动应用程序将以“上帝”特权运行,但我绝对可以将开发人员锁定在特定的路线和方法上。
撤销 3rd 方访问权限将很容易,撤销最终用户访问权限不会那么简单,除非我愿意通过生成一个新的秘密来一次使所有 JWT 无效。也许我可以将令牌时间限制在 10 分钟左右,并让我们的应用程序检查它们是否已过期,获取新令牌,然后继续处理原始请求。这样我可以在数据库或其他东西中“标记”它们,而不是让 JWT 生成。
SSL 无处不在,JWT 存储在 Web 浏览器中的仅 SSL cookie 中,并且在任何声明中都没有存储敏感信息。
多谢你们。
jwt - 没有创建消费者的 Kong 和 JWT
我目前正在使用 Kong API 网关,我想用它来验证网关上用户的身份验证,并在用户未正确登录时限制对服务的访问。我有一个身份验证服务,它在用户登录时发出 JWT。
我现在想与 Kong 共享 JWT 机密,并将其用于验证已发布的 JWT,以保护需要适当身份验证的服务。
我看了一下这个插件:https ://getkong.org/plugins/jwt/
但似乎这个插件的工作方式与我想要实现的有点不同。为什么我必须创建消费者?我希望我的身份验证服务中只有一个用户数据库,以避免需要同步。似乎这个插件的方法是为让第 3 方利益相关者访问我的 API 而设计的。
任何提示将不胜感激。
api - Kong 在访问 vi Postman 时响应 404
我已经设置了一个 API 和 Kong。我已经成功安装了Kong。事实上,我可以通过 cli 上的 curl 访问我的 API。但是,当我使用我一直使用的 Postman 时,我得到了响应
附言。我是香港新手,所以请多多包涵。
当我卷曲 api...
但是,当我尝试使用 Postman 时,我会收到 404 状态响应。用这个身体
我错过了什么吗?
免责声明:我使用 Postman 是因为我很懒,而且我的客户也大多会使用 Postman。所以不要告诉我改用 curl :)
api - Kong returning 404 for Registered APIS
I have installed Kong successfully and mapped a API by administration services provided by Kong as below:
http://kong:8001/apis
payload:
{
"upstream_url": "http://test.suraj.com:9110/"
"strip_request_path": true
"request_path": "/services_test"
"preserve_host": false
"name": "services_test"
"request_host": "test.suraj.com"
}
I am able to get this API when making get call to http://kong:8001/apis
.
now I am trying to access my API endpoints using kong like:
http://kong:8000/services_test/test.json
its returning 404 " requested resource not found" .
what I am doing wrong? I am not able to access kong's log. can anyone tell me where kong stores log files? Thanks for any help. PS: all URLs are dummy.
oauth-2.0 - 用用户信息交换 OAuth2 访问令牌
我正在尝试为我的应用程序实现 OAuth 身份验证,该应用程序由前端和一堆微服务组成。
我打算使用 - kong,这是我第一次实施 oAuth,但想知道如何交换 access_token 来获取用户信息?
谢谢
docker - Docker 中的 Kong : 在没有 curl 的情况下配置 API 端点
有没有办法在不使用 curl 的情况下在 Kong 中添加 API 端点?我使用 docker-compose 在 docker 容器中启动并运行了 Kong,我希望能够在容器启动时传入配置文件(或你有什么),该文件概述了我想要设置的端点。这可能吗?这是我找到的最接近解决方案的方法:http: //blog.toast38coza.me/kong-up-and-running-part-2-defining-our-api-gateway-with-ansible/
aws-lambda - 自定义 API 访问策略和 API 网关
我需要一些帮助来消除一些疑虑。我一直在玩 Kong 和 Amazon API Gateway,但不明白如何让我的自定义 ACL 与这些 API 网关一起工作。
让我试着用一个例子来解释:
目前:
我将所有 ACL 映射到 API 端点和动词,我从 MySQL DB 中挑选(针对不同的用户组)并将其存储在 redis 服务器中,每个 API 调用检查用户从 redis 的访问权限并允许/禁止端点。
使用 API 网关:
使用 API Gateway,我可以轻松验证用户并传递身份验证令牌,但我找不到将更多数据传递给网关的方法,因此网关可以检查身份验证 + ACL 策略而无需返回身份验证服务器。
Kong 有 ACL 插件,但找不到关于它的正确信息。
Amazon API Gateway 具有自定义授权选项和通过 Lambda 函数传递策略的选项,但同样,我不确定 Lambda 函数是否可以接受我的自定义 ACL。
这里有人遇到过这种问题吗?
authentication - OAuth 2.0 Authorization code Grant中“code”的生命周期
授权码 Grant :我知道该代码是用短期令牌交换真正的长期访问令牌。我已经浏览了Oauth 2.0但找不到此信息,所以在这里询问:
- 代码的生命周期是什么?
- 是不是只能一次性使用?
- 代码可以交换多少次以获得访问令牌?
- 为该代码提供访问令牌后,该代码会发生什么情况?
我在 Kong API gateway 上使用 oAuth 2.0 插件。它使代码在特定时间内保持活动状态,并且到那时可以使用相同的代码生成多个访问令牌。这是预期的行为吗?
感谢您的任何建议。