[jboss-dev-forums] [PicketBox Development] - PicketBox Security Annotations

Ondrej Zizka do-not-reply at jboss.com
Tue Sep 25 20:43:03 EDT 2012


Ondrej Zizka [https://community.jboss.org/people/ozizka] modified the document:

"PicketBox Security Annotations"

To view the document, visit: https://community.jboss.org/docs/DOC-14926

--------------------------------------------------------------
<<  https://community.jboss.org/docs/DOC-14744 Go Back to PicketBox Overview

h3. Project:   http://jboss.org/picketbox PicketBox

*** 
 #Project_PicketBox Project:  PicketBox


** 
 #SecurityDomain_Annotation @SecurityDomain Annotation


** 
 #Authentication_Annotation @Authentication Annotation


** 
 #Authorization_Annotation @Authorization Annotation


** 
 #SecurityMapping_Annotation @SecurityMapping Annotation


** 
 #SecurityAudit_Annotation @SecurityAudit Annotation


** 
 #Module_Annotation @Module Annotation


** 
 #ModuleOption_Annotation @ModuleOption Annotation


** 
 #SecurityConfig_Annotation @SecurityConfig Annotation




Here we describe the various security annotations available as part of PicketBox.

h2. @SecurityDomain Annotation
Fully Qualified Name:  org.jboss.security.annotation.SecurityDomain

It contains:
* value: a name indicating the security domain.

h2. @Authentication Annotation

Fully Qualified Name:  org.jboss.security.annotation.Authentication

It contains:
* modules: an array of @Module  annotations.  This is not optional.


@Authentication(modules={@Module(code = UsersRolesLoginModule.class, options = {@ModuleOption})})
public class AuthenticationAnnotatedPOJO
{ 
}

h2. 
h2. @Authorization Annotation
Fully Qualified Name:  org.jboss.security.annotation.Authorization

It contains:
* modules: an array of @Module  annotations. This is not optional.

@Authentication(modules={@Module(code = UsersRolesLoginModule.class, options = {@ModuleOption})})
@Authorization(modules ={@Module(code = PicketBoxAuthorizationModule.class, options =
   {@ModuleOption(key="roles",value="validuser")})})
public class AuthAuthorizationAnnotatedPOJO
{
   
}

h2. 
h2. @SecurityMapping Annotation

Fully Qualified Name:  org.jboss.security.annotation.SecurityMapping

It contains:
* modules: an array of @Module  annotations. This is not optional.

@Authentication(modules =
{@Module(code = UsersRolesLoginModule.class, options =
{@ModuleOption})})
 
@SecurityMapping(modules =
{@Module(code = OptionsRoleMappingProvider.class, type="role", options =
{@ModuleOption(key="rolesMap",value="validuser=AuthorizedUser,InternalUser", valueType=VALUE_TYPE.JAVA_PROPERTIES),
      @ModuleOption(key="replaceRoles", value="false")})})
public class AuthPlusMappingAnnotatedPOJO
{ 
}

h2. @SecurityAudit Annotation

Fully Qualified Name:  org.jboss.security.annotation.SecurityMapping

It contains:
* modules: an array of @Module  annotations. This is not optional.

@SecurityDomain(value="role-mapping-test")
@SecurityAudit
public class SecurityMappingAnnotationRolePOJO
{
}

h2. @Module Annotation

Fully Qualified Name: org.jboss.security.annotation.Module

It contains:
* code : the class of the module (Eg: UsersRolesLoginModule.class) This represents the JAAS login module for @Authentication, Policy Module for @Authorization, Mapping provider for @SecurityMapping and Audit Provider for @Audit
* flag : one of (REQUIRED,REQUISITE,SUFFICIENT,OPTIONAL).  Default, REQUIRED is assumed.  This is the behavior defined in the JAAS configuration for login modules. (Optional)
* type: an additional type value provided (mainly, for mapping modules).  Default: ""  (Optional)
* options: an array of @ModuleOption  annotations

h2. 
h2. @ModuleOption Annotation

Fully Qualified Name: org.jboss.security.annotation.ModuleOption

It contains:
* key : key of the option being passed to the module
* value : value of the options being passed to the module
* valueType : whether the value is a regular string or assumed as a Java properties. Default is plain string.

h2. 
h2. @SecurityConfig Annotation

Fully Qualified Name: org.jboss.security.annotation.ModuleOption

It contains:
* fileName:  name of the xml config file that defines the security domain configuration


<<  https://community.jboss.org/docs/DOC-14744 Go Back to PicketBox Overview
--------------------------------------------------------------

Comment by going to Community
[https://community.jboss.org/docs/DOC-14926]

Create a new document in PicketBox Development at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=102&containerType=14&container=2088]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-dev-forums/attachments/20120925/31971fd1/attachment.html 


More information about the jboss-dev-forums mailing list