API通过授权来确保客户端请求安全地访问数据。主要包括:发送者身份验证和访问权限认证。
 
Postman中Authorization授权机制主要包括:下面10种
Inheriting auth继承认证
No auth 无授权认证
Bearer Token令牌
Basic auth基本授权认证
Digest auth
OAuth 1.0
OAuth 2.0
Hawk authentication
AWS Signature
NLTM authentication
 
 

1、Inheriting auth继承认证

如果将请求添加到集合和文件夹中,则可以指定身份验证详细信息以在整个组中重复使用。
选择一个集合或文件夹集合邮递员应用程序的左侧。使用溢出按钮(…)打开选项,然后选择“ 编辑”以配置集合或文件夹详细信息。
默认情况下,集合或文件夹中的请求将继承父项的身份验证,这意味着它们将使用您在文件夹或集合级别指定的身份验证。
 
要针对单个请求更改此设置,请在请求的“ 授权”选项卡中进行其他选择。
 
 

2、Bearer Token令牌

Bearer Token通过使用访问密钥对请求进行身份验证。令牌是文本字符串,包含在请求标头中。在请求“Authorization ”选项卡中,从“TYPE”下拉列表中选择“Bearer Token”。在“ Token ”字段中,输入您的API密钥值,也采用变量引用方式,便于管理和安全保护。
 
Postman将Token值附加到请求头中,加上“ Bearer ”上,如下所示:
 
 

3、Basic auth基本授权认证

Basic auth基本授权认证随请求一起发送经过验证的用户名和密码。在请求“Authorization ”选项卡中,从“TYPE”下拉列表中选择“Basic auth”。
在“ Username”和“ Password”字段中输入您的API登录信息,也采用变量引用方式,便于管理和安全保护。
在请求头中,您将看到Authorization标头将向API传递一个代表您的用户名和密码值的Base64编码的字符串,该字符串附加到文本“ Basic”中,如下所示:
 
 
 

4、Digest auth摘要授权

Digest auth摘要授权中,首先客户端向服务器发送请求,服务器返回客户端:nonce和realm;客户端将用户名、密码、服务端返回的nonce值、HTTP请求方法和参数等组合后进行MD5运算,把计算到的摘要信息发送给服务器。
 
服务器使用传递的数据来生成加密的字符串,并将其与您发送的字符串进行比较,以认证您的请求。
默认情况下,集合或文件夹中的请求将继承父项的身份验证,这意味着它们将使用您在文件夹或集合级别指定的身份验证。要针对单个请求更改此设置,请在请求的“ 授权”选项卡中进行其他选择。
 
 

5OAuth 1.0

OAuth 1.0允许客户端应用程序访问第三方API提供的数据。例如,作为服务的用户,您可以授予另一个应用程序对该服务的数据访问权限,而无需暴露您的登录详细信息。
 
在请求“Authorization ”选项卡中,从“TYPE”下拉列表中选择“OAuth 1.0”。
 
输入:Consumer Key, Consumer Secret, Access Token和Token Secret
“Add authorization data to”:“Request Body/Request URL,授权信息通过Body(POST请求)或者URL(GET请求)发出;“Request Headers”授权信息通过请求头发出。
 
 
 

6OAuth 2.0

OAuth 2.0认证流程:
客户端应用程序请求用户授权对其数据的访问。
如果用户授予访问权限,则应用程序然后向服务提供商请求访问令牌,并传递用户的访问权限和身份验证详细信息以标识客户端。
服务提供商将验证这些详细信息并返回访问令牌。
客户端使用访问令牌通过服务提供商请求用户数据。
在请求“Authorization ”选项卡中,从“TYPE”下拉列表中选择“OAuth 2.0”。
要请求访问令牌,请点击“Get New Access Token”。
您的请求具有令牌值后,它将显示在请求标头中。
 
输入您的客户端应用程序的详细信息,以及服务提供商提供的所有身份验证详细信息。这使您可以在Postman内部复制应用程序身份验证流,以测试经过身份验证的请求。
 
OAuth 2.0 授予类型:Authorization code, Implicit, Password credentials和Client credentials。
 
 

7、Hawk authentication身份验证

Hawk authentication身份验证使用部分密码验证来授权请求。在请求“Authorization ”选项卡中,从“TYPE”下拉列表中选择“Hawk authentication”。
 
在Hawk Auth ID,Hawk Auth Key和Algorithm字段中输入您的详细信息。您可以选择设置高级详细信息,但必要时Postman会尝试为其生成值。
 
Hawk身份验证参数如下:
Hawk身份验证ID:您的API身份验证ID值。
Hawk身份验证密钥:您的API身份验证密钥值。
Algorithm:用于创建消息认证码(MAC)的哈希算法。
“ADVANCED”参数:
用户:用户名。
Nonce:客户端生成的随机字符串。
ext:与请求一起发送的任何特定于应用程序的信息。
app:凭据与应用程序之间的绑定,以防止攻击者使用发布给他人的凭据。
dlg:颁发证书的应用程序的ID。
Timestamp:服务器用来防止在时间窗口之外进行重放攻击的时间戳。
 
 

8、AWS Signature签名授权

AWS是Amazon Web Services请求的授权工作流程。AWS使用基于键控HMAC(哈希消息身份验证代码)的自定义HTTP方案进行身份验证。在请求“Authorization ”选项卡中,从“TYPE”下拉列表中选择“AWS Signature”。
当您选择AWS Signature auth方法时,Postman将在请求标头中添加Authorization和。X-Amz-Date
AWS Signature参数如下:
AWS Region:接收请求的区域(默认为us-east-1)。
Service Name:接收请求的服务。
Session Token:仅在使用临时安全凭证时才需要。
 
 

9、NLTM authentication

Windows质询/响应(NTLM)是Windows操作系统和独立系统的授权流程。在请求“Authorization ”选项卡中,从“TYPE”下拉列表中选择“NLTM authentication”。
 
输入用于NTLM访问的“Username”和“Password”(使用变量以避免直接输入值)。
 
您可以选择指定高级参数,但必要时Postman会尝试自动完成这些参数。默认情况下,您的请求将在提取第一次收到的数据后第二次运行-您可以通过选中此复选框来禁用它。
 
NTLM身份验证的高级参数如下:
Domain:要对其进行身份验证的域或主机。
Workstation:PC的主机名。