diff --git a/authority/provisioner/provisioner.go b/authority/provisioner/provisioner.go index 1ea48069..c994a5c2 100644 --- a/authority/provisioner/provisioner.go +++ b/authority/provisioner/provisioner.go @@ -370,13 +370,13 @@ func DefaultIdentityFunc(ctx context.Context, p Interface, email string, usernam // SanitizeStringSlices removes duplicated an empty strings. func SanitizeStringSlices(original []string) []string { output := []string{} - seen := make(map[string]bool) + seen := make(map[string]struct{}) for _, entry := range original { if entry == "" { continue } if _, value := seen[entry]; !value { - seen[entry] = true + seen[entry] = struct{}{} output = append(output, entry) } } diff --git a/authority/provisioner/provisioner_test.go b/authority/provisioner/provisioner_test.go index f1cf2ff5..267fb7d1 100644 --- a/authority/provisioner/provisioner_test.go +++ b/authority/provisioner/provisioner_test.go @@ -129,7 +129,7 @@ func TestDefaultIdentityFunc(t *testing.T) { return test{ p: &OIDC{}, email: "john@smallstep.com", - usernames: []string{"johnny", "js", ""}, + usernames: []string{"johnny", "js", "", "johnny", ""}, identity: &Identity{Usernames: []string{"johnny", "js", "john", "john@smallstep.com"}}, } },