Session Management Cheat Sheet
Group items matching
in title, tags, annotations or url
53More
Session Management Cheat Sheet - OWASP - 0 views
- ...50 more annotations...
-
meaning and business or application logic associated to the session ID must be stored on the server side
-
create cryptographically strong session IDs through the usage of cryptographic hash functions such as SHA1 (160 bits).
-
defines the exchange mechanism that will be used between the user and the web application to share and continuously exchange the session ID
-
This is one of the reasons why cookies (RFCs 2109 & 2965 & 6265 [1]) are one of the most extensively used session ID exchange mechanisms, offering advanced capabilities not available in other methods
-
should not mix encrypted and unencrypted contents (HTML pages, images, CSS, Javascript files, etc) on the same host (or even domain - see the “domain” cookie attribute)
-
secure.example.com over HTTPS (encrypted) for the private and sensitive contents (where sessions exist)
-
instructs web browsers not to allow scripts (e.g. JavaScript or VBscript) an ability to access the cookies via the DOM document.cookie object
-
instructs web browsers to only send the cookie to the specified directory or subdirectories (or paths or resources) within the web application
-
vulnerabilities in www.example.com might allow an attacker to get access to the session IDs from secure.example.com
-
use non-persistent cookies for session management purposes, so that the session ID does not remain on the web client cache for long periods of time, from where an attacker can obtain it.
8More
Chapter 15. Data Management - 0 views
-
Tide provides an integration between the Flex/LCDS concept of managed entities and the server persistence context (JPA or Hibernate)
-
Tide maintains a client-side cache of entity instances and ensures that every instance is unique in the Flex client context
- ...5 more annotations...
-
Tip The easiest and recommended way for getting Tide enabled managed entities is to generate them from Java classes with Gas3 or the GDS Eclipse builder using the tide="true" option.
-
In a typical Flex/app server/database application, an entity lives in three layers: the Flex client the Hibernate/JPA persistence context the database
10More
shared by kuni katsuya on 31 Aug 12
- No Cached
JAAS Reference Guide - 0 views
docs.oracle.com/...JAASRefGuide.html
JavaAuthenticationAndAuthorizationService JAAS java security authentication authorization reference guide documentation

