I've read through the gist and my comments are inline:


Developer Side Notes

Definitions


The getKey() method returns a "globally" unique identifier for that identity object.  E.g. for a group called "admins" the key would be "GROUP://admins", for a user called jsmith the key would be "USER://jsmith".  We need this distinction because permissions can be stored against users, groups, or roles using their key and we need a reliable way to map this value back to the actual identity object.  The getId() method is specific to certain identity types, such as User (in which case the id is their user ID, i.e. "jsmith") or Group (where the id is the full hierarchy of the group, e.g. "/branches/headoffice/managers").

API Design


The role management methods could probably do with some improvement.  For one thing we don't have explicit support for application roles yet.  I would suggest something like the following methods:

IdentityManager.grantRole(IdentityType member, Group parent, String roleName)
IdentityManager.grantApplicationRole(IdentityType member, String roleName)



+1, we should make these interfaces Serializable



+1, good idea

Query API Design

+1, all the common stuff should go in a base interface

I don't think we need this, the range can be set explicitly on the Query object.

This should probably be getId() instead.


+1, this is a good idea

Messages and Logging

+1, we should also define a list of error codes, I'll ask Pete for some advice on this.


My concern here is how we integrate the logging in an SE module with CDI.  It would be nice to provide some kind of i18n support, maybe Jason would have some suggestions as to how we best achieve this.


+1, comprehensive logging is always good

Configuration

Documentation

Feature Proposal




On 09/10/12 02:23, Anil Saldhana wrote:
Hi all,

I am wondering if we can hold a discussion on the IDM API so we lock it 
down in the next couple of weeks.

Recently, Pedro created the following gist page.
https://gist.github.com/3801805.

Regards,
Anil

_______________________________________________
security-dev mailing list
security-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/security-dev