問題タブ [zend-acl]
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 - Zendレイアウトをブートストラップし、ナビゲーションリソースを含める
次のブートストラップを使用すると、ナビゲーションメニューのレンダリングに問題があります。
私のlayout.phtml
中には:
そして私のapplication.ini
中には:
$view = $layout->getView();
ナビゲーションメニューで結果を発行してもレンダリングされません。その部分をコメントアウトすると、うまくレンダリングされます。
ブートストラップでタイトルとaclの役割を設定し、メニューを正しくレンダリングするにはどうすればよいですか?
performance - モデルのZendACLとZendナビゲーション
ここで説明するようなモデルにACLをバインドするというアイデアが好きです。
しかし、これをZend Navigationとどのように組み合わせることができますか?サイトマップをレンダリングするときは、すべてのモデルをインスタンス化する必要があります。
誰かが実際に少なくとも中規模のサイトでこのアプローチを使用し、パフォーマンスの問題を解決した経験を共有できましたか?
php - Zend_Auth、Zend_Acl、および Cron ジョブ/スケジュールされたタスク
私は Zend_Auth と Zend_Acl をプロジェクトに実装しましたが、うまく機能しています。ただし、以前は、1 日のさまざまな時間に実行するタスクをスケジュールしていましたが、ログイン プロセスが原因で正しく機能しなくなりました。これらは cygwin wget を介して URL に呼び出されます。すべての CRON 処理を行うコントローラーの 1 つに対して Auth/Acl を無効にする方法があるかどうかを知りたいですか?
php - Zend_Aclがオンのときに例外を処理する方法は?リソース'default:: error :: error'notfound'を提供します
Zend_Aclを実装しましたが、機能しているようです。私のリソースはリンクです:
module_name。"::"。controller_name。"::"。action_name;
コードに壊れているものを追加しました。通常のエラーページにリダイレクトされているようですが、Aclが次のように言っています。
致命的なエラー:キャッチされていない例外'Zend_Acl_Exception'とメッセージ'Resource' default :: error :: error'not found' in F:\ work \ php \ zendworkspace \ myproject \ library \ Zend \ Acl.php on line 365
リソースにを追加しましdefault::error::error
たが、エラーは同じです。壊れているコードを削除すると、すべてが再び機能します。したがって、コードで何かが壊れた場合、間違いなく同じエラーが発生します。
これを解決する方法を知りたいです。あなたの経験を読んで共有してくれてありがとう。
編集:
実装するコードはちょっと長いです。これは、教義を備えたdb駆動型ACLです。このチュートリアルを変更してmineを実装しました。myACLクラスを切り取り、チュートリアルと同じように見えます。ACLプラグインも同じです。application.iniに登録しました。
ご覧のとおり、デフォルトですべてのリンクに役割を付与しました。guest
つまり、問題が発生 guest
したときにそれを確認できます。default::error::error page
また、コードに問題がない場合は、publisher
クレデンシャルを使用してログインし、管理パネルに移動しようとするといつでもバウンスされることを保証できます。
zend-framework - Zend_Acl に基づいてナビゲーションを作成できませんでした
Zend_Acl でナビゲーションを作成する方法を学ぼうとしています。ただし、ナビゲーションは管理者にのみ表示され、他のユーザーには表示されません。
私は自分のコードを読み、ZendFramework に付属するコードをトレースしようとしました。しかし、私は立ち往生しており、何が間違っているのかわかりません。
ここに私のaclクラスがあります:
ナビゲーションを定義する xml ファイルは次のとおりです。
ナビゲーションを設定するブートストラップ ファイルのコードは次のとおりです。
$this->acl は acl オブジェクトを保持し、zend registry はログインしたユーザーの役割を保持します。
ご不明な点がございましたら、お尋ねください。私は3日以上完全に立ち往生しています。
php - ユーザーがフィールドの変更を許可されているかどうかを確認するZF Zend Form Validator?
ユーザーがフォームフィールドを変更する権利を持っているかどうかをチェックする zend フォームのバリデータを書くことは可能ですか? ユーザーにフィールドが表示されていることを意味しますが、許可なし (acl 権限なし) でも試行すると、エラー メッセージが表示されますか? これは、ユーザーがフィールドの変更を許可されていない場合、フィールドが非アクティブ化されることを意味します。
zend-framework - zend aclで、コントローラーレベルではなくアクションレベルにパーミッションを設定することは可能ですか?
私はzendフレームワークを使用しています。私のサイトには、guestとloggeduserの2種類のユーザーがいます。また、と呼ばれるコントローラーがあります。本、そこに私は3つのアクションがあります。追加、編集、削除、
私のzendaclでは、ログに記録されたユーザーにのみブックコントローラーにアクセス許可を与えます。ナビゲーションでは、ブックのリンクはゲストに表示されません。代わりに、ログに記録されたユーザーに3つのサブリンクをすべて表示し、ゲストにサブリンクのみを追加します。
このような
ログに記録されたユーザーへ
本
追加
編集
消去
とゲストに
本
- 追加
問題は、aclで権限を設定すると、書籍のリンクがゲストに完全に表示されないことです。
私のACLのこの部分
アクションレベルに権限を設定する方法はありますか、またはプラグインが必要です。私は何時間も解決策を見つけるために一生懸命努力しましたが、できませんでした。助けてください...............ありがとう:(
アップデート 。
名前に惑わされないでください。これはデフォルトのzendAcl.phpではありません。これは私のモデルフォルダにとどまるカスタムのものです
私のnavigation.xmlの一部
php - Zend ナビゲーションと再帰的 Zend Acl
Zend_Acl に基づいて Zend_Navigation でナビゲーションを作成したいと思います。以下は、/application/configs ディレクトリにある私の navigation.xml ファイルの一部です。
ACL ですべてのページが拒否されているセクションを表示したくありません。
たとえば、すべてのページ リソースの ACL に TYPE_DENY を持ち、<menu1>
ラベル「solidData」を作成して表示したくないという権限を持つユーザーがいるとします。
ご覧のとおり、1 つのメニュー セクションにさまざまなリソースがあるため、主な問題はメニューの構造です。
関数isVisible() " および " isActive() " を使用して Zend_Navigation を拡張する独自の Navigation クラスを試しましたが、解決策が見つかりません。
どんな助けにも感謝します
[編集] 私のメニューのこのフラグメント構造を見てください:
「ユーザー」と「プロファイル」のリソースが異なるページが含ま<resource>
れて<menu2>
いるため、できません。<menu2>
1 つのメニューに多くのリソースを追加する可能性があるかもしれません。私はそのようなことを試みます:
しかし、私は得る
編集
わかりましたが、メニューの構造を変更すると、ACL も変更する必要があります。私の ACL リソースでは Controller が Controller であり、権限は Controller の Action です。
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つのセッションだけを使用してデータを保存しているという印象を受けていますが、これらの複数のエントリが私を怒らせています!!
私は誰かにうまくいくのに十分な情報を与えたことを望みます。
zend-framework - isAllowed の使用後にエラー メッセージを表示する
たとえば、Zend_Acl_Assert_Interface から派生したクラスに assert メソッドを実装しています。
ユーザーが十分なお金を持っていることと、ユーザーが十分な評価を持っていることの 2 つの条件をチェックします。isAllowed メソッドが bool のみを返すときにどの条件が失敗したかをユーザーに知らせるエラー メッセージを表示する方法は?