70More
Chapter 2. Mapping Entities - 0 views
- ...66 more annotations...
-
The identifier type must contain the same properties as the identifier properties of the entity: each property name must be the same, its type must be the same as well if the entity property is of a
-
WarningThis approach is inherited from the EJB 2 days and we recommend against its use. But, after all it's your application and Hibernate supports it.
-
foreign key is held by one of the entities (note that this FK column in the database should be constrained unique to simulate one-to-one multiplicity)
-
association table is used to store the link between the 2 entities (a unique constraint has to be defined on each fk to ensure the one to one multiplicity)
-
String number
18More
Seam - Contextual Components - 0 views
-
Seam Security is built around the premise of users being granted roles and/or permissions, allowing them to perform operations that may not otherwise be permissible for users without the necessary security privileges
- ...15 more annotations...
-
15.6.1.1. What is a role? A role is a group, or type, of user that may have been granted certain privileges for performing one or more specific actions within an application
-
used to create logical groups of users for the convenient assignment of specific application privileges
-
15.6.1.2. What is a permission? A permission is a privilege (sometimes once-off) for performing a single, specific action. It is entirely possible to build an application using nothing but permissions, however roles offer a higher level of convenience when granting privileges to groups of users
-
@Restrict annotation may reference any objects that exist within a Seam context. This is extremely useful when performing permission checks for a specific object instance.
-
If the expression specified doesn't evaluate to true, either if the user is not logged in, a NotLoggedInException exception is thrown or if the user is logged in, an AuthorizationException exception is thrown.
6More
Advanced Searching - JIRA 5.1 - Atlassian Documentation - Confluence - 0 views
-
It is safer to search by Custom Field ID than by Custom Field nameIt is possible for a Custom Field to have the same name as a built-in JIRA system field, in which case JIRA will search on the system field (not your custom field). It is also possible for your JIRA administrator to change the name of a Custom Field, which could break any saved filters which rely on that name. Custom Field IDs, however, are unique and cannot be changed.
-
It is safer to search by filter ID than by filter nameIt is possible for a filter name to be changed, which could break a saved filter that invokes another filter by name. Filter IDs, however, are unique and cannot be changed.
- ...3 more annotations...
-
An Advanced Searching statement in your typed query will override an ORDER BY statement in the saved filter.
30More
Authentication Cheat Sheet - OWASP - 0 views
- ...26 more annotations...
-
can produce a result that locks out entire blocks of application users accounts
2More
How to search issues from specific Sprint - Atlassian Answers - 0 views
1More
jmeter-amfsampler - A JMeter sampler for testing Flex/BlazeDS applications using Adobe'... - 0 views
13More
Chapter 6. Messaging (Gravity) - 0 views
-
Granite Data Services provides a messaging feature, code name Gravity, implemented as a Comet-like service with AMF3 data polling over HTTP (producer/consumer based architecture)
-
GraniteDS messaging relies on two main AS3 components on the Flex side: org.granite.gravity.Consumer and org.granite.gravity.Producer
-
6.3. Common Configuration There are three main steps to configure Gravity in an application: Declare the Gravity servlet implementation for your target server in web.xml Declare a messaging service and destination in services-config.xml, mapped to a specific channel definition of type GravityChannel
- ...10 more annotations...
-
GraniteDS provides a generic servlet implementation that can work in any compliant servlet container
-
GraniteDS thus provides implementations of non blocking messaging for the most popular application servers.
-
JBoss 5+org.granite.gravity.jbossweb.GravityJBossWebServletOnly with APR/NIO enabled (APR highly recommended)
74More
Chapter 15. Data Management - 1 views
-
abstractEntity.uid();
- ...70 more annotations...
-
id is defined and is maintained in the three layers during the different serialization/persistence operations
-
recommended approach to avoid any kind of subtle problems is to have a real uid property which will be persisted in the database but is not a primary key for efficiency concerns
-
Calling the EntityGraphUninitializer manually is a bit tedious and ugly, so there is a cleaner possibility when you are using generated typesafe service proxies
-
in the Flex application, register the UninitializeArgumentPreprocessor component in Tide as follows :
-
Tide maintains a client-side cache of entity instances and ensures that every instance is unique in the Flex client context
-
Tide currently only supports Integer or Long version fields, not timestamps and that the field must be nullable
-
@Column(name="ENTITY_UID", unique=true, nullable=false, updatable=false, length=36) private String uid;
-
correct way of knowing if any object has been changed in the context, is to use the property meta_dirty of the Tide context
1More
shared by kuni katsuya on 15 Mar 13
- No Cached
ddd-cqrs-base-project - DDD-CQRS Base Project Using Spring and Hibernate (Manage Comple... - 0 views
code.google.com/...ddd-cqrs-base-project
DDD CQRS DomainDrivenDesign CommandQueryResponsibilitySegregation

1More
entity-pruner - prune JPA entities so they can be serialized for client service calls -... - 1 views
25More
Entity-attribute-value model - Wikipedia, the free encyclopedia - 0 views
-
Entity–attribute–value model (EAV) is a data model to describe entities where the number of attributes (properties, parameters) that can be used to describe them is potentially vast, but the number that will actually apply to a given entity is relatively modest
- ...21 more annotations...
-
In an EAV data model, each attribute-value pair is a fact describing an entity, and a row in an EAV table stores a single fact
-
EAV tables are often described as "long and skinny": "long" refers to the number of rows, "skinny" to the few columns
-
Data is recorded as three columns: The entity: the item being described. The attribute or parameter: a foreign key into a table of attribute definitions. At the very least, the attribute definitions table would contain the following columns: an attribute ID, attribute name, description, data type, and columns assisting input validation
-
Row modeling, where facts about something (in this case, a sales transaction) are recorded as multiple rows rather than multiple columns
-
differences between row modeling and EAV (which may be considered a generalization of row-modeling) are:
-
The data type of the value column/s in a row-modeled table is pre-determined by the nature of the facts it records. By contrast, in an EAV table, the conceptual data type of a value in a particular row depend on the attribute in that row
-
In the EAV table itself, this is just an attribute ID, a foreign key into an Attribute Definitions table
-
larger systems use separate EAV tables for each data type (including binary large objects, "BLOBS"), with the metadata for a given attribute identifying the EAV table in which its data will be stored
-
Where an EAV system is implemented through RDF, the RDF Schema language may conveniently be used to express such metadata
-
access to metadata must be restricted, and an audit trail of accesses and changes put into place to deal with situations where multiple individuals have metadata access
-
quality of the annotation and documentation within the metadata (i.e., the narrative/explanatory text in the descriptive columns of the metadata sub-schema) must be much higher, in order to facilitate understanding by various members of the development team.
-
Validation metadata include data type, range of permissible values or membership in a set of values, regular expression match, default value, and whether the value is permitted to be null
-
Grouping metadata: Attributes are typically presented as part of a higher-order group, e.g., a specialty-specific form. Grouping metadata includes information such as the order in which attributes are presented
2More
[#SHIRO-337] adding support for CDI - ASF JIRA - 0 views
9More
Java Persistence/Auditing and Security - Wikibooks, open books for an open world - 0 views
-
adding a AUDIT_USER and AUDIT_TIMESTAMP column to all of the audited tables and auditUser and auditTimestamp field to all of the audited objects
- ...5 more annotations...
-
When the application inserts or updates an object, it will set these fields and they will be stored in the database. JPA events could also be used to record the audit information, or to write to a separate audit table.
-
@Column("AUDIT_USER"); protected String auditUser; @Column("AUDIT_TIMESTAMP"); protected Calendar auditTimestamp;
-
@PrePersist @PreUpdate public void updateAuditInfo() { setAuditUser((String)AuditedObject.currentUser.get()); setAuditTimestamp(Calendar.getInstance()); }