Adding padding to base64 encoded policy decisions (#1738)

Switching to standard encoding

Signed-off-by: Matthew A Johnson <matjoh@microsoft.com>
This commit is contained in:
Matthew A Johnson 2023-04-20 18:20:26 +01:00 коммит произвёл GitHub
Родитель 11439346dd
Коммит d816cbe89e
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
2 изменённых файлов: 3 добавлений и 3 удалений

Просмотреть файл

@ -146,7 +146,7 @@ func ExtractPolicyDecision(errorMessage string) (string, error) {
return "", errors.Errorf("unable to extract policy decision from error message: %s", errorMessage)
}
errorBytes, err := base64.RawURLEncoding.DecodeString(matches[1])
errorBytes, err := base64.StdEncoding.DecodeString(matches[1])
if err != nil {
return "", err
}

Просмотреть файл

@ -352,7 +352,7 @@ func (policy *regoEnforcer) policyDecisionToError(ctx context.Context, decision
log.G(ctx).WithField("policyDecision", string(decisionJSON))
base64EncodedDecisionJSON := base64.RawURLEncoding.EncodeToString(decisionJSON)
base64EncodedDecisionJSON := base64.StdEncoding.EncodeToString(decisionJSON)
errorMessage := fmt.Errorf(policyDecisionPattern, base64EncodedDecisionJSON)
if policy.maxErrorMessageLength == 0 {
// indicates no message truncation
@ -373,7 +373,7 @@ func (policy *regoEnforcer) policyDecisionToError(ctx context.Context, decision
log.G(ctx).WithError(err).Error("unable to marshal error object")
decisionJSON = []byte(`"Unable to marshal error object"`)
}
base64EncodedDecisionJSON = base64.RawURLEncoding.EncodeToString(decisionJSON)
base64EncodedDecisionJSON = base64.StdEncoding.EncodeToString(decisionJSON)
errorMessage = fmt.Errorf(policyDecisionPattern, base64EncodedDecisionJSON)
if len(errorMessage.Error()) <= policy.maxErrorMessageLength {