Jive REST API使用Basic Auth返回{“code”:401,“message”:“Bad credentials”}

时间:2015-03-31 19:37:12

标签: curl basic-authentication restful-authentication http-status-code-401 jive

这可能不是Jive API特有的,而是一般的基本身份验证。

这不是联合帐户。

我尝试使用cURL向Jive REST API v3发出简单请求:

curl --include --verbose --user {USERNAME}:{PASSWORD} 'https://sandbox.jiveon.com/api/core/v3/search/contents?filter=search(test)'

我也尝试过:

curl -v -u USERNAME "https://sandbox.jiveon.com/api/core/v3/contents?count=100&startIndex=200"

我可以使用我的凭据登录UI(无论如何,我都有"完全访问权限和#34;权利无论如何)。为什么401会被抛出?我的身份验证是否格式错误?

以下是我的示例:

https://developer.jivesoftware.com/rest

以下是相关结果:

Trying 23.221.10.251...
Connected to sandbox.jiveon.com (23.221.10.251) port 443 (#0)
TLSv1.0, TLS handshake, Client hello (1):
TLSv1.0, TLS handshake, Server hello (2):
TLSv1.0, TLS handshake, CERT (11):
TLSv1.0, TLS handshake, Server finished (14):
TLSv1.0, TLS handshake, Client key exchange (16):
TLSv1.0, TLS change cipher, Client hello (1):
TLSv1.0, TLS handshake, Finished (20):
TLSv1.0, TLS change cipher, Client hello (1):
TLSv1.0, TLS handshake, Finished (20):
SSL connection using TLSv1.0 / AES128-SHA
Server certificate:
     subject: OU=Domain Control Validated; OU=COMODO SSL Wildcard; CN=*.jiveon.com
 start date: 2014-06-23 00:00:00 GMT
 expire date: 2015-07-31 23:59:59 GMT
 subjectAltName: sandbox.jiveon.com matched
 issuer: C=GB; ST=Greater Manchester; L=Salford; O=COMODO CA Limited; CN=COMODO SSL CA 2
 SSL certificate verify ok.
Server auth using Basic with user 'USERNAME OMITTED HERE'
GET /api/core/v3/contents?count=100&startIndex=200 HTTP/1.1
Authorization: Basic xxxxxxxxxxxxxxxxxx= (I verified this decoded properly in base64)
User-Agent: curl/7.41.0
Host: sandbox.jiveon.com
Accept: */*

HTTP/1.1 401 Unauthorized

3 个答案:

答案 0 :(得分:3)

为了便于日后排查,还会显示错误 401 Unauthorized , 当Jive实例配置为 SSO登录时,您使用联合用户帐户进行API调用。

  

您无法使用联合用户帐户对API调用进行身份验证。您必须创建一个非联盟的系统'您可以用来验证API调用的帐户。

来源:https://community.jivesoftware.com/thread/273582

答案 1 :(得分:2)

对于遇到这种情况的任何人来说,用户/密码凭据都很好 - 我只是将请求发送到错误的实例https://sandbox.jiveon.com。这适用于从Jive迁移的客户端,我们在UAT实例上提供了用户帐户,但看起来您无法使用此类帐户从沙箱实例接收响应。

将请求发送到https://{OUR JIVE ORG URL}/api/core/v3工作正常。

答案 2 :(得分:-1)

基本身份验证对于帐户中的沙箱jive不再有效。您可以尝试使用Oauth 2.0身份验证来访问jive rest api。

点击此链接可获取有关jive oauth身份验证过程的详细信息。 http://www.codefixup.com/how-to-authenticate-jive-rest-api-using-add-on/

本教程肯定会解决您的问题......