首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用证书进行身份验证时的MISSING_AUTHORIZATION_HEADER

使用证书进行身份验证时的MISSING_AUTHORIZATION_HEADER
EN

Stack Overflow用户
提问于 2019-01-31 23:20:26
回答 1查看 480关注 0票数 0

我正在尝试使用证书对API进行身份验证。

我有一个pfx文件,我需要转换为所需的证书。

为了生成公共证书,我使用了以下命令:

代码语言:javascript
运行
复制
openssl pkcs12 -in ~/Downloads/file.pfx -nodes -clcerts -nokeys | openssl x509 -out public.crt

此公共证书是在API端上传的。

现在,在客户端,我需要使用curl连接到api

因此,首先我使用以下命令生成了私钥:

代码语言:javascript
运行
复制
openssl pkcs12 -in ~/Downloads/file.pfx -nodes -nocerts | openssl rsa -out private_new.key

现在,我正在尝试使用以下命令连接到API:

代码语言:javascript
运行
复制
curl -I -k --key ./private_new.key --cert ./public.crt https://<API-END-POINT>/foo/bar

但在我得到的回应中:

代码语言:javascript
运行
复制
HTTP/1.1 401 Unauthorized
Date: Thu, 31 Jan 2019 00:24:43 GMT
Server: Foo
X-IDS-ID: 4E178F65-78F2-4CB9-B31A-8D6288F854C5
WWW-Authenticate: Basic realm=CPS Rest Services
X-message-code: MISSING_AUTHORIZATION_HEADER
Content-Type: text/html
Vary: X-CSP-STRIP
X-IDS-Node: idp15
X-IDS-Pool: green
X-IDS-Project: prod
X-IDS-Landscape: eu-nl-1
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000;includeSubDomains;preload
Cache-Control: private,no-cache,no-store

我是不是漏掉了什么?我是新手,所以我不确定我可能错过了什么。

EN

回答 1

Stack Overflow用户

发布于 2019-02-01 01:20:05

代码语言:javascript
运行
复制
HTTP/1.1 401 Unauthorized
...
WWW-Authenticate: Basic realm=CPS Rest Services
X-message-code: MISSING_AUTHORIZATION_HEADER

API要求在您的请求中包含适当的Authentication头,但您没有发送。不清楚内容应该是什么,但通常会有一些用户名和密码一起编码。

对于您尝试访问的API一无所知,因此无法获得有关如何正确使用它的帮助:

  • 具体地说,它根本不知道站点是否具有使用客户端证书的身份验证。
  • 如果它支持客户端证书,那么它可能会发现你自己生成的证书不够充分,因为没有办法验证谁是这个证书的幕后黑手。在这种情况下,它可能会尝试使用基本身份验证作为失败的客户端证书的回退。
  • 除了客户端证书外,站点还可能需要基本身份验证。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54463776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档