클래스 \Magento\Backend\App\AbstractAction
(모든 관리자 컨트롤러 작업의 조상)에는 _publicActions
다음과 같이 비밀 키의 유효성 검사에 사용되는 멤버 가 있음을 발견했습니다 .
if (is_array($this->_publicActions) && in_array($this->getRequest()->getActionName(), $this->_publicActions)) {
return true;
}
이는 특정 조치 이름이 나열된 _publicActions
경우 URL의 비밀 키없이 조치에 액세스 할 수 있음을 의미합니다. 비밀 관리 키를 알 필요없이 수동으로
수행 할 수 있기 때문에 개발 및 디버깅에 대한 축복입니다 ROOT/admin/module/controller/action
. 그러나 이해하지 못하는 것은 비밀 키없이 제품 편집 페이지에 액세스 할 수있는 이유입니다.
이와 같은 제품 편집 페이지를 호출하면 ROOT/admin/catalog/product/edit/id/{product_id_here}
됩니다.
publicActions
멤버는 제품 (편집 용) 및 리디렉션에 대한 리디렉션 컨트롤러 (인덱스 볼 수 있도록) 주문 덮어 씁니다.
이제 내 질문 :
비밀 키없이 일부 편집 작업 만 허용되는 이유는 무엇이며 비밀 키가없는 사용자 정의 CRUD 모듈에서 언제 / 무엇을 허용해야합니까?