首页 百科知识 范文大全 经典语录
当前位置: 首页 > 百科知识 >

授权意思是什么(为什么我们需要授权和认证?🔑)

我们生活在一个数字数据正成为越来越有价值的资产的时代,随之而来的是对隐私和安全的需求。 授权和身份验证是两种基本的安全措施,使我们能够保护我们的数据并确保只有经过授权的个人才能访问它。 在本文中,我们将讨论为什么需要授权和身份验证、不同类型的授权和身份验证方法,以及它们如何应用于 API Tester 移动应用程序。

什么是授权和认证?

授权和认证是计算机安全中两个截然不同的概念。

授权是确定个人是否有权访问系统或资源的过程。 API 授权保证客户端请求可以安全访问数据。 这可能需要验证请求发起者的身份,以及他们是否有权查看或更改相关数据。 如果您正在构建 API,则有许多不同的身份验证模型可用。 如果您要集成第三方 API,API 提供商将概述必要的授权。

身份验证涉及验证个人或系统的身份,以确保他们与他们声称的身份相符。 授权和身份验证协同工作,为保护数据提供安全的环境,确保只有授权的个人才能访问它。 出现一个问题:服务器如何识别谁可以访问他们声称的内容? 身份验证作为客户端通过 API 访问服务器资源的标记。

授权和认证类型

有几种类型的授权和身份验证方法可用于保护数据。 最常见的类型是:

1. OAuth 访问令牌用于授权对用户数据进行有限访问的请求。 访问令牌在用户通过服务进行身份验证后颁发给用户,用于访问受保护的资源。 OAuth 的实现可能更复杂,但它提供了更高级别的安全性并且得到了 API 的广泛支持。

2. API Key 是一个唯一标识符,用于授权对 API 的请求。 它通常用于保护敏感数据并防止未经授权的访问。 执行 API 请求时,客户端必须提供 API 密钥作为令牌。 查询字符串可以包含键。

3. HTTP 基本认证。 这种类型的身份验证用于保护 Web 应用程序和 Web 服务。 它要求用户提供用户名和密码才能访问该应用程序。 它实施起来很简单,但不是很安全,因为凭据以纯文本形式发送。

4. HMAC:Hash-based Message Authentication Code 是一种数字签名方法,可以重用SHA-1和MD5等消息摘要算法,并提供可靠的数据完整性协议机制。 HMAC 已被选为 Internet 协议或 IP 所需的安全实现,因为它用于在安全套接字层协议和 SSL 证书中安全地加密纯文本。

5. 用户认证。 这是最基本的身份验证形式,用户必须提供用户名和密码才能访问系统或资源。 这种类型的身份验证通常用于保护 Web 应用程序、在线帐户和其他敏感数据。

6. OAuth 1.0 和 2.0 是客户端应用程序代表用户从第三方 API(例如服务提供商)访问数据的一种方式。 这允许用户授权客户端应用程序访问他们的数据,而无需共享他们的登录凭据,例如他们的用户名和密码。 为此,客户端应用程序首先需要从 API 获取访问令牌。 然后,此访问令牌用于验证客户端应用程序向 API 发出的未来请求。

7. 当客户端应用程序无法安全地存储客户端机密时,或者当授权码将在与最初发出请求的设备或系统不同的设备或系统上交换访问令牌时,使用授权码授予类型。

8. AWS 签名是一种对向 Amazon Web Services (AWS) API 发出的请求进行身份验证的方法。 它用于确保对 AWS API 发出的请求经过授权和身份验证,并且可以将请求追溯到发出请求的用户。

API Tester 应用程序中的授权和身份验证如何工作

API Tester 移动应用程序是一款易于使用的免费工具,用于测试和调试 API。 它支持任何类型的 API,包括 REST、GraphQL、WebSocket、SOAP、JSON RPC、XML、HTTP、HTTPS。 您可以在请求设置选项卡中输入授权详细信息。 API 中 Auth 所需的数据可以在标头和正文中。 API 测试器可以自动检测并使用所选类型的方法进行响应。 变量和集合用于确定具有安全性和安全性的 Auth。

API Tester 移动应用程序为测试 API 提供了一个安全的环境,并包括多种身份验证方法以帮助保护敏感数据:用户身份验证、OAuth 访问令牌、API 密钥、HTTP 基本身份验证。

如何使用 API Tester App 测试身份验证和授权。

关于Authentication的讲解,我们使用GitHub API获取用户信息。 它为我们提供了实时数据。

首先,您需要单击“创建新请求”或右上角的 + 按钮来启动 Graph QL 请求。

