Would it make sense to work the use of a `schema/enum` instead of just a `schema/Str` here, like:

```clj
(schema/optional-key :client-auth) (schema/enum "need" "want" "none")
```

Or did you prefer to this validation separately in the body of the `get-client-auth!` function for more specific messaging around the failure?