workflow endpoints should return 401 on invalid credentials

if you have a license that doesn't allow use of workflows, invalid
credentials yielded an HTTP 402; this commit changes the precedence

see: https://github.com/ansible/tower/issues/2950
This commit is contained in:
Ryan Petrello 2018-08-31 10:56:16 -04:00
parent 50a9f0be6b
commit 1f8736ce1d
No known key found for this signature in database
GPG Key ID: F2AA5F2122351777

View File

@ -135,9 +135,10 @@ class WorkflowsEnforcementMixin(object):
Mixin to check that license supports workflows.
'''
def check_permissions(self, request):
ret = super(WorkflowsEnforcementMixin, self).check_permissions(request)
if not feature_enabled('workflows') and request.method not in ('GET', 'OPTIONS', 'DELETE'):
raise LicenseForbids(_('Your license does not allow use of workflows.'))
return super(WorkflowsEnforcementMixin, self).check_permissions(request)
return ret
class UnifiedJobDeletionMixin(object):