mandriva

Ticket #218 (new defect)

Opened 8 months ago

unknown error, exception

Reported by: sasha@tactel.com.ua Assigned to: cdelfosse
Priority: high Milestone: 2.4.0
Component: mmc-web-base Version: 2.3.0
Severity: defect Keywords: ACL, traceback
Cc:

Description

I am trying to assign some restriction to MMC for regular users to allow edit their names by switching hide/read/read-write some parameters in "Edit ACL of user" -> "User and group".

I want to user can only see their account page in edit mode and set the next:
Allow only in "Edit ACL of user"

Edit a user
Change user password
Get user photo

and

User login
User name
User groups
User firstname
User home directory
Login shell
User title
Mail address

set to read, not "hide" or "read-write". After login as regular user I see user's page in edit mode, and get this exception.

PHP XMLRPC call: base.getUserPrimaryGroup ('',)

Python Server traceback:
Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/twisted/web/http.py", line 601, in requestReceived
    self.process()
  File "/usr/lib/python2.4/site-packages/twisted/web/server.py", line 160, in process
    self.render(resrc)
  File "/usr/lib/python2.4/site-packages/twisted/web/server.py", line 167, in render
    body = resrc.render(self)
  File "/usr/lib/python2.4/site-packages/mmc/agent.py", line 140, in render
    defer.maybeDeferred(function, *args).addErrback(
---  ---
  File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 107, in maybeDeferred
    result = f(*args, **kw)
  File "plugins/base/__init__.py", line 281, in getUserPrimaryGroup
    
  File "plugins/base/__init__.py", line 1024, in getUserPrimaryGroup
    
  File "plugins/base/__init__.py", line 1249, in getDetailedUser
    
  File "/usr/lib/python2.4/site-packages/ldap/ldapobject.py", line 481, in search_s
    return self.search_ext_s(base,scope,filterstr,attrlist,attrsonly,None,None,timeout=self.timeout)
  File "/usr/lib/python2.4/site-packages/ldap/ldapobject.py", line 475, in search_ext_s
    return self.result(msgid,all=1,timeout=timeout)[1]
  File "/usr/lib/python2.4/site-packages/ldap/ldapobject.py", line 405, in result
    res_type,res_data,res_msgid = self.result2(msgid,all,timeout)
  File "/usr/lib/python2.4/site-packages/ldap/ldapobject.py", line 409, in result2
    res_type, res_data, res_msgid, srv_ctrls = self.result3(msgid,all,timeout)
  File "/usr/lib/python2.4/site-packages/ldap/ldapobject.py", line 415, in result3
    rtype, rdata, rmsgid, serverctrls = self._ldap_call(self._l.result3,msgid,all,timeout)
  File "/usr/lib/python2.4/site-packages/ldap/ldapobject.py", line 94, in _ldap_call
    result = func(*args,**kwargs)
ldap.INVALID_DN_SYNTAX: {'info': 'invalid DN', 'desc': 'Invalid DN syntax'}

If I switch ACL in "User and group" to read-write, I see only empty fields (editable and just read-only fields) and this behavior is wrong, because I can't set any parameters before I fill all required fields.

PS. Then I set "Edit ACL of user" to

User list
Edit a user
Change user password
Get user photo

(just switched on User list) then behavior to view/edit fields are correct (I see all users, no exceptions, editable fields are filled, read-only field are filled too), but this regular user can view/edit this parameters for ALL users!

Attachments


Add/Change #218 (unknown error, exception)




Change Properties
Action