問題タブ [warden]
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.
ruby-on-rails - Devise と Warden によるクロスアプリケーション認証
2つのアプリケーションがあります。devise を使用した rails 3 アプリケーションと、warden を使用した Sinatra アプリ。
RailsアプリでDeviseを実装しました。
私のシナトラ アプリケーションは、rails/javascript アプリケーションの API プロバイダーです。
私が今欲しいのは、ワーデン認証をDeviseに依存させることです。
両方のアプリケーションが同じ { databases }
ものを共有していることに注意してください。{ cookies/sessions [:key, :secret, :domain, :path] }
ありがとう
ruby-on-rails-3 - カスタマイズされた方法で warden/devise でユーザーを認証する方法は?
これは、Mongoid を ODM として使用する Rails 3.0 アプリです。以下は、デバイスがインストールされているユーザー モデルです。
私はAPIを構築しています。そのため、認証のために、:email と :password を使用してユーザーを認証したいと考えました。GUI から、問題なく動作しています。
今、API経由で実装したいので、paramsでアクションを/api_login.json
ヒットする別のルートを作成しましたlogin
{"username"=>"kapil@gmail.com", "password"=>"sachin", "action"=>"login", "controller"=>"api/v1/accounts", "format"=>"json"}
warden.authenticate!(:scope => :user)
以前のメソッドで認証しようとするsign_in
と、次のバックトレースで失敗します。
テストはデフォルトのrack-test
方法で行われます。
認証する正しい方法は何ですか?
ruby-on-rails-3 - Devise - ユーザーがログインした後にチェックを実行し、エラーが発生した場合はリダイレクトします
私は電子商取引アプリケーションに取り組んでいます。ユーザーがアプリにログインするときに、外部のサブスクリプション ハンドラーをチェックして、サブスクリプションがまだ有効であり、有効期限が切れていたり、失敗したりしていないことを確認したいと考えています。
initializers/devise.rb
ログイン後にモデルのチェックを実行するために、Warden コールバックを使用する方法を理解することに成功しました。ただし、問題が発生した場合は、もう一度ログアウトして、次に何をすべきかを示す特定のページにリダイレクトしたいと考えています。
これが私が持っているものです。コールバックから使用できないことはわかってredirect_to
います。それを考えると、私がやろうとしていることを行うための最良の方法は何ですか?
ruby-on-rails - アプリの別の場所からサインインと登録フォームを作成する
購入できる商品を一覧表示する e コマース スタイルのサイトを構築しています。購入をクリックすると、http://shopfront.com/deal/123/buyのような URL に移動します。
その購入ページで Devise のサインアップとサインインを提供したいと思います。現在、ユーザーにサインアップしてもらうことができます。サインアップが成功すると、興味のあるアイテムの購入ページにリダイレクトされますが、詳細が不十分な場合は、devise のデフォルトのサインアップ フォームにリダイレクトされ、エラーが表示されます。彼らは遭遇しました。その後、彼らは私の購入ページにリダイレクトされなくなり、代わりにホームページに行き着きます.
サインアップが成功したときに関連する購入ページにリダイレクトする独自の登録コントローラーがありますが、失敗したサインアップを購入ページにリダイレクトする方法がわかりません。
同じ購入ページのサインアップ フォームの横に表示されるサインイン フォームに、多かれ少なかれ同じ機能を実装する必要があります。任意の支援をいただければ幸いです。
authentication - 認証可能なトークンのタイムアウト
DeviseでTokenAuthenticatableクラスを使ってトークンを発行した後、一定時間で有効期限が切れるようにしたい。
DeviseでTokenAuthenticatableオブジェクトに有効期限を設定する方法はありますか?
ありがとう
ruby-on-rails - ワーデンコールバックはレールアプリのどこに配置する必要がありますか?
私はレールに比較的慣れていません。Devise をセットアップしましたが、ユーザーがサインインした後にコールバック コードを実行したいと考えています。
Warden wiki pageを見ると、「after_set_user」コールバックを使用してこのロジックを実行できます。次に例を示します。
とはいえ、このようなものをどこに保管すればよいかわかりません。私の最初の考えは、config/initializers/devise.rb に置くことができるということです。あれは正しいですか?基本的にコントローラ コードを config ディレクトリに配置するのは適切ではありません。
ruby-on-rails - ワーデン戦略の削除-元のdevise_authenticable戦略がなくなったことを確認する方法
Deviseで使用するための独自のWarden戦略を作成しました。これはDevise::Strategies :: DatabaseAuthenticatableと非常によく似ており、実際にはそれを継承して再実装し、認証を行います。
私の問題は、元のdevise_authenticableWarden戦略がなくなっていることを確認したいということです。これは実際にはセキュリティの問題であるため、Wardenが試みる戦略のリストには含まれていません。それは可能ですか?
sinatra - Warden&Omniauthを使用したSinatra
アプリの一部をまとめる前に、いくつかの高レベルのアドバイスが必要です。
これらの3つの部分がどのように組み合わされるべきか完全にはわかりません。
私の理解:
ユーザーにomniauthを使用してログインさせ、コールバックにリダイレクトします。ここで、APIによって提供される情報を取得し、それを使用してデータベースにユーザーを構築できます。次に、wardenを使用してユーザーを「保存」し、アクションが有効かどうかを認証します。
監視員のために独自の「戦略」を作成する必要があるように見えますか?
ユーザーのIDをどのように保存する必要がありますか?
ruby-on-rails - ユーザー認証と競合するアクティブな管理者認証
Active Adminは、アプリケーションで管理ダッシュボードを作成するために使用される gem です。ユーザーのログインに Devise を使用admin_user
し、管理者用に別のモデルを作成します。私のアプリケーションはすでにdeviseを使用しており、そのユーザーをuser
モデルとして持っています。アクティブな admin gem を使い始めて以来、routes ファイルの次の行は、ユーザーがログインしている場合でも、users#dashboard ではなく、home#index に解決され続けます。 #dashboard をルート URL として使用します。
何が起こっているかというと.authenticate?
、admin_user
(Active Admin に属する) がログインしてuser
いるかどうかをチェックしていますが、チェックする必要があるモデルはチェックしていないため、アクティブな管理インターフェイスにログインすると、サイトのルートがユーザーになります。user
がログインしているかどうかを確認せずに、代わりに #dashboard を使用します。ログインしているかどうかを.authenticate?
確認するにはどうすればよいですか?user
admin_user
どんな助けや手がかりも大歓迎です
ruby-on-rails - Rails で Warden/Devise after_authentication コールバックからセッションにアクセスする方法
Rails 3 でWarden のafter_authenticateコールバック (Devise の下で実行)から現在のセッションにアクセスしようとしています。
アプリケーションコントローラーの上部で、次のようなことをしたい:
最終的な目標は、サインアップ前にセッションに保存されたレコード ID のリストを取得し、サインイン後にそれらをユーザー モデルに関連付けることです。
どんな助けでも大歓迎です。