mirror of
https://github.com/ansible/awx.git
synced 2026-05-19 23:07:42 -02:30
Team credentials listing.
This commit is contained in:
@@ -557,9 +557,8 @@ class Credential(CommonModelNameNotUnique):
|
|||||||
user_obj = User.objects.get(pk=data['user'])
|
user_obj = User.objects.get(pk=data['user'])
|
||||||
return UserHelper.can_user_administrate(user, user_obj)
|
return UserHelper.can_user_administrate(user, user_obj)
|
||||||
if 'team' in data:
|
if 'team' in data:
|
||||||
raise Exception("FIXME")
|
team_obj = Team.objects.get(pk=data['team'])
|
||||||
#team_obj = Team.objects.get(pk=data['team'])
|
return Team.can_user_administrate(user, team_obj)
|
||||||
#return team_obj.organization.users.filter(admins__in = [user]).count()
|
|
||||||
|
|
||||||
def get_absolute_url(self):
|
def get_absolute_url(self):
|
||||||
import lib.urls
|
import lib.urls
|
||||||
|
|||||||
@@ -308,15 +308,15 @@ class ProjectsTest(BaseTest):
|
|||||||
self.post(team_creds, data=new_credentials, expect=401, auth=self.get_invalid_credentials())
|
self.post(team_creds, data=new_credentials, expect=401, auth=self.get_invalid_credentials())
|
||||||
self.post(team_creds, data=new_credentials, expect=201, auth=self.get_super_credentials())
|
self.post(team_creds, data=new_credentials, expect=201, auth=self.get_super_credentials())
|
||||||
self.post(team_creds, data=new_credentials, expect=201, auth=self.get_normal_credentials())
|
self.post(team_creds, data=new_credentials, expect=201, auth=self.get_normal_credentials())
|
||||||
self.post(team_creds, data=new_credentials, expect=201, auth=self.get_other_credentials())
|
self.post(team_creds, data=new_credentials, expect=403, auth=self.get_other_credentials())
|
||||||
self.post(team_creds, data=new_credentials, expect=403, auth=self.get_nobody_credentials())
|
self.post(team_creds, data=new_credentials, expect=403, auth=self.get_nobody_credentials())
|
||||||
|
|
||||||
# can list credentials on a user
|
# can list credentials on a user
|
||||||
self.get(other_creds, expect=401)
|
self.get(other_creds, expect=401)
|
||||||
self.get(other_creds, expect=401, auth=self.get_invalid_credentials())
|
self.get(other_creds, expect=401, auth=self.get_invalid_credentials())
|
||||||
self.get(other_creds, expect=201, auth=self.get_super_credentials())
|
self.get(other_creds, expect=200, auth=self.get_super_credentials())
|
||||||
self.get(other_creds, expect=201, auth=self.get_normal_credentials())
|
self.get(other_creds, expect=200, auth=self.get_normal_credentials())
|
||||||
self.get(other_creds, expect=201, auth=self.get_other_credentials())
|
self.get(other_creds, expect=200, auth=self.get_other_credentials())
|
||||||
self.get(other_creds, expect=403, auth=self.get_nobody_credentials())
|
self.get(other_creds, expect=403, auth=self.get_nobody_credentials())
|
||||||
|
|
||||||
# can list credentials on a team
|
# can list credentials on a team
|
||||||
|
|||||||
@@ -229,7 +229,7 @@ class TeamsCredentialsList(BaseSubList):
|
|||||||
if not Team.can_user_read(self.request.user, team):
|
if not Team.can_user_read(self.request.user, team):
|
||||||
raise PermissionDenied()
|
raise PermissionDenied()
|
||||||
project_credentials = Credential.objects.filter(
|
project_credentials = Credential.objects.filter(
|
||||||
projects__teams__users__in = [ user ]
|
projects__team__users__in = [ user ]
|
||||||
)
|
)
|
||||||
return user.credentials.distinct() | project_credentials.distinct()
|
return user.credentials.distinct() | project_credentials.distinct()
|
||||||
|
|
||||||
@@ -370,7 +370,7 @@ class UsersCredentialsList(BaseSubList):
|
|||||||
if not UserHelper.can_user_administrate(self.request.user, user):
|
if not UserHelper.can_user_administrate(self.request.user, user):
|
||||||
raise PermissionDenied()
|
raise PermissionDenied()
|
||||||
project_credentials = Credential.objects.filter(
|
project_credentials = Credential.objects.filter(
|
||||||
projects__teams__users__in = [ user ]
|
team__users__in = [ user ]
|
||||||
)
|
)
|
||||||
return user.credentials.distinct() | project_credentials.distinct()
|
return user.credentials.distinct() | project_credentials.distinct()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user