mirror of
https://github.com/kemko/nomad.git
synced 2026-01-01 16:05:42 +03:00
eventstream: Handle missing policy documents in event streams (#15495)
Fixes https://github.com/hashicorp/nomad/issues/15493 Co-authored-by: Tim Gross <tgross@hashicorp.com>
This commit is contained in:
3
.changelog/15495.txt
Normal file
3
.changelog/15495.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
```release-note:bug
|
||||
event stream: Fixed a bug where undefined ACL policies on the request's ACL would result in incorrect authentication errors
|
||||
```
|
||||
@@ -295,9 +295,14 @@ func aclObjFromSnapshotForTokenSecretID(
|
||||
|
||||
for _, policyName := range aclToken.Policies {
|
||||
policy, err := aclSnapshot.ACLPolicyByName(nil, policyName)
|
||||
if err != nil || policy == nil {
|
||||
if err != nil {
|
||||
return nil, nil, errors.New("error finding acl policy")
|
||||
}
|
||||
if policy == nil {
|
||||
// Ignore policies that don't exist, since they don't grant any
|
||||
// more privilege.
|
||||
continue
|
||||
}
|
||||
aclPolicies = append(aclPolicies, policy)
|
||||
}
|
||||
|
||||
@@ -315,9 +320,14 @@ func aclObjFromSnapshotForTokenSecretID(
|
||||
|
||||
for _, policyLink := range role.Policies {
|
||||
policy, err := aclSnapshot.ACLPolicyByName(nil, policyLink.Name)
|
||||
if err != nil || policy == nil {
|
||||
if err != nil {
|
||||
return nil, nil, errors.New("error finding acl policy")
|
||||
}
|
||||
if policy == nil {
|
||||
// Ignore policies that don't exist, since they don't grant any
|
||||
// more privilege.
|
||||
continue
|
||||
}
|
||||
aclPolicies = append(aclPolicies, policy)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user