SAML single sign-on for Atlassian Data Center applications
セキュリティ アサーション マークアップ言語 (SAML) は、サービスに対し、アイデンティティ プロバイダー (IdP) との認証データの交換を許可する XML ベースのデータ形式です。最も一般的な使用事例は、ユーザーに対し、同じ認証情報 (通常はユーザー名とパスワード) を使用して、複数のソフトウェア アプリケーションへのサインインを許可することです。これを、シングルサインオン (SSO) と言います。
アトラシアンでは、Atlassian Server と Data Center のアプリケーションが IdP に接続してユーザーに SSO を提供できるようにする、SSO for Atlassian Server and Data Center アプリを提供しています。
このページでは、次の製品で利用できる最新の SSO 機能を説明します。
- Jira Software Data Center 8.15 以降
- Bitbucket Data Center 7.12 以降
- Confluence Data Center 7.12 以降
- Bamboo Data Center 8.1 以降
以前のバージョンまたは Server 製品では、機能が制限される場合があります。ご利用の SSO アプリをアップグレードできるかどうかを確認するか、管理の「SSO 2.0」で SSO の機能を見つけます。
SSO for Atlassian Server and Data Center は認証のみを処理します。アプリケーション アクセスやその他の必要な認証 (ユーザーが適切なグループ/ロールに所属して、必要な権限を持っていることの確認など) は、ユーザー ディレクトリやアプリケーション自体で設定する必要があります。
サポートされるアイデンティティ プロバイダー
SSO for Atlassian Server and Data Center は、HTTP POST バインディングによって SAML 2.0 Web ブラウザー SSO プロファイルを実装する任意のアイデンティティ プロバイダーと連携させる必要があります。または、認証を Crowd に委任できます。
現在、次のアイデンティティ プロバイダー (IdP) でテストを実行しています。
- Microsoft Azure Active Directory
- Microsoft Active Directory (ADFS 3.0 を使用)
- Bitium
- Okta
- OneLogin
- PingIdentity
シングルサインオンのセットアップ
シングル サインオン (SSO) のセットアップ前に、ユーザーが Crowd を使用して Jira にログインするのか、選択したアイデンティティ プロバイダーにログインするのかを決める必要があります。その後、ユーザーにシングル サインオン (SSO) を提供するために、Data Center と IdP を設定する必要があります。
アイデンティティ プロバイダーのセットアップ
アプリケーションで SSO を提供する場合は、そのアプリケーションをアイデンティティ プロバイダーに追加する必要があります。正確なプロセスは IdP に応じて異なりますが、通常は次が必要です。
- IdP で "アプリケーション" を定義します。
- アプリケーションに関するデータ (アプリケーションの認証方法画面でアクセスできるデータを含む) を入力します。
- IdP のユーザーの NameID 属性が、アトラシアン アプリケーションでユーザー名に設定されていることを確認します。
- アプリケーションを使用する適切なユーザー権限を提供します。
セットアップ プロセスの最後に、IdP から、Atlassian アプリケーションの構成に必要なデータ セットが提供されます。
Atlassian アプリケーションの SAML SSO を設定する
- [認証方法] 画面を開くには、次の手順に従います。
- Jira アプリケーションの場合は、 > [システム] > [認証方法] の順に選択します。
- Bamboo の場合は、 > [セキュリティ] > [認証方法] の順に選択します。
- Bitbucket の場合は、 > [アカウント] > [認証方法] の順に選択します。
- Confluence の場合は、一般設定] > [認証方法] の順に選択します。 > [
- [設定を追加] を選択します。
[認証方法] メニューで [SAML シングル サインオン] を選択します。
設定に一意の名前を作成します。
次の SAML SSO 設定を行います。
設定 詳細 シングルサインオン発行者
この値は、SAML 設定の一部として IdP によって提供されます。「エンティティ ID」と呼ばれることもあります。
発行者は、アプリケーションが認証リクエストを承認することになる IdP です。
アイデンティティ プロバイダー シングルサインオン URL
この値は、SAML 設定の一部として、IdP によって提供されます。
ログイン時にユーザーがリダイレクトされる URL を定義します。
X.509 証明書
この値は、SAML 設定の一部として IdP によって提供されます。「サインイン証明書」と表されることもあります。通常、キーは "-----BEGIN CERTIFICATE-----" で開始します。
これには、受信したすべての SAML 認証リクエストの発行元がお使いの IdP であることを検証するために使用するパブリック キーが含まれます。
ユーザーのログイン情報を記録する 選択すると、ログイン情報が保存されるため、ユーザーは自動的にログインされます。 ユーザー名のマッピング
IdP からの属性。ユーザーを一意に識別して Jira のユーザー名にマッピングできます。たとえば、${NameID} と入力すると、IdP からのこの属性の値がユーザー名として使用されます。IdP ドキュメントで属性のリストをご確認ください。
次の情報は「認証方法」画面で提供されて、IdP の設定に必要となります。これらのリンクをアイデンティティ プロバイダーにコピー & ペーストします。
設定 詳細 アサーション コンシューマー サービス URL IdP が SAML 認証リクエストを返す先となる URL です。
オーディエンス URL (エンティティ ID) IdP が SAML 認証リクエストを準備する URL です。
次の設定はオプションで、自分の用途に合わせて設定できます。
設定 詳細 JIT プロビジョニング [アプリケーションへのログイン時にユーザーを作成] が選択されている場合は、SSO 経由で Atlassian Data Center アプリケーションにログインすると、ユーザーが自動で作成されて更新されます。詳細については「JIT ユーザー プロビジョニング」をご参照ください。
SAML SSO の動作 [ユーザー ログインを記憶] が選択されている場合は、ユーザーのログイン情報が記憶されるため自動でログインします。
顧客のログインを含める (Jira Service Management のみ) 選択されている場合は、カスタマー ポータルによる Jira Service Management の顧客のすべてのログインは、設定済み IdP にリダイレクトされます。未選択の場合、顧客はカスタマー ポータルからログインする必要があります。 ログイン ページの設定 [ログイン ページに IdP を表示] が選択されている場合は、ログイン ページにアイデンティティ プロバイダーが表示されます。 - [設定を保存] を選択します。
アプリケーションと IdP の両方を構成したら、SSO を使用する準備が整います。
べスト プラクティス
- 認証プロセスのセキュリティとプライバシーを保証するには、Atlassian アプリケーションと IdP の両方が HTTPS プロトコルを使用して互いに通信し、設定されたアプリケーションのベース URL が HTTPS のものであることをご確認ください。
- SAML 認証リクエストは、限られた回数のみ有効です。アトラシアン アプリケーションを実行しているサーバーの時刻が、IdP と同期されていることをご確認ください。
- アトラシアン アプリケーションのユーザーやグループが User Directories によって設定されている場合は、通常、IdP とアトラシアン アプリケーションの両方で同じ LDAP ディレクトリをユーザーのソースとして使用することをお勧めします。ユーザーは SSO によってログインする前に、ユーザー ディレクトリ内に存在している必要があります。
トラブルシューティング
SAML 認証の選択に失敗した、または IdP でログインできない場合は、auth_fallback 機能によって SAML 認証を回避できます。
- 認証エラーが発生した場合、ユーザーには、うまくいかなかった点に関する基本的な詳細のみが表示されます。セキュリティ上の理由から、元となる問題に関する詳細は表示されません。アプリケーション ログで問題の原因を確認する必要があります。
- IdP によってエラーが表示される場合もあります。このような場合は、アトラシアン サポートではなく、IdP によって提供されたサポートやツールを使用する必要があります。
- SAML をプライマリ認証として使用していて、アプリケーションで CAPTCHA を有効にしている場合は、HTTP 基本認証を使用しているユーザー (REST リソース コール、Bitbucket での Git HTTPS の使用など) が誤ったパスワードを規定回数を超えて入力すると、ロックされる可能性があります。このような場合、管理者はユーザー リスト画面でユーザーの CAPTCHA をリセットする必要があります。
エラー ページにスタック トレース情報を表示させるには、次のフラグを使用します。
-Datlassian.darkfeature.atlassian.authentication.include.stacktrace.in.error.messages=true