以前のバージョンでは、「ログイン」ボタンが表示されるランディングページが表示されていました。このボタンをクリックすると、SAML ログインページが表示されました。
個人的には、この動作がとても気に入っていました。しかし、現在のバージョン 2.4.2 では、SAML ログインページが即座に表示されるため、この動作はできなくなっています。
これは設定可能ですか?
以前のバージョンでは、「ログイン」ボタンが表示されるランディングページが表示されていました。このボタンをクリックすると、SAML ログインページが表示されました。
個人的には、この動作がとても気に入っていました。しかし、現在のバージョン 2.4.2 では、SAML ログインページが即座に表示されるため、この動作はできなくなっています。
これは設定可能ですか?
よくわかりませんが、つまり「SAML でログイン」という単一のボタンが表示されたモーダルを示したということでしょうか?
誰か助けてください。もしかして @eviltrout さん?
意図的に変更したわけではありません。いつ変更されたか特定していただければ、その背景を確認できるので助かります。
セキュリティ上の理由で変更された可能性もあります。
これは、omniauth のログイン方法が 1 つしかない場合に、omniauth が本物の SSO のように動作するようにするための、長年要望されていた改善です。
どのようにお手伝いしましょうか?
ヒント:「ローカルログイン」を有効にすると、「ランディングページとログインボタン」が表示されます。
もし確認ページを本当に表示したい場合は、ユーザーをホーム画面ではなく /login にリンクさせてください。これにより、ログインが自動的にトリガーされることはありません。
ただし、これは正式にサポートされているものではなく、実装の単なる偶発的な挙動に過ぎず、いつ変更されるか分かりません。
新しい動作は、SSO ログインと一貫性があり、より優れています。ログイン前にメッセージを表示する必要がある場合は、アイデンティティプロバイダー側で実装できます。
ああ、なるほど。
2 つの理由があります:
この動作を設定することは可能でしょうか?
この変更を行うには、開発者を雇ってプラグインを作成する必要があります。現状では、新しいシステムについて数ヶ月ぶりにこのような不満を聞いたのは初めてです。
開発者です
(discourse_saml への変更をご覧ください)
新しい動作をデフォルトとする設定オプションを追加する PR を受け入れますか?
自動リダイレクトはセキュリティ上の脆弱性を導入するものではありません。もしエクスプロイトをご存知の場合は、当社の開示プログラムを通じてお知らせください:discourse/docs/SECURITY.md at main · discourse/discourse · GitHub
この変更を求めるユーザーがもう少し増えるまで、設定にさらにノイズを追加したくないと思います。
このメソッドをパッチすることで、プラグイン内でこれをオーバーライドできます。
したがって、関数を以下のように簡素化することをお勧めします。
def redirect_to_login
dont_cache_page
cookies[:destination_url] = destination_url
redirect_to path("/login")
end
ありがとうございます。とても感謝しています!
余談ですが、Discourse の運営、素晴らしいですね。