diff --git a/internal/controller/user/reconcile.go b/internal/controller/user/reconcile.go index 333ea92..d6b4ffe 100644 --- a/internal/controller/user/reconcile.go +++ b/internal/controller/user/reconcile.go @@ -377,7 +377,7 @@ func (r *S3UserReconciler) handleUpdate( policyFound := slices.Contains(userResource.Spec.Policies, policy) if !policyFound { logger.Info( - fmt.Sprintf("S3User policy definition doesn't contain policy %s", policy), + fmt.Sprintf("S3User has unexpected policy not in definition: %s", policy), "userResource", userResource.Name, "NamespacedName", @@ -391,7 +391,7 @@ func (r *S3UserReconciler) handleUpdate( policyFound := slices.Contains(userPolicies, policy) if !policyFound { logger.Info( - fmt.Sprintf("S3User policy definition must contain policy %s", policy), + fmt.Sprintf("S3User is missing policy from definition: %s", policy), "userResource", userResource.Name, "NamespacedName", diff --git a/internal/s3/client/impl/minioS3Client.go b/internal/s3/client/impl/minioS3Client.go index 5f53b0f..7e54f7d 100644 --- a/internal/s3/client/impl/minioS3Client.go +++ b/internal/s3/client/impl/minioS3Client.go @@ -469,10 +469,11 @@ func (minioS3Client *MinioS3Client) GetUserPolicies(accessKey string) ([]string, return []string{}, err } - if len(strings.Split(userInfo.PolicyName, ",")) == 1 && slices.Contains(strings.Split(userInfo.PolicyName, ","), "") { + userPolicies := strings.Split(strings.TrimSpace(userInfo.PolicyName), ",") + if len(userPolicies) == 1 && slices.Contains(userPolicies, "") { return []string{}, nil } - return strings.Split(userInfo.PolicyName, ","), nil + return userPolicies, nil } func (minioS3Client *MinioS3Client) CheckUserCredentialsValid( @@ -539,7 +540,7 @@ func (minioS3Client *MinioS3Client) RemovePoliciesFromUser( } s3Logger.Error( err, - "an error occurred when attaching a policy to the user", + "an error occurred when detaching a policy to the user", "code", errAsResp.Code, )