私のアプリケーション用のACLシステムを構築したいと考えています。Zend_Acl(役割と権限がデータベースに格納されています)
- ユーザーには、1つまたは複数の役割が割り当てられます。 (管理者、スタッフ)
- 役割には権限があります(Send_Invoices、Send_mail、Delete_Invoices、Send_Estimate)。
- ユーザーは、継承するロールとは別にカスタム権限が割り当てられます。
role:
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| roleName | varchar(50) | NO | UNI | NULL | |
+----------+-------------+------+-----+---------+----------------+
permission:
+----------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| permissionName | varchar(50) | NO | | NULL | |
| permissionKey | varchar(50) | NO | UNI | NULL | |
+----------------+-------------+------+-----+---------+----------------+
role_permission
+---------------+---------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+---------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| role_id | int(11) | NO | MUL | NULL | |
| permission_id | int(11) | NO | | NULL | |
+---------------+---------+------+-----+---------+----------------+
user_role
+---------------+---------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+---------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| user_id | int(11) | NO | MUL | NULL | |
| role_id | int(11) | NO | | NULL | |
+---------------+---------+------+-----+---------+----------------+
user_permission
+---------------+---------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+---------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| user_id | int(11) | NO | MUL | NULL | |
| permission_id | int(11) | NO | | NULL | |
+---------------+---------+------+-----+---------+----------------+
を次のようにACLのための私のデータベース構造がある私は、Zend Frameworkのに移行し、Zend_Aclでは天気を決定する問題を持つことは、私は現在の構造を実装することができますしています。私の質問は。
- 現在のデータベース構造でACLを実装すると、Zend Frameworkで必要な作業を行うことは可能でしょうか?
- 私はzendフレームワークで何をしたいのかを実現するためのより良い実装がありますか?
誰かが私に必要なことをやり遂げる方法を教えてくれたら大変感謝しています。あらゆるリソース、私を助けるリンク?
ありがとうございました。