[Building Sakai] Use Sakai API to add members to site

Thomas Amsler tpamsler at ucdavis.edu
Thu Jul 16 11:10:12 PDT 2009


On Thu, Jul 16, 2009 at 2:56 AM, Steve
Swinsburg<s.swinsburg at lancaster.ac.uk> wrote:
> Ok so "the EID is the one you login with" is the better explanation then.

Not really. It all depends on what kind of ID management your
institutions has. For example here at UCD, we have a loginID, Kerberos
ID, but once the user has logged in, we replace that stored ID with
our "Enterprise ID". To support all of that, we have written a
federated ID lookup service that tries to resolve any kind of ID that
the user enters or the system is using.

So, the point is that some institutions have one ID for pretty much
everything and there are other ones that have to deal with several
different IDs (login, EID, email, studentId, etc.) This really all
depends on what kind of ID management is used. This issue is actually
more profound because sakai2 is lacking any kind of context related ID
management. For example, in Gradebook our Instructors would like to
see the studentID as the displayID, and in other cases, they want to
see their email address as the displayID, etc.

>
> Enterprise ID is a foreign concept for pretty much everyone outside the US
> so that term itself can be confusing. At least in universities where I have
> performed integrations the student/staff number is the only thing that can
> consistently identify someone, and that is never used publicly. That would
> be considered the Enterprise ID in those cases.
>
> cheers,
> Steve
>
> On 15 Jul 2009, at 21:14, Thomas Amsler wrote:
>
>> W.R.T. "The eid is the human readable one": This is not always the
>> case and may be a bit misleading in as much as that folks may
>> associate the EID with the DisplayID. The EID should be the
>> institution's enterprise ID, which may or may not be human readable.
>> Since folks tend to assume that the EID is human readable, they tend
>> to use it as the displayId. This "misconception" in sakai2 has hurt us
>> quite a bit and required us to locally modify/fix sakai2.
>>
>> Best,
>> -- Thomas
>>
>>
>>
>>
>> On Wed, Jul 15, 2009 at 6:53 AM, Steve
>> Swinsburg<s.swinsburg at lancaster.ac.uk> wrote:
>>>
>>> Hi Phuc,
>>> You need to use the userId, not the eid. The eid is the human readable
>>> one,
>>> ie jsmith26, the userId is the internal one. To get it, just do this:
>>> String userid = UserDirectoryService.getUserByEid(eid).getId();
>>>
>>> cheers,
>>> Steve
>>> ---
>>> Steve Swinsburg
>>> Portal Systems Developer
>>> Centre for e-Science
>>> Lancaster University
>>> Lancaster
>>> LA1 4YT
>>> email: s.swinsburg at lancaster.ac.uk
>>> phone: +44 (0) 1524 594870
>>>
>>>
>>>
>>>
>>>
>>>
>>> On 15 Jul 2009, at 14:47, Phuc Bui wrote:
>>>
>>> Dear all,
>>> I use this API org.sakaiproject.site.api.Site to add members to site
>>> -------------------------------------------
>>> addMember
>>> void addMember(String userId,
>>>               String roleId,
>>>               boolean active,
>>>               boolean provided)
>>> Add a member to the AuthzGroup.
>>> Parameters:
>>> userId - The user.
>>> role - The role name.
>>> active - The active flag.
>>> provided - If true, from an external provider.
>>> -----------------------------------------
>>>
>>> But when I used it, I got following warning, though I called
>>> site.addMember(uid, roleId, true, true)
>>> ------------------------------------
>>> WARN: refreshAuthzGroup: cannot find eid for user: nluthuyntt (2009-07-15
>>> 20:25:
>>> 46,064
>>> http-8080-Processor23_org.sakaiproject.authz.impl.DbAuthzGroupService)
>>> WARN: refreshAuthzGroup: cannot find eid for user: nlu05130095
>>> (2009-07-15
>>> 20:25
>>> :46,065
>>> http-8080-Processor23_org.sakaiproject.authz.impl.DbAuthzGroupService)
>>> WARN: refreshAuthzGroup: cannot find eid for user: nlu05130030
>>> (2009-07-15
>>> 20:25
>>> :46,066
>>> http-8080-Processor23_org.sakaiproject.authz.impl.DbAuthzGroupService)
>>> WARN: refreshAuthzGroup: cannot find eid for user: nlu05130148
>>> (2009-07-15
>>> 20:25
>>> :46,068
>>> http-8080-Processor23_org.sakaiproject.authz.impl.DbAuthzGroupService)
>>> WARN: refreshAuthzGroup: cannot find eid for user: nlu05130072
>>> (2009-07-15
>>> 20:25
>>> :46,069
>>> http-8080-Processor23_org.sakaiproject.authz.impl.DbAuthzGroupService)
>>> -----------------------------------
>>> I have implemented UserDirectoryProvider to read user’s data from
>>> external
>>> database and I can log in by those id (such as nluthuyntt, nlu05130095 …)
>>>
>>> What should I do more ?
>>>
>>> Thanks,
>>> Phuc Bui
>>> _______________________________________________
>>> sakai-dev mailing list
>>> sakai-dev at collab.sakaiproject.org
>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>
>>> TO UNSUBSCRIBE: send email
>>> to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> "unsubscribe"
>>>
>>> _______________________________________________
>>> sakai-dev mailing list
>>> sakai-dev at collab.sakaiproject.org
>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>
>>> TO UNSUBSCRIBE: send email to
>>> sakai-dev-unsubscribe at collab.sakaiproject.org
>>> with a subject of "unsubscribe"
>>>
>
>


More information about the sakai-dev mailing list