ajout de compte dont le rôle n'est pas "people", getRoles() parce que tout le

monde ne peut pas récupérer l'admin
This commit is contained in:
fpeters 2004-04-16 13:41:16 +00:00
parent ff4612d029
commit c6200001b9
3 changed files with 17 additions and 1 deletions

View File

@ -506,6 +506,12 @@ class IdentitiesServer(commonIdentities.IdentitiesCommonMixin,
raise faults.MissingItem('Private Key for SSL')
return admin.privateKeySSL
def getRoles(self):
virtualServerId = context.getVar('applicationId')
virtualServer = self.getVirtualServer(virtualServerId)
admin = virtualServer.admin
return admin.identitiesRoles
def getSymetricKey(self):
virtualServerId = context.getVar('applicationId')
virtualServer = self.getVirtualServer(virtualServerId)
@ -562,6 +568,7 @@ class IdentitiesServer(commonIdentities.IdentitiesCommonMixin,
self.registerPublicMethod('getPeerNameIdentifierServiceProvider')
self.registerPublicMethod('getPersonId')
self.registerPublicMethod('getPrivateKeySSL')
self.registerPublicMethod('getRoles')
self.registerPublicMethod('getSymetricKey')
self.registerPublicMethod('getUserId')
self.registerPublicMethod('getUserToken')

View File

@ -220,6 +220,14 @@ class IdentitiesProxy(commonIdentities.IdentitiesCommonMixin,
'getPrivateKeySSL',
[serverId, getApplicationToken(), userToken])
def getRoles(self, serverId = None):
userToken = context.getVar('userToken', default = '')
serverId = self.getServerId(serverId = serverId)
return callServer(
serverId,
'getRoles',
[serverId, getApplicationToken(), userToken])
def getSymetricKey(self, serverId = None):
userToken = context.getVar('userToken', default = '')
serverId = self.getServerId(serverId = serverId)

View File

@ -840,7 +840,8 @@ class IdentitiesWeb(objects.ObjectsWebMixin, proxyIdentities.IdentitiesProxy):
def newAccountNeededObjects(self):
peopleWeb = getWebForServerRole('people')
roles = self.getRoles()
peopleWeb = getWebForServerRole(roles[0])
if not peopleWeb.canAddObject():
return accessForbidden()