2026年5月26日

2026年5月26日

WordPressにAtlassian(Jira)アカウントでログインする方法|IdP連携とOAuth 2.0

JiraやConfluenceを使っている会社では、「同じアカウントで社内向けのWordPressにもログインさせたい」という要望がよくあります。方法は大きく2つあります。

  1. 社内のIdP(認証基盤)にAtlassianとWordPressの両方をつなぐ: Microsoft Entra ID・Okta・Google Cloudなどを使っている会社向け。
  2. Atlassianアカウントで直接ログインさせる: Atlassianの OAuth 2.0(3LO)とUser Identity APIを、WordPressのOAuthクライアントプラグインから使う方法。

この記事では、どちらを選ぶかの判断基準と、2の具体的な設定手順を紹介します。Atlassianの仕様とプラグインの機能は、2026年11月時点で公式ドキュメントとWordPress.orgのプラグインページを確認した内容です。対象はAtlassian Cloud(Jira Cloudなど)です。

どちらの方法を選ぶか

観点 1. IdPに両方をつなぐ 2. Atlassianアカウントで直接ログイン
前提 社内にIdPがある Atlassian Cloudのアカウントがある
Atlassian側の準備 Atlassian Guard StandardでSAML SSOを設定 Developer consoleでOAuth 2.0アプリを作成
WordPress側 SAMLまたはOpenID Connectのプラグイン OAuth 2.0クライアントのプラグイン
退職者の停止 IdPで止めれば両方止まる Atlassian側で止める必要がある
ログインできる人の範囲 IdPのユーザーだけ 何もしないと、Atlassianアカウントを持つ人全員

会社の業務で使うなら、1をおすすめします。

AtlassianのSAML SSOは、Atlassianをサービスプロバイダーとして外部のIdPに認証を任せる機能です。Atlassianが他のアプリ向けのIdPになる機能ではありません。そのため「Jiraのアカウント」を他のアプリと共通にするには、IdPに寄せるのが本来の形です。公式ドキュメントによると、SAML SSOの設定には組織でのAtlassian Guard Standardの契約が必要です。

WordPress側は、同じIdPにOpenID ConnectかSAMLでつなぎます。手順はOpenID ConnectでのSSO設定やWordPressのSSO設定を参照してください。

IdPが無く、小さなチームで「Atlassianのアカウントでログインできれば十分」という場合は、次の2の手順を使います。

手順1: AtlassianでOAuth 2.0アプリを作る

  1. Developer console を開き、「Create」から「OAuth 2.0 integration」を選んでアプリを作ります。
  2. 「Authorization」で OAuth 2.0(3LO)の「Configure」を選び、「Callback URL」にWordPressのプラグインが示すコールバックURL(リダイレクトURL)を入力します。
  3. 「Permissions」で User Identity API を追加し、スコープ read:me を有効にします。
  4. 「Settings」に表示される Client ID と Secret を控えます。Secretは他人に見せないでください。

Atlassianの認可と情報取得に使うURLは次のとおりです。

用途 URL
認可(Authorization) https://auth.atlassian.com/authorize
トークン取得(Token) https://auth.atlassian.com/oauth/token
ユーザー情報(User Info) https://api.atlassian.com/me

認可URLには、通常の client_id・redirect_uri・scope・state・response_type=code に加えて、audience=api.atlassian.com と prompt=consent が必須です。

手順2: WordPressにOAuthクライアントのプラグインを入れる

ここでは、WordPress.orgで配布されているminiOrangeの「OAuth Single Sign On – SSO (OAuth Client)」を例にします。無料版で、独自のOAuth 2.0サーバーを認可コード方式でつなげます。

wp plugin install miniorange-login-with-eve-online-google-facebook --activate

プラグインの設定画面で、一覧に無い独自のOAuth 2.0のアプリとして追加し、次の値を入れます(項目名はプラグインのバージョンで変わることがあります)。

項目 入れる値
Client ID / Client Secret 手順1で控えた値
Scope read:me
Authorize Endpoint https://auth.atlassian.com/authorize?audience=api.atlassian.com&prompt=consent
Access Token Endpoint https://auth.atlassian.com/oauth/token
Get User Info Endpoint https://api.atlassian.com/me

audience と prompt は、プラグインに専用の入力欄が無いため、認可URLの後ろにクエリとして付けています。プラグインがこれらを送らないとAtlassian側で認可が失敗するので、本番の前にテスト用のサイトで試してください。

プラグインに表示されるコールバックURLを、手順1の「Callback URL」と一字一句同じにします。末尾のスラッシュの有無が違うだけでもエラーになります。

手順3: ユーザー情報の対応付けを確認する

https://api.atlassian.com/me は、ログインしたユーザーの公開プロフィールを返します。公式の例では次のような項目があります。

{
  "account_type": "atlassian",
  "account_id": "112233aa-bb11-cc22-33dd-445566abcabc",
  "email": "mia@example.com",
  "name": "Mia Krystof",
  "nickname": "mkrystof",
  "account_status": "active"
}

プラグインのテスト機能(「Test Configuration」など)で、実際に返ってきた項目を確認し、WordPressのユーザー名に使う項目を選びます。メールアドレス(email)を選ぶと、既存のWordPressユーザーと照合しやすくなります。miniOrangeの無料版で対応付けできるのはユーザー名までで、姓・名・メールなどの詳しい対応付けや権限グループの割り当ては有料版の機能です。

手順4: ログインできる人を制限する

この方法でいちばん注意すべき点です。Atlassianのアカウントは誰でも無料で作れるため、何も制限しないと、自社のJiraと無関係な人もAtlassianアカウントでWordPressにログインできてしまいます。

  • 初めてログインした人のWordPressユーザーを自動で作る設定を使う場合、新規ユーザーの権限グループが「購読者」になっているか(「設定」→「一般」の「新規ユーザーのデフォルト権限グループ」)を確認します。
  • 自動作成を止められる場合は止め、ログインさせたい人のWordPressユーザーを、Atlassianと同じメールアドレスで事前に作っておきます。
  • 管理者のアカウントは、OAuthログインに頼らず、通常のパスワードと二要素認証で守ります。
  • ログインできる人を社員だけに限定したい場合は、前述の「IdPに両方をつなぐ」方法を選んでください。

うまくいかないときの確認点

症状 確認すること
Atlassianの画面でエラーになる Callback URLの一致、audience と prompt が認可URLに付いているか、スコープ read:me がアプリに追加されているか
ログイン後にWordPressでエラー Client Secretの誤り、サーバーから auth.atlassian.com へのHTTPS通信が止められていないか
ユーザー名が空・別人になる 手順3の対応付けで、email など値が入る項目を選んでいるか

まとめ

  • AtlassianのSAML SSOは外部IdPに認証を任せる機能で、Atlassianが他アプリのIdPになるわけではありません。会社で使うなら、IdPにAtlassianとWordPressの両方をつなぐのが基本です。
  • IdPが無い場合は、Atlassianの OAuth 2.0(3LO)とUser Identity API(read:me)を、OAuthクライアントのプラグインで使います。認可URLには audience=api.atlassian.com と prompt=consent が必要です。
  • Atlassianアカウントは誰でも作れるため、ユーザーの自動作成と権限グループの設定を確認し、ログインできる人を制限してください。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ
▲