您可以在其他功能下的新选项卡中轻松看到 Graph QL 选项。 单击它将带您进入更多选项。

在下一个屏幕上,您可以看到一个未命名的 GraphQL 请求。 您需要提供 API URL 并将其粘贴到以 HTTPS 开头的部分。 在我们的例子中,将使用这个 URL:
https://api.github.com/graphql。

Github API 需要身份验证。 在 Headers 部分,您可以看到 OAuth 选项,因此您需要在此处提供访问令牌。

让我向您展示如何生成身份验证令牌,只需按照以下步骤操作:

1)登录你的GitHub账号,进入“设置”页面。

2) 在“设置”页面,点击“开发者设置”选项卡。

3) 在“个人访问令牌”部分下,单击生成新令牌(经典)。

4) 在“备注”字段中,为您的代币输入一个名称(例如,“我的代币”)。 这将帮助您记住令牌的用途。

5) 选择令牌的范围。 范围决定了允许令牌访问的内容。 您可以根据需要选择一个或多个可用选项。

6) 点击“Generate token”按钮创建令牌。

7) 将令牌复制到剪贴板。 它不会再次显示,因此请确保将其保存在安全位置。

而已! 您现在可以使用个人访问令牌通过 GitHub API 进行身份验证或使用命令行对您的帐户执行操作。 请记住,个人访问令牌就像密码一样,因此您应该以相同的安全级别对待它们。

现在我们必须转到 Body 部分并指定一个查询来获取您的特定类型的数据。 比如我们获取一个Github账号的id信息。 因此,使用 Github 登录的相应查询被写入 body 选项卡中,如下面的屏幕截图所示。

{
  user(login:"mariamarshmallow")
  {
  login
  id
  }
}

身份验证后,Github 将发送一个 200 响应代码,其中包含有关用户、用户名和 ID 的信息。 您授予访问权限的令牌范围称为授权。

基本认证

基本身份验证通常与 HTTP 协议结合使用,它是万维网的基础。 当客户端向服务器发出请求时,服务器发回一个响应,其中包含一个包含身份验证质询的标头字段。 然后,客户端发送第二个请求,其中包含一个标头字段,其中包含以 base64 编码的用户名和密码。 服务器检查凭据,如果它们有效,则发回包含所请求资源的响应。

要测试基本身份验证,让我们使用带有此 URL 的 Postman API:
https://postman-echo.com/basic-auth。 这是一个使用“用户名”和“密码”的开放 API。

打开 API Tester 应用程序,创建一个新的 GET 请求,然后粘贴上面的 URL。

接下来在 Auth 部分中,输入用于身份验证的 API 的用户名和密码。

单击蓝色播放按钮后,您可以看到带有 200 响应代码“已验证”的响应屏幕。

如果您不输入身份验证详细信息,则在响应页面上会显示一条消息,其中包含响应代码 401“Restricted”。

这就是我们如何使用 API Tester 移动应用程序通过基本身份验证测试 API。

API 密钥认证

是服务端识别并授权客户端访问API资源的一种方式。

要使用 API 密钥身份验证,客户端必须在请求标头中或作为查询参数发送 API 密钥。 然后服务器将验证 API 密钥,如果有效,则允许客户端访问 API 资源。

从 API 提供商处注册一个 API 密钥。 在您的 API 请求中,将 API 密钥添加为查询参数或添加到请求标头中。 使用 API Tester 应用发出 API 请求。 服务器将验证 API 密钥,如果有效,则允许客户端访问 API 资源。

下面是一个示例,说明如何使用 API Tester 应用程序在 GET 请求中使用 API 密钥身份验证。

创建一个新的 GET 请求并在请求框中输入 API URL(例如,“https://api.thecatapi.com”)。 在查询部分,添加限制参数和 API 密钥参数(例如“limit=10&api_key=YOUR_API_KEY”)。

单击“播放”按钮发送请求。 如果 API 密钥有效,您将收到包含所请求信息的响应。

保持 API 密钥的秘密和安全非常重要,因为它允许访问 API 资源。

确保仅在受信任的环境中使用它,不要与他人共享。

结论

授权和身份验证是至关重要的安全措施,使我们能够保护我们的数据并确保只有经过授权的个人才能访问它。 在本文中,我们讨论了为什么需要授权和身份验证、不同类型的授权和身份验证方法,以及它们如何应用于 API Tester 移动应用程序。 通过实施有效的授权和认证措施,我们可以保护我们的数据并防止未经授权的访问。 定期审查和更新我们的安全措施非常重要,以确保它们保持有效并保护我们的数据免受潜在威胁。

相关文章