PHP Zend Framework 1.12 - Implement ACL to Web Application
$30-250 USD
货到付款
Hi,
I've a PHP Zend Framework 1.12 Web Application that I need to implement ACL ([login to view URL]
).
The current Web Aplication have a simple authorization method that allows to create users, define passwords and assign the users to a group.
This simple authorization method is now insuficient to my needs and I need to implement something more granular.
Example of what I need to be able to do:
- For the user123 I need to give the following permissions. Run the indexAction() method, Deny createAction() method, Deny DeleteAction() method.
- For all users of the group Xyz I need go give the following permissions. Run the indexAction() method, Deny createAction() method, Deny DeleteAction() method.
- I need to define and store in the database the functions that each user or each group could Run(have access to).
- In the HTML links to the controllers ( indexAction() for example ) in the Web Application I will need to show only controllers with permissions.
Now I can only do the following:
- If the user123 is logged in he can Run all methods. indexAction(), createAction(), DeleteAction().
Example of a tipical Controller:
<?php
class CommissionsController extends Zend_Controller_Action
{
public function init()
{
// Instantiate Global Models
$this->usersModel = new Application_Model_Users();
$this->commissionsModel = new Application_Model_Commissions();
// Get Session Details
$this->user_session_details = $this->usersModel->getSessionUserDetails();
if (!$this->usersModel->isAuthenticated()) { $this->_redirect('/Auth/Login'); }
}
public function indexAction()
{
$this->view->commissions = $this->commissionsModel->getCommisions();
}
public function createAction()
{
if ($this->_request->isPost())
{
$payments_id = $this->_request->payments_id;
$comment = $this->_request->comment;
// Save to the Database
$ins_commission = $this->commissionsModel->insertCommission($payments_id,
$comment,
$this->user_session_details['id']);
// redirect
$this->_redirect('/Commissions/');
}
$this->view->payments_not_inserted = $this->commissionsModel->getPaymentsNotInserted();
}
If you are able to implement the ACL in this Web Application and want to make a proposal, in this proposal tell me how many DB tables you will use.
For now I've 2 DB tables, users and users_groups.
项目ID: #21787990
关于项目
有10名威客正在参与此工作的竞标,均价$194/小时
i am well vered in PHP Zend Framework 1.12 so i can implement to web application so please let me know about your application
Hello, I have read your job details carefully and I can do your work if you will provide me more details of the project. I will definitely give you a better solution to your problem. Thanks
Hello! I have been working with ZendFramework 1.12 for 10 years, and I still do all days. The work needs define all rules (user's groups, even a admin for your user123 with specialls permissions) The tables that you h 更多
I've aleady done ACL in ZF1 app. We will need: user_acl_resource table, with columns: id, controler, action, role_id (defeined per user, stored in session) user_role table with columns: id, user_id, parent_id (role in 更多