나의 접근 방식은 게시할 문서의 게시 상태를 설정하는 것입니다. 게시 상태인 경우 ACL로 제어되고, 감사 상태(게시되지 않음)인 경우 감사 로그가 생성됩니다. 각 로그는 감사 링크에 해당하며, 각 링크는 개시자와 수신자를 기록합니다. 감사 로그에 있는 사람만 해당 문제에 액세스하고 해당 작업을 수행할 수 있습니다. 참조 데이터베이스 구조를 제공하십시오.
$sql = "존재하지 않는 경우 테이블 생성 xxt_article_review_log(";
$sql .= 'id int null auto_increment';
$sql .= ',mpid varchar(32) null이 아님';
$sql .= ',article_id int null이 아님';
$sql .= ',seq int null이 아님';
$sql .= ',mid varchar(32) null이 아님';
$sql .= ',disposer_name varchar(255) null이 아님';
$sql .= ',send_at int null이 아님';
$sql .= ',receive_at int null 기본값 0이 아님';
$sql .= ',read_at int null 기본값 0이 아님';
$sql .= ',close_at int null 기본값 0이 아님';
$sql .= ',phase char(1) null이 아님'; // Review|Typeset
$sql .= ",state char(1) not null"; // 보류|Disposing|Forward|Close
$sql .= ',설명 텍스트';
$sql .= ",기본 키(id)) ENGINE=MyISAM DEFAULT CHARSET=utf8";
나의 접근 방식은 게시할 문서의 게시 상태를 설정하는 것입니다. 게시 상태인 경우 ACL로 제어되고, 감사 상태(게시되지 않음)인 경우 감사 로그가 생성됩니다. 각 로그는 감사 링크에 해당하며, 각 링크는 개시자와 수신자를 기록합니다. 감사 로그에 있는 사람만 해당 문제에 액세스하고 해당 작업을 수행할 수 있습니다. 참조 데이터베이스 구조를 제공하십시오.
권한 제어는 RBAC 기반 권한 관리 프레임워크 shiro를 사용하여 가장 잘 구현되지만, 이를 얼마나 잘 사용하는지는 레벨에 따라 다릅니다.