2013-08-09 58 views

Trả lời

2

Trước tiên, bạn cần thêm một liên kết ứng dụng JIRA cho ứng dụng của bạn: https://confluence.atlassian.com/display/JIRA060/Configuring+Application+Links

Đối trường hợp khi ứng dụng truy cập JIRA không phải là ứng dụng web, bạn có thể sử dụng URL tùy ý làm URL ứng dụng, nhưng url đó sẽ được sử dụng để truy xuất biểu tượng ứng dụng khi được hiển thị trong danh sách Liên kết ứng dụng trong giao diện người dùng quản trị của JIRA.

Sau đó, bạn sẽ cần thực hiện "điệu nhảy oauth" để nhận mã thông báo OAuth và bí mật tương ứng của nó. Vui lòng xem ví dụ Atlassian tại đây: https://bitbucket.org/atlassian_tutorial/atlassian-oauth-examples/src

Ví dụ này chủ yếu bao gồm bản thân khiêu vũ, trong khi xác thực sử dụng mã thông báo OAuth + (nhận trong khiêu vũ) được ghi lại ở đây: http://jira.readthedocs.io/en/latest/examples.html#oauth. Tôi hi vọng cái này giúp được.

Ít nhất nó làm việc cho tôi (cũng bằng Python cho trường hợp của tôi). :)

9

Tôi cũng đang sử dụng jira-python. Vì jira-python sử dụng requestsrequests-oauthlib Tôi đã sử dụng cùng một thư viện đó để triển khai điệu nhảy OAuth 1 cần thiết để nhận mã thông báo.

Thứ nhất, thiết lập JIRA:

  1. Tạo RSA public/private cặp khóa (bạn kết thúc với rsa.pubrsa.pem tập tin). Mã Python của bạn sẽ cần quyền truy cập vào khóa riêng rsa.pem.
  2. Định cấu hình ứng dụng JIRA (được thực hiện trong quản trị JIRA trong "Liên kết ứng dụng") với "Xác thực đến" và sử dụng khóa công khai được tạo ở trên. Đây là nơi bạn chỉ định số consumer_key cần thiết bởi jira-python

Tiếp theo, điệu nhảy OAuth. Nó khá đơn giản với OAuth1Session từ requests-oauthlib. Đây là một ví dụ đơn giản (CLI): JIRA Oauth in Python.

Luồng công việc được mô tả trong tài liệu requests-oauthlib: OAuth 1 Workflow.

Vì vậy, để tóm tắt:

  • access_token - Thu được ở phần cuối của OAuth 1 Workflow.
  • access_token_secret - Có được ở cuối luồng công việc OAuth 1.
  • consumer_key - Được chỉ định khi bạn thiết lập "Liên kết ứng dụng" trong quản trị viên JIRA.
  • key_cert - Nội dung của tệp rsa.pem (khóa cá nhân). Khóa công cộng cũng được thêm khi thiết lập "Liên kết ứng dụng" trong quản trị viên JIRA.
+0

Đã hoạt động! Để giúp đỡ nếu ai đó gặp sự cố, hãy sử dụng tùy chọn này để thay đổi tập lệnh được đề xuất trên câu trả lời này: https: //community.atlassian.com/t5/Câu trả lời-Nhà phát triển-Câu hỏi/VerifierMissing-exception-while-doing-Oauth-authentication-with/qaq-p/481575 – gabrieloliveira