2008-11-07 2 views
2

전체 ACO-ARO 구현을 찾지 못했습니다. 인증을 사용하여 사용자의 역할을 확인하고 싶습니다. ...CakePHP 1.2 : 관리자 이외의 다른 사람이 액세스 할 수 없도록 컨트롤러를 잠 그려면 어떻게합니까?

사용자를 단순히 거부하는 이유는 무엇입니까? 특정 역할을하지 않는 한 주어진 컨트롤러.

$ this-> Auth-> authorize = 'controller';를 사용하려고합니다. ...하지만 어디에 넣을 지조차 모르겠다 ??

도움이 될 것입니다!

미리 감사드립니다.

답변

1

짧은 answe r은 : 당신이 만들고 app_controller.php을하고 beforeFilter method.`에 코드를 삽입해야 할 것 같은데

긴 답변 :는 응용 프로그램 디렉토리에 app_controller.php 파일을 만들고 다음 코드를 삽입 beforeFilter().

if (isset($this->params[Configure::read('Routing.admin')])) { //User is trying to access a page using the admin route 
    if ($this->Session->check('someSessionVariable')) { //Check user has some session variable set.     
     // User is accessing an admin page and has permission, do something, or in most cases do nothing. 
    } else { //No sessions set for user, redirect to login page.   
     $this->redirect('/yourLoginPage'); //Redirect 
    } 
} 

이것은 인증 구성 요소의 적절한 사용자를 대신하지 않지만 필요한 것을 수행해야합니다. 생산에 들어가기 전에 안전을 확인하십시오.

관련 문제