問題タブ [rails-authorization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
842 参照

ruby-on-rails-4 - Rails 4で認証された?(:activation, params[:id])を理解するには?

Michael Hartl の Rails チュートリアルを読んでいるのですが、10 章のこの行が理解できませんでした。 authenticated?(:activation, params[:id])

著者によると、この行は と を比較するために使用されactivation_digestます。tokenこれは、トークンがで利用可能になることを意味します。params[:id]

これは私が混乱するところです。params[:id]ユーザーのIDID を activation_digest と比較するにはどうすればよいですか?

しかしauthenticated?(:remember, cookies[:remember_token])、私には完全に理にかなっています。誰 ?あなたの助けは非常に高く評価されます!

関連するコードを以下に示します。

account_activations_controller.rb

ルート.rb

ユーザー.rb

0 投票する
2 に答える
127 参照

ruby-on-rails - Rails認証をゼロから、現在のパスワード検証をスキップ

私は最初から認証システムを持っています。ユーザーが「プロファイルの編集」をクリックすると、編集するフィールドに関係なく、現在のパスワードを入力する必要があります。

ユーザーがパスワードを変更したい場合にのみ、認証を呼び出すか、コンテキスト モデルの検証を使用するにはどうすればよいですか?

0 投票する
0 に答える
266 参照

ruby-on-rails - OmniAuth open_id ログアウトが期待どおりに機能しない

Rails アプリケーションに 'omniauth' と 'omniauth-openid' gem を使用しています。ログインは期待どおりに機能し、openId プロバイダーからのコールバック後に新しいセッションが作成されます。問題はログアウトです。

私のコントローラーでは、セッションを破棄するためにこのコードを使用しています。

私のログアウトルートはこのアクションを呼び出しています。ログアウトすると、セッションのユーザーが期待どおり nil に設定されていることがわかります。ホームページの URL を入力すると、ヘルパー メソッドはユーザーが既にログインしているかどうかを確認し、この時点で false を返し、期待どおりに「/auth/open_id?origin=request.url」にリダイレクトします。問題はここから始まります。資格情報を提供する前に、プロバイダーはコールバックを POST し、同じユーザーとの新しいセッションを作成します。私は何を間違っていますか?