david
(David Taylor)
2024 年 10 月 3 日午後 12:30
292
Hi @balazsorban44 、リマインダーありがとうございます。PRのレビューを最初に行いました。もし作成者がそれらの作業を行う時間がなければ、私たちが引き受けることになるでしょう。PKCEサポートがあれば良いというのは同意します。
しかし、注意すべき点があります。DiscourseはPKCEが保護する「認可コード横取り」攻撃に対して脆弱ではないと思います。Discourseの認証は常にブラウザ内でhttps経由で行われ、他のアプリに横取りされる可能性のあるOSレベルのカスタムURLスキームは使用していません。
もちろん、追加のセキュリティレイヤーを追加しても害はありません
「いいね!」 3
@swt2c plugin.rb の params << ["post_logout_redirect_uri", post_logout_redirect] if post_logout_redirect 行の後に、次を追加してプラグインにハックしました。
params << ["client_id", "<my-client-id>"]
params << ["logout_uri", post_logout_redirect] if post_logout_redirect
公式サポートがあれば素晴らしいです!
david
(David Taylor)
2024 年 10 月 16 日午前 11:32
298
@balazsorban44 引き受けてくれてありがとう!PRをマージしたので、プラグインでPKCEサポートがオプトインになりました
「いいね!」 4
クリスさん、
このプラグインにAuthentik をどのように統合しましたか?何かヒントがあれば教えていただけますでしょうか。数週間、正しく動作させるのに苦労しています。
chrisblech
(Christoph Blechschmitt)
2024 年 10 月 21 日午後 3:27
300
うーん、特別なことは何も思い出せません。具体的にどのような問題がありますか?設定のスクリーンショットを(おそらくプライベートメッセージで)共有しますか?
「いいね!」 1
クリス、返信ありがとうございます。承知いたしました。Authentikを開発していた開発チームが対応可能になったら、今週中に改めてご連絡いたします。主な問題はフローとアウトポストに関するものです。
「いいね!」 1
davispuh
(Dāvis)
2025 年 2 月 9 日午後 7:29
304
興味深い問題があります。一般公開する前にすべてが機能することを確認したいので、OIDCプロバイダーはローカル(プライベートサブネット)にホストされており、インターネットからはアクセスできません。
残念ながら、DiscourseはプライベートIPへの接続を許可しないため、これは失敗します。
oidc.example.orgはプライベートIPに解決されます。
OIDCログ: ディスカバリー文書をhttps://oidc.example.org/application/o/discourse/.well-known/openid-configurationから取得中
OIDCログ: ディスカバリー文書の取得中にFaraday::ConnectionFailed FinalDestination: すべての解決済みIPが無効でしたというエラーが発生しました
OIDCログ: ディスカバリー文書は
---
(oidc) リクエストフェーズ開始。
(oidc) 認証失敗! openid_connect_discovery_error: OmniAuth::OpenIDConnect::DiscoveryError, ディスカバリー文書が見つかりません
openid_connect_discovery_documentは管理者のみが変更できるため、信頼され、プライベートIPでも許可されるべきだと思います。
# frozen_string_literal: true
class FinalDestination
module SSRFDetector
class DisallowedIpError < SSRFError
end
class LookupFailedError < SSRFError
end
# This is a list of private IPv4 IP ranges that are not allowed to be globally reachable as given by
# https://www.iana.org/assignments/iana-ipv4-special-registry/iana-ipv4-special-registry.xhtml.
PRIVATE_IPV4_RANGES = [
IPAddr.new("0.0.0.0/8"),
IPAddr.new("10.0.0.0/8"),
IPAddr.new("100.64.0.0/10"),
IPAddr.new("127.0.0.0/8"),
IPAddr.new("169.254.0.0/16"),
IPAddr.new("172.16.0.0/12"),
IPAddr.new("192.0.0.0/24"),
This file has been truncated. show original
david
(David Taylor)
2025 年 2 月 10 日午前 10:53
305
サイト設定に「allowed_internal_hosts」というものがあります。内部ホスト名をそのリストに追加すると、SSRF Detector を介してリクエストが許可されます。
共有ホスティングサービス(公式の discourse.org ホスティングなど)では、管理者はホスティング環境内でのリクエストを行うことが信頼されていないため、この保護がデフォルトで存在します。
申し訳ありませんが、プラグインをインストールする手順に従えるかどうか確信が持てません。私はローカルのDocker環境でDiscourseを運用しており、設定を追加するためのapp.ymlを見つけることができません。
馬鹿な質問かもしれませんが、ローカル開発環境にインストールするためのガイドはありますか?
Docker 開発環境の場合、/var/discourse/containers/app.yml を確認してみてください。
ただし、Docker 以外の開発環境のインストールについては、こちらをご覧ください。
「いいね!」 1
このガイド に従ったと仮定して、プラグインのインストールにはこちらの投稿 を参照してください。
zabin
2025 年 3 月 5 日午後 7:57
312
こんにちは。
このプラグインを追加したところ、正常に動作しました。問題は、Discourseアプリにエイリアスがあり、2つのURLでログインできることです。どちらもAzureに適切なコールバックURLで設定されています。https://discourse.company.com/auth/oidcへの呼び出しが、エイリアスURL(例:https://login-blah-bla/authorize?client_id=&redirect_uri=https%3A%2F%[2Fdiscourse.us.company.com](http://2fdiscourse.us.company.com/)%2Fauth%2Foidc%2Fcallback)でLocation URLを返していることに気づきました。
これは、オリジナルのURLを尊重すべきではないでしょうか?
openid_connect_error_redirectsがありますが、これはエラーの場合のためのものだと思います。権限(別名:discourse.company.com )へのリダイレクトを変更する方法について、何かアイデアはありますか?
steinhh
(Stein Haugan)
2025 年 3 月 13 日午後 3:55
313
手動でバンドルをインストールしているときに次のメッセージが出ます:
Post-install message from oauth2:
You have installed oauth2 version 1.4.11, which is EOL.
No further support is anticipated for the 1.4.x series.
また、oauth2バージョン2へのアップグレードを勧める表示もあります。そんなメッセージがない方が安心できるので、アップグレードの予定はありますか?
さらに次のメッセージも表示されます:
You have installed oauth version 1.1.0, congratulations!
Non-commercial support for the 1.x series will end by April, 2025. Please make a plan to upgrade to the next version prior to that date.
The only breaking change will be dropped support for Ruby 2.7 and any other versions which will also have reached EOL by then.
ただ、それは"あなた"ではないのかもしれませんね?
SamKer
2025 年 5 月 28 日午後 12:26
314
こんにちは。
Allow new registrationsオプションは、プラグインの動作に厳密に必要です。これにより、Discourseへの最初の接続時にアカウントが自動的に作成され、"register"ボタンが表示されます。しかし、無効化を許可することは可能でしょうか。つまり、openidconnect経由で接続するユーザーが自分のパラメーターを変更したり、アカウントを直接作成したりする可能性を残さないようにすることです。これにより、このコンテキストでは不要な"register"ボタンを非表示にすることができます。
敬具
解決できましたか?私も同じメッセージで困っています。
ねえ、これ設定できた?なぜかこれで行き詰まっちゃって、OpenIDや認証で管理してきた何百ものアプリの中で、これが一番手こずってるんだ。