アプリケーション リンクの OAuth セキュリティ
OAuth のセキュリティ モデル
アトラシアンのアプリケーション リンクでは 2 つの OAuth セキュリティ モデルを使用できます。
OAuth 認証 | 偽装を伴う OAuth | |
---|---|---|
説明 |
|
|
メリット |
|
|
要件 |
|
|
接続先が信頼済みである場合を除き、OAuth を使用して非アトラシアン アプリケーションにリンクすることは推奨されません。アプリケーション リンクを使用して接続されたアプリケーションは OAuth を使用してユーザーになりすますことができるため、接続先のアプリケーションの潜在的なセキュリティ リスクになります。サーバーが攻撃された場合、そのサーバーとリンクされたサーバーのデータが脅威に晒されます。
OAuth 認証
OAuth 認証はユーザーがリモート アプリケーションにログインするようにリダイレクトします。その後、ユーザー用に生成されたトークンが、ローカル アプリケーションから生成されたリクエストの認可に使用されます。リクエストを処理するリモート アプリケーションは、リモート アプリケーションにログインしたユーザーのアカウントのアクセス権限を使用します。
一般的なシナリオには以下が含まれます。
- 一連の同じユーザーを共有しない 2 つのアプリケーション間にアプリケーション リンクをセットアップする場合。
- パブリック サインオンが許可されるようになったアプリケーションへのリンクや、共有ユーザーベースで以前に構成されたリンクを引き続き使用したい場合。アプリケーション リンクを編集する際に、[OAuth (偽装)] を [OAuth] に変更して、アプリケーション リンクを更新することができます。
詳細な手順については、このページの「既存のリンクの更新」をご参照ください。
偽装を伴う OAuth
アトラシアンの偽装を伴う OAuth により、アトラシアン アプリケーション間での緊密な連携のメリットをユーザーに簡単に提供できます。
- ユーザーは他のアプリケーションで自動的に認証され、リクエストの認可を求められません。
- ユーザーには、自身が表示権限を持つ情報のみが表示されます。
偽装認証は、現在ログイン中のユーザーに代わりリクエストを行います。
アトラシアンの偽装を伴う OAuth は、アトラシアンのアプリケーション間のアプリケーション リンクにのみ使用できることにご注意ください。また、2 つのアプリケーションが同じユーザーベース (通常は LDAP を使用した外部ディレクトリで管理) を共有している場合にのみ使用する必要があります。
一般的なシナリオは以下のとおりです。
- アプリケーション リンクをセットアップしたが、ユーザーが引き続き定期的に認証を行う必要がある場合。これはアプリケーション リンクが同じユーザーベースを共有しないように設定された場合に発生することがあります。これらのアプリケーションが同じユーザーベースを共有しない場合、アプリケーション リンクを編集する際に、[OAuth (偽装)] を選択してアプリケーション リンクを更新することができます。
詳細な手順については、このページの「既存のリンクの更新」をご参照ください。
Update an existing link to use OAuth
You may need to update an existing application link to use OAuth authentication when:
- you upgrade an Atlassian application to a version that uses version 5.2, or later, of application links. See the Application links version matrix.
- the existing link uses Trusted Applications authentication, but your team can't see summary information from a developer tool such as Bitbucket Server in the Development panel in Jira Software issues.
- an existing application link uses OAuth, but your team can't see the details dialogs for the Development panel in Jira Software issues.
- you use a plugin that requires the OAuth authentication type.
Here's how to do that in Jira Software, but the process is much the same for other Atlassian server products:
Begin in the local application
Go to the 'Configure Application Links' page in the admin area of the local application.
You may see a DEPRECATED lozenge beside links that need to be updated.
In the 'Edit' dialog, set the local authentication for the link under 'Connections':
次のいずれかを選択します。
- OAuth where both applications have different userbases.
- OAuth (impersonation) if both applications share the same userbase, typically managed with an external directory using LDAP.
Make sure that that the authentication matches for the local and remote ends of both the incoming and outgoing directions.
Click Save changes.
Now, in the remote application
Go to the 'Configure Application Links' page in the admin area of the remote application. Choose the instructions column here that matches the UI you see (they both achieve the same result):
In the 'Edit' dialog, set the local authentication for the link under 'Connections':
次のいずれかを選択します。
- OAuth where both applications have different userbases.
- OAuth (impersonation) if both applications share the same userbase, typically managed with an external directory using LDAP.
Make sure that that the authentication matches for the local and remote ends of both the incoming and outgoing directions.
Click Save changes.
In the 'Configure' dialog, click Outgoing Authentication and then the OAuth tab:
Now, select Enable 2-Legged OAuth, assuming that the applications have different userbases.
Optionally, select Enable 2-Legged OAuth with impersonation, if both applications share the same userbase, typically managed with an external directory using LDAP.
[更新] をクリックします。
Now, click Incoming Authentication and then the OAuth tab:
Now, select Enable 2-Legged OAuth, assuming that the applications have different userbases.
Optionally, select Enable 2-Legged OAuth with impersonation, if both applications share the same userbase.
[更新] をクリックします。
注意:
Users who can see summarized data in the Jira Software Development panel may not have permission to see all the information that contributed to those summaries and that is visible in the details dialogs (for example, for branches, commits and pull requests). That is, the details dialogs respect the access permissions that users have in the connected applications.
Your team members must have the 'View Development Tools' permission in Jira Software to see the Development panel for an issue.
Application links between Jira Software and Atlassian developer tools (Bitbucket Server, Bamboo, Crucible, Fisheye) must have Trusted Applications and Basic Access authentication disabled.
If you run an application on port 443, you must use a valid SSL certificate (which is not self-signed) to get the full functionality available.