fix access check for wfjt node copy

This commit is contained in:
AlanCoding
2018-05-02 13:24:57 -04:00
parent 0e4b0e86bf
commit 902b1af417

View File

@@ -1814,13 +1814,14 @@ class WorkflowJobTemplateAccess(BaseAccess):
missing_credentials = []
missing_inventories = []
qs = obj.workflow_job_template_nodes
qs = qs.prefetch_related('unified_job_template', 'inventory__use_role', 'credential__use_role')
qs = qs.prefetch_related('unified_job_template', 'inventory__use_role', 'credentials__use_role')
for node in qs.all():
node_errors = {}
if node.inventory and self.user not in node.inventory.use_role:
missing_inventories.append(node.inventory.name)
if node.credential and self.user not in node.credential.use_role:
missing_credentials.append(node.credential.name)
for cred in node.credentials.all():
if self.user not in cred.use_role:
missing_credentials.append(node.credential.name)
ujt = node.unified_job_template
if ujt and not self.user.can_access(UnifiedJobTemplate, 'start', ujt, validate_license=False):
missing_ujt.append(ujt.name)