私たちでホストしていますか? このプラグインは、当社の Business および Enterprise プランで利用可能です。Amazon & Microsoft ログイン | Discourse - Civilized Discussion
概要
Microsoft アカウント(Office 365 または Microsoft 365 アカウントとも呼ばれます)を使用してユーザーがログインできるようにします
インストールガイド
このプラグインは Discourse コアにバンドルされています 。プラグインを個別にインストールする必要はありません。
概要
Microsoft 認証を使用すると、ユーザーは Microsoft アカウント(Office 365 または Microsoft 365 アカウントとも呼ばれます)を使用して、Discourse フォーラムにログインできます。これにより、Microsoft サービスを使用している組織にとって、ログインプロセスが簡素化されます。
機能
ユーザーが Microsoft の資格情報でログインできるようにします
マルチテナントおよびシングルテナントの構成をサポートします
Microsoft Azure Active Directory と統合されます
ユーザー登録とログインを簡素化します
設定
Discourse フォーラムで Microsoft 認証を設定するには:
Azure Portal のアプリ登録ページ にアクセスします
新しいアプリケーションを登録します:
名前を選択します(通常はサイト名)
「サポートされているアカウントの種類」で、ニーズに最も適したオプションを選択します
Web のリダイレクト URI としてサイトを追加します。形式は次のとおりです:
https://your.discourse.forum/auth/microsoft_office365/callback
変更を保存します
左側のサイドバーメニューで証明書とシークレット に移動し、新しいクライアントシークレット をクリックします
簡単な説明を追加します
「有効期限」で 24 ヶ月を選択します(注意:更新が必要です)
値 (これがアプリケーションシークレットです)をコピーし、プラグイン設定のために保存してください
左側のサイドバーの概要 に移動し、アプリケーション(クライアント ID)をコピーします
Discourse 管理エリアで、設定に移動し、「microsoft auth」を検索します
前のステップで取得したアプリケーション ID とシークレットを入力します
シングルテナント認証の問題
Microsoft アプリケーションを single_tenant として構成した場合、一部のユーザーはログイン時に問題を経験する可能性があります。これは、ログインに使用される電子メールが信頼されていないとみなされ、システムが既存の Discourse アカウントに自動的にリンクできないためです。
この問題を解決するには、ユーザーは次の手順を実行できます:
サインアップフォームの下部にある「アカウントをお持ちですか?」セクションを探します
表示されるリンクをクリックして、アカウントのリンクプロセスに進みます
認証手順を完了して、Microsoft アカウントを既存の Discourse アカウントに接続します
別のオプションとして、microsoft auth email verified サイト設定を有効にすることができます。これは、管理者がすべてのユーザーの電子メールが確認済みであると確信している場合に適しています。これにより、Microsoft 経由で認証する際に、既存のアカウントを持つリターンユーザーが重複アカウントを作成しないようにします。
その他の設定オプション
Microsoft 認証の設定はすべて、管理者 > 設定エリアにアクセスして「microsoft auth」を検索することで更新できます。
シングルテナント設定の場合、Azure Portal のテナントプロパティ で見つけることができるテナント ID が必要です。
追加リソース
「いいね!」 25
시온_강
(시온 강)
2023 年 9 月 1 日午前 1:39
41
Since I am trying to build a discourse for internal use, I chose this organizational directory only.
However, the article Microsoft Authentication talks about setting up multi-tenant.
[image]
An error page is displayed as above. Could the Supported account types setting be the problem?
I currently don’t have an MPN ID, so I can’t try setting up multi-tenant.
そのプラグインの使用に問題があります。
何かアドバイスをいただけますでしょうか?
nathank
(Nathan Kershaw)
2023 年 9 月 10 日午前 1:24
42
このプラグインの設定を更新する際に(また)つまずいたので、このPRを作成しました。
main ← nathan-nz:patch-1
opened 01:17AM - 10 Sep 23 UTC
Update README.md to point to topic on meta.discourse.org
Add tip so that the … correct field is chosen from Microsoft app settings
問題は、Microsoftアプリパネルが「シークレット」の候補として、Client ID、Value、Secret ID の3つのそれらしいフィールドを提供することです。ガイダンスがないため、私は両方の機会に間違ったものを選んでしまい、私だけではないと疑っています!
moggleif
(Morgan Johansson)
2024 年 1 月 10 日午前 9:21
43
このプラグインを試しましたが、シングルテナントでは動作しません。
なぜですか?
# frozen_string_literal: true
require "omniauth/strategies/oauth2"
module OmniAuth
module Strategies
class MicrosoftOffice365 < OmniAuth::Strategies::OAuth2
option :name, :microsoft_office365
DEFAULT_SCOPE = "openid email profile https://graph.microsoft.com/User.Read"
option :authorize_options, [:scope]
uid { raw_info["id"] }
info do
{
name: raw_info["displayName"] || raw_info["userPrincipalName"],
email: raw_info["mail"] || raw_info["userPrincipalName"],
}
This file has been truncated. show original
option :client_options,
site: "https://login.microsoftonline.com",
authorize_url: "/common/oauth2/v2.0/authorize",
token_url: "/common/oauth2/v2.0/token"
「common」という単語が問題です。
シングルテナントの場合は、テナントIDに置き換える必要があるようです。
MSアカウントをお持ちの場合は、ここでテナントIDを見つけることができます: Microsoft Azure
まだ自分で変更を試していません。おそらく試すかもしれません。
もしそうでなければ、これをシングルテナントに使用することを考えている人は、試す必要はありません。現在は動作しません。
エラーが発生した場合の例として、下の画像を参照してください。
moggleif
(Morgan Johansson)
2024 年 1 月 10 日午後 1:22
44
はい、Rubyでのコーディングは初めてで、コーディングや技術的な作業も数年ぶりでした。しかし、完了しました。そして、シングルテナントのセットアップでも動作するようになりました。
main ← moggleif:main
opened 01:20PM - 10 Jan 24 UTC
Fixing a bug, and making sure that single tenant is supported as well if using M… icrosoft for authentication.
https://meta.discourse.org/t/microsoft-authentication/51731/43
「いいね!」 3
pmusaraj
(Penar Musaraj)
2025 年 2 月 27 日午後 3:59
45
大変遅くなりましたが、上記のPRはマージされました!
「いいね!」 2
moggleif
(Morgan Johansson)
2025 年 2 月 27 日午後 4:20
46
やったー!
コミュニティへの初貢献です。最後ではないと思います。
「いいね!」 2
このプラグインは、Bundling more popular plugins with Discourse core の一部として、Discourse コアにバンドルされるようになりました。セルフホストでこのプラグインを使用している場合は、次回のアップグレード前に app.yml から削除する必要があります。