Sure, and here's some others as well:

1) From the JAAS FAQ http://java.sun.com/security/jaas/faq.html

Q: Why doesn't the Subject class have explicit methods to support the notion
of a Role? 
A: A role is a specific type of Principal. To act in a particular role, a
Subject simply needs to authenticate and have a specific role Principal
added to its Principal set. 

However this

Q: Why are access controls Subject-based? Shouldn't they be based on the
Credentials a Subject owns? 
A: Conventional access control architectures base authorization decisions on
named Principals. Principals represent authenticated identities for a
Subject, so it is natural to grant permissions to Principals. 

from the same source seems to contradict it as it doesn't make sense for
systems (like EJB app servers) where a person can be assigned multiple
roles. (Just because I am a FinancialAdvisor and SalesManager surely doesn't
mean I have to login twice and possibly have a separate pw for each!)

2) Section 5.1 Principal Based Access Control and 5.2 Access Control
Implementation of http://java.sun.com/security/jaas/doc/acsac.html

It's not entirely clear as they, weirdly, don't seem to have anticipated a
single user (subject) logging onto a service (principal) with multiple roles
(also principal!). Which is exactly what you can do in EJB-land.

Edward


-----Original Message-----
From: Oleg Nitz [mailto:[EMAIL PROTECTED]]
Sent: 11 December 2000 15:23
To: jBoss
Subject: Re: [jBoss-User] Security


Hi Edward, 

On Monday 11 December 2000 16:53, Kenworthy, Edward wrote:
> And finally, I think I've found the killer, in the JAAS documentation on
> the sun site it describes the use of the PrincipalComparator class to
> handle role hierarchies, 
Could you give the exact reference, please?

> eg a subject with the principal of Senior User
> Role can automatically pick up all the permissions of the User Role. If
> think that makes it clear that Principal == role and that the proper
> structure is:
>
> EdwardKenworthy(subject) a user on the jBoss Appserver
>
> |--------->EKPassword which is for the jBossAppserver (private credential)
> |
> |--------->FinancialAdvisor a role on the jBoss Appserver (principal)
> |
> |--------->SalesManager a role on the jBossAppserver (principal)
Even if Sun does recommend such use of JAAS, it doesn't fit the EJB security

model: getCallerPrincipal() must return the user name.

Oleg


--
--------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]
Problems?:           [EMAIL PROTECTED]


--
--------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]
Problems?:           [EMAIL PROTECTED]

Reply via email to