cookie-parserを使用していますか?
「いいね!」 1
Cookieの代わりにリダイレクトを使用する
皆さん、ご指導ありがとうございます。Cookieアプローチで行き詰まってしまいました。サーバーが別のドメインにあり、SafariがサードパーティCookieと対立しているためです。リダイレクトアプローチでStack Overflow Q&Aを作成しました。認証を楽しんでください! ![]()
firebase認証をDiscourseに簡単に統合できれば、非常に興味があります。
うーん、これは具体的にどういう目的で行うのですか? Discourse 以外でウェブアプリで Firebase 認証を使用していないのですか? 私は使用しており、その設定を変更したくありません。「local」のままにしておきたいです (Authentication State Persistence | Firebase)
このパスをたどる他の人のためのメモです。
- Firebase Hosting を使用している場合は、Cookie の名前を
__sessionにしてください。リライトルールは、キャッシング目的で他のすべての Cookie を除外します。 - 検証されていないメールアドレスを許可しないように、上記の関連コードを次のようなものに置き換える必要があります(これは大きなセキュリティリスクです)。
auth .verifyIdToken(idToken) .then(function (decodedClaims) { // この場合、ユーザーが過去5分以内にサインインしたことを強制します。 // そして、彼らは検証済みのメールアドレスを持っている if ( decodedClaims.email_verified && new Date().getTime() / 1000 - decodedClaims.auth_time < 5 * 60 ) { return auth.createSessionCookie(idToken, { expiresIn }); } throw new Error("UNAUTHORIZED REQUEST!"); }) - Discourse には「ログアウトリダイレクト」設定があります。これは、ユーザーが再度ログインしようとしたときに以前と同じユーザーとして自動的にログインしないように、
__sessionCookie をクリアする URL(バックエンド API 呼び出しでのみ実行可能)をヒットするために使用すると良いでしょう。
「いいね!」 1
このコードはどこに実装できますか?