2016-09-15 195 views
0

使用Jira rest API的問題。 我想打jira,必須從jira通過java standalone獲取問題,場景。Jira Rest Api問題

我的公司使用Jira與SAML和SSO。如果我直接將jira url https://jira.mycompany.com和基本證書傳遞給jira rest api,它會拋出「peer not authenticated」異常。導致:javax.net.ssl.SSLPeerUnverifiedException:peer not authenticated。當我將鼠標懸停在我公司網站的JIRA鏈接上時,它顯示以下URL。

https://mycompany.com/M2/saml20/logininitial?RequestBinding=HTTPPost&PartnerId=https://jira.mycompany.com/plugins/servlet/samlsso&NameIdFormat=email

有人可以幫助我解決這個問題,如何使用jira rest api? 在此先感謝

回答

0

它是因爲證書。您需要在代碼中提供登錄/訪問URL的密鑰。

我不確定關於java,但我寫了python腳本來繞過證書驗證。以下是代碼片段

import urllib2, base64 
import requests 
import ssl 
import json 
import os 
from pprint import pprint 
import getpass 

UserName = raw_input("Ener UserName: ") 

pswd = getpass.getpass('Password:') 

request = urllib2.Request("https://jira.xxx.com/rest/api/2/project") 

base64string = base64.encodestring('%s:%s' % (UserName, pswd)).replace('\n', '') 
request.add_header("Authorization", "Basic %s" % base64string) 
gcontext = ssl.SSLContext(ssl.PROTOCOL_TLSv1) 
result = urllib2.urlopen(request, context=gcontext) 

JsonGroupdata = result.read() 
jsonToPython = json.loads(JsonGroupdata) 
相關問題