Ich versuche @Security
Annotationen für meine Routen zu verwenden. Wie folgt aus:Benutzerdefinierte Nachricht für @Security Annotation
/**
* @return Response
* @Route("/action")
* @Security("has_role('ROLE_USER')")
* @Template()
*/
public function someAction()
{
return array();
}
Wenn die Sicherheitseinschränkung eine Ausnahme ausgelöst wird, erhalte ich die Meldung Expression "has_role('ROLE_USER')" denied access
.
Dies ist nicht akzeptabel, um dem Endbenutzer angezeigt werden, also versuche ich, eine Möglichkeit zum Anpassen der Nachricht für Annotation.
einfache Abhilfe ist nicht @Secutity
Anmerkungen zu verwenden und schreiben Code wie diese:
/**
* @return Response
* @Route("/action")
*
* @Template()
*/
public function someAction()
{
if (!$this->get('security.context')->isGranted('ROLE_USER')) {
throw new AccessDeniedException('You have to be logged in in order to use this feature');
}
return array();
}
Aber das ist weniger bequem und weniger lesbar.
Ist es möglich, benutzerdefinierte Nachricht zu @Security
Annotationen zu schreiben?
So angezeigte Meldung anpassen, warum hast du das PR schließen? Es war eine gute Sache, die sich nach dem Schließen immer noch aufwertete. Bitte überlegen Sie, es wieder zu öffnen. –
Nun, eigentlich, weil ein Jahr ohne Kommentar des Wartungstechnikers vergangen ist, aber die PR nicht mehr synchron ist und ich keinen Zweck gesehen habe, es aufrechtzuerhalten. – ScayTrase