mirror of https://github.com/jumpserver/jumpserver
fix: 修复获取授权规则的账号列表为空的问题
parent
da9516608f
commit
4574161009
|
@ -211,17 +211,6 @@ class Asset(NodesRelationMixin, AbsConnectivity, JMSOrgBaseModel):
|
|||
tree_node = TreeNode(**data)
|
||||
return tree_node
|
||||
|
||||
def filter_accounts(self, account_names=None):
|
||||
from perms.models import AssetPermission
|
||||
if account_names is None:
|
||||
return self.accounts.all()
|
||||
if AssetPermission.SpecialAccount.ALL in account_names:
|
||||
return self.accounts.all()
|
||||
# queries = Q(name__in=account_names) | Q(username__in=account_names)
|
||||
queries = Q(username__in=account_names)
|
||||
accounts = self.accounts.filter(queries)
|
||||
return accounts
|
||||
|
||||
class Meta:
|
||||
unique_together = [('org_id', 'name')]
|
||||
verbose_name = _("Asset")
|
||||
|
|
|
@ -183,7 +183,7 @@ class CommandFilterRule(OrgModelMixin):
|
|||
cls, user_id=None, user_group_id=None, account=None,
|
||||
asset_id=None, org_id=None
|
||||
):
|
||||
from perms.models.const import SpecialAccount
|
||||
from assets.models import Account
|
||||
user_groups = []
|
||||
user = get_object_or_none(User, pk=user_id)
|
||||
if user:
|
||||
|
@ -202,7 +202,7 @@ class CommandFilterRule(OrgModelMixin):
|
|||
if account:
|
||||
org_id = account.org_id
|
||||
q |= Q(accounts__contains=account.username) | \
|
||||
Q(accounts__contains=SpecialAccount.ALL.value)
|
||||
Q(accounts__contains=Account.AliasAccount.ALL)
|
||||
if asset:
|
||||
org_id = asset.org_id
|
||||
q |= Q(assets=asset)
|
||||
|
|
|
@ -125,7 +125,7 @@ class AssetPermission(OrgModelMixin):
|
|||
"""
|
||||
asset_ids = self.get_all_assets(flat=True)
|
||||
q = Q(asset_id__in=asset_ids)
|
||||
if Account.AliasAccount.ALL in self.accounts:
|
||||
if Account.AliasAccount.ALL not in self.accounts:
|
||||
q &= Q(username__in=self.accounts)
|
||||
accounts = Account.objects.filter(q).order_by('asset__name', 'name', 'username')
|
||||
if not flat:
|
||||
|
|
|
@ -5,5 +5,4 @@ from .user_permission import user_permission_urlpatterns
|
|||
|
||||
app_name = 'perms'
|
||||
|
||||
urlpatterns = asset_permission_urlpatterns \
|
||||
+ user_permission_urlpatterns
|
||||
urlpatterns = asset_permission_urlpatterns + user_permission_urlpatterns
|
||||
|
|
Loading…
Reference in New Issue