在本主题中,您将了解API网关身份验证,设置密钥身份验证插件以及添加使用者。 如果您根据入门指南学习,请确保已完成“Kong入门指南 - 通过代理缓存提高性能 ”。 什么是身份验证?API网关身份验证是控制允许使用您的API传输的数据的重要方法。基本上,它使用一组预定义的凭据来检查特定使用者是否有权访问API。 Kong Gateway有一个插件库,这些插件提供了实现API网关身份验证的最广为人知和使用最广泛的方法的简单方法。以下是一些常用的:
身份验证插件可以配置为应用于Kong Gateway内的服务实体。反过来,服务实体与它们表示的上游服务是一对一映射的,从本质上讲意味着认证插件直接应用于那些上游服务。 为什么要使用API网关身份验证?启用身份验证后,除非客户端首先成功进行身份验证,否则Kong Gateway不会代理请求。这意味着上游(API)不需要对客户端请求进行身份验证,也不会浪费用于验证凭据的关键资源。 Kong Gateway可以查看所有身份验证尝试(成功,失败等等),从而可以对这些事件进行分类和控制,以证明适当的控制措施已经存在并实现合规性。身份验证还使您有机会确定如何处理失败的请求。这可能意味着仅阻止请求并返回错误代码,或者在某些情况下,您可能仍希望提供有限的访问权限。 在此示例中,您将启用密钥验证插件。API密钥身份验证是进行API身份验证的最流行的方法之一,可以实现以根据需要创建和删除访问密钥。 有关更多信息,请参见什么是API网关身份验证?。 设置密钥认证插件1.在端口上调用Admin API 8001并配置插件以启用密钥身份验证。对于此示例,将插件应用于您创建的/ mock路由。 使用cURL:
由于添加了密钥认证,因此您将无法访问它:
在Kong代理请求此路由之前,它需要一个API密钥。对于此示例,由于安装了密钥身份验证插件,因此需要首先创建具有关联密钥的使用者。 设置使用者和凭证
使用cURL:
使用cURL:
结果:
现在,您已经为使用者提供了API密钥,以访问该路由。 验证密钥验证要验证密钥身份验证插件,请使用密钥值为的标头再次访问模拟路由。apikeyapikey 使用cURL:
您应该得到一条HTTP/1.1 200 OK消息作为回应。 (可选)禁用插件如果您按照主题逐个遵循此入门指南,则在以后的所有请求中都需要使用此API密钥。如果您不想一直指定密钥,请在继续操作之前禁用插件。
使用cURL:
输出:
来源:https://www./content-4-703751.html
|
|