São anotações de proteção de acesso (Securing Access) ao Ent...
Alternativa correta: E - @DeclareRoles, @PermitAll, @DenyAll, @RolesAllowed e @RunAs.
Para resolver essa questão, é importante entender o conceito de anotações (annotations) em Java e como elas são aplicadas na segurança do Enterprise Java Beans (EJB). EJB é uma especificação para a construção de componentes de negócios escaláveis e transacionais em Java. A partir da versão 3, a especificação EJB trouxe um modelo de programação muito mais simples, baseado em anotações, para definir aspectos como a segurança.
As anotações mencionadas são usadas para controlar o acesso aos métodos dos EJBs. Vamos explicar cada uma das anotações corretas:
- @DeclareRoles: Usada para declarar os papéis de segurança usados dentro do bean.
- @PermitAll: Especifica que todos os papéis são permitidos para acessar o método ou bean em questão.
- @DenyAll: Bloqueia o acesso de todos os papéis ao método ou bean.
- @RolesAllowed: Permite o acesso apenas aos papéis especificados.
- @RunAs: Define a identidade de segurança que o EJB será executado, o que é útil para a execução de operações internas entre beans.
Portanto, a alternativa E está correta porque lista todas as anotações que estão de fato relacionadas com a segurança e o controle de acesso em EJB 3.2. As demais alternativas contêm anotações que não existem ou não são usadas para a configuração de segurança em EJB.