問題タブ [zend-auth]
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.
php - ZendAuth-アイデンティティ
ライブラリに認証リソースがあり、ユーザーが存在するかどうか、間違ったパスワード、または正しいパスワードに基づいて、さまざまなステータスの1つを正しく返しています。ただし、コントローラーにIDを取得しようとしています。したがって、認証リソースで、ユーザーとともにステータスを返します。それでは、コントローラーで何をする必要がありますか?ログインと別のコントローラーへのリダイレクトはすでに処理しました。$ this-> auth-> authenticate()や$ this-> auth-> getIdentity()のようなことをして、それらがすでに認証されていることと、それらがIDを持っていることを確認しようとしています。ディスパッチ前にauthと呼ぶすべてのコントローラーにIDが渡されるようにするには、何をする必要がありますか?
また、Zend Authには、ログインの試行回数を追跡するものがありますか?
php - Zend_Auth、Zend_Acl、および Cron ジョブ/スケジュールされたタスク
私は Zend_Auth と Zend_Acl をプロジェクトに実装しましたが、うまく機能しています。ただし、以前は、1 日のさまざまな時間に実行するタスクをスケジュールしていましたが、ログイン プロセスが原因で正しく機能しなくなりました。これらは cygwin wget を介して URL に呼び出されます。すべての CRON 処理を行うコントローラーの 1 つに対して Auth/Acl を無効にする方法があるかどうかを知りたいですか?
php - 利用可能なメソッド間で Zend セッション ストレージを永続的にするにはどうすればよいでしょうか?
Zend 認証セッション ストレージ システムについて少し混乱しています。私の問題を説明しようとします。zendセッションや私の仮定や質問について、あなたの意見やあなたが知っていることを表明してください.
デフォルトでは、Zend_Auth_Adapter_DbTable は、認証が成功すると、提供された ID を auth オブジェクトに返します。getStorage() または getIdentity() を使用すると、「セッション値 (id、name、..)」をいくつかの変数に取得できます。!! 上記の両方の仮定が正しいと思う場合、私の質問は、
- セッション値はデフォルトでどこに保存されますか? (デフォルトでは、セッションを保存するために使用する場所は?)
- 以下のようにセッション保存パスを指定した場合。質問 1 に従ってセッションが保存される場合、これらのセッションをフォルダーに保存する必要があるのはなぜですか? save_path = /home/myaccount/zend_sessions/myapp
- Zend_Session_SaveHandler_DbTable を使用する場合。上記の 2 つのオプションよりも優れている点は何ですか?
- または、Zend でセッションを永続化できる方法を提案できますか? 現在、100 万人のユーザーが登録していますが、ユーザーのセッション ストレージを効率的に作成するにはどうすればよいでしょうか。
ディスカッションに参加するすべての皆さんに事前に感謝します。私の質問や仮定が間違っていると思われる場合は、自分のやり方で表現してみてください。だから私は間違いから学ぶことができます
php - コントロールパネル用の別の Zend アプリケーション?
Web アプリケーションのユーザー バックエンド用に別の Zend アプリケーションを作成する必要がありますか?
私の主な関心事は、パブリック Web サイト (クライアントがログインするため) と従業員がサイトを管理するための両方に別の Zend_Auth を用意する必要があることです。
1 つのアプリケーションで複数の Zend_Auth インスタンスを使用できないように見えるので、これが唯一の解決策です。
次の懸念は、2 つの Zend_Auth セッションが同じ Web スペースで実行されるため、衝突することでしょうか?
乾杯
zend-auth - Zend_Authログイン時に作成された重複DBセッション
私は何か間違ったことをしているに違いない。Webのどこにも自分の問題に対する答えが見つからないようです。これは一般的に、解決策が非常に単純で、誰も答えを必要としないことを意味します。
セッションを保存するためにデータベースを使用しています。私はそれを私のブートストラップに次のように設定しました:
次のブートストラップはプラグインのセットアップです
私のAcl_Aclは次のようになります。
私の認証コントローラーには次のアクションがあります。
私のデータベース構造:id:int変更:intライフタイム:intデータ:テキスト
すべて順調ですよね?うーん、ダメ...
まず、ログインしていない人が更新したり、ページに移動したりするたびに、セッションが作成されます。これは許容できると思います...
私が抱えている問題は、最終的にログインすると、データベースにZend_Auth IDとFlashmessengerが完全に保存されていることがわかりますが、...
...また、ログインしていないユーザーがWebサイトをナビゲートしているように、データベースにファントム行を作成しています...。
たとえば、ユーザーが「プロファイル」ページにリダイレクトされると、Zendはデータをまったく含まないファントムセッションデータを参照しているため、これにより認証が不可能になります。
以下は、Zend_Sessionデータベーステーブルに保存されている情報です。
Zend_Auth | a:1:{s:7: "storage"; O:8: "stdClass":7:{s:2: "id"; s:1: "2"; s:5: "email"; s:17: "wes @ * *** .com"; s:10: "first_name"; s:6: "Wesley"; s:9: "last_name"; s:7: " * "; s:5 :"level"; s:5: "basic"; s:8: "nickname"; s:3: "Wes"; s:9: "lastlogin"; s:19: "2011-07-14 19:30 :36 ";}} __ ZF | a:1:{s:14:" FlashMessenger "; a:1:{s:4:" ENNH "; i:1;}} FlashMessenger | a:1:{s:7 :"default"; a:1:{i:0; s:16: "Welcome back Wes";}}
これは私を2日間運転してきました。Zend_Sessionは自動的に1つのセッションだけを使用してデータを保存しているという印象を受けていますが、これらの複数のエントリが私を怒らせています!!
私は誰かにうまくいくのに十分な情報を与えたことを望みます。
php - zendプロジェクトの外部から(外部の非zendプロジェクトで)保存されたZend_Authデータを取得します
ZFを使用していない別のプロジェクトを含める必要があるZendプロジェクトに取り組んでいます。この他のプロジェクトは、zendプロジェクトのフォルダーのパブリックディレクトリに保存されます。
この他のプロジェクトでは、zendプロジェクトからのlogindataが必要です(これにはzend authが使用されます)。これを達成する方法は2つあると思います。
- 保存されたログインセッション変数を取得するだけです。しかし、どこで/どのような変数ですか?
- または、他のプロジェクトのzendメソッドを使用してデータを取得してみてください。しかし、どのように?この他のプロジェクトの構造を変更せずに。
または多分(おそらく)他の/より良い解決策がありますか?!
それが明確であることを願っています。Tnx
php - ユーザー オブジェクトを Zend_Auth のデフォルト ストレージに格納する
ユーザーのデータを含むオブジェクトを Zend_Auth のデフォルト ストレージに保存することは安全ですか? なぜですか、そうでないのですか?
php - 1 つの ID で複数の openid を持つログイン システム - 意味がありますか? ZFに実装する方法は?
最近、1 つのユーザー ID に複数の openid を割り当てることができるものをよく見かけます。
- a) これは実装する意味がありますか? または、1 つのプロファイルに 1 つの OpenID のみを割り当てますか?
- b) Zend Framework MVC 環境でこれをどのように実装しますか。コード例/チュートリアルはありますか?
これまでの私の考え:
私はasp.netに似たものを見つけました: http://www.west-wind.com/weblog/posts/2009/Sep/17/Integrating-OpenID-in-an-ASPNET-MVC-Application-using-DotNetOpenAuth
- データベース モデル: ユーザー プロファイルのテーブルと、ユーザー (MySQL) に割り当てられる openid の 2 番目のテーブル。
- ログインプロセス:
- を。Zend_Auth_Adapter_OpenId + でログイン (新規ユーザーの OpenId からプロファイル情報を取得)
- b. ユーザーが存在するかどうかを確認します。そうでない場合は、OpenId プロファイルからユーザーを作成し、ユーザーをプロファイル画面にリダイレクトしてユーザー情報を確認します
- c. ユーザーが存在する場合は、openid を確認し、データベースからユーザー プロファイルを取得します。
- d. Zend_Auth モデル内のすべての情報とビジネス ロジックを保護し、アプリケーション全体から簡単にアクセスできるようにする
私は Zend の経験がないので、このニーズに合わせて zend auth コントローラーを拡張する方法についてのヒントをいただければ幸いです。誰かがコード例やチュートリアルを提供してくれればなおさらです。
ありがとう!
zend-framework - どのユーザーがログインしているかをzend_authに伝える方法
私は本当に簡単なはずの何かに苦労していると思います。私のページにはzend_authで構築された認証システムがあります。すべて問題なく動作しますが、ユーザーにTwitterでログインする機会を提供したいと思いました。
私はoauth認証プロセス全体を構築することができ、Twitter認証が成功した後、TwitterからTwitterユーザー名を取得できます。その後、ユーザーテーブルを検索し、そのTwitter名のユーザーを見つけます(データベースにその列があります)。
ログインしたユーザーのuser_idを取得しましたが、zend_authにそのユーザーがログインしていることを知らせるにはどうすればよいですか?データベースにロールベースの権限システムが保存されているため、zend_auth_storageはログインしているユーザーのIDを知る必要があります。
php - 致命的なエラー - Login_Plugin_SecurityCheck が見つかりません
PHP/Zend を使用してユーザー ログインを実装しようとしています。以下の例に従ってください: https://github.com/ezimuel/Authentication-and-authorization-with-ZF.git
http://localhost/にアクセスすると、次のエラーが表示されます。
警告: include_once(Login/Plugin/SecurityCheck.php) [function.include-once]: ストリームを開くことができませんでした: No such file or directory in /Library/WebServer/Documents/xxxxx/library/Zend/Loader.php on line 146
警告: include_once() [function.include]: 含めるために 'Login/Plugin/SecurityCheck.php' を開けませんでした (include_path='/Library/WebServer/Documents/xxxxx/application/../library:/Library/WebServer/Documents /xxxxx/library:/Library/WebServer/Documents/xxxxx/application/modules/login/library:.:/usr/lib/php') /Library/WebServer/Documents/xxxxx/library/Zend/Loader.php に146行目
致命的なエラー: クラス 'Login_Plugin_SecurityCheck' が /Library/WebServer/Documents/xxxxx/library/Zend/Application/Resource/Frontcontroller.php の 117 行目に見つかりません
Zend クイックスタート チュートリアルに従ってプロジェクトをセットアップしたので、私の application.ini ファイルは少し異なります。これは、アプリケーションが特定のファイルを見つけられないという単純なケースだと思いますか?