スーパーロールは継承されたロールにアクセスできません。Symfonyのスーパーロールにはベースロールへのアクセスがありません
これが私の役割階層がどのように見えるかです:私は役割「ROLE_BACKEND_USER」を継承していることがわかりますADMINように私にログインすると
role_hierarchy:
ROLE_ADMIN: [ROLE_BACKEND_USER, ROLE_SALES]
ROLE_SUPER_ADMIN: ROLE_ADMIN
ROLE_SALES: ROLE_USER
ROLE_BACKEND_USER: ROLE_USER
。 「ROLE_SALES」および「ROLE_USER」。
しかし、ロールを継承していますが、私はROLE_SALESにアクセスできません。 IamはあまりにもFOSバンドルを使用して:
if(!$this->getUser()->hasRole('ROLE_SALES')) {
throw new AccessDeniedException('Cannot loggin Need ROLE_SALES ');
}
また$this->get('security.authorization_checker')->isGranted('ROLE_CARMANDO')
は仕事..
P.Sを行います。
is_grantedの使い方を示すことができますか? – OlivierC
security.authorization_checkedを使用して、使用に特定の役割があるかどうかを確認します。 –