Background
Right now I have one "Options" class, the JwtBearerQueryStringOptions. This is great for configuring the extension, but when it is provided to the behavior, it gives a little bit too much power.
Specifically, it lets the behavior see its own specification on the options object, which is something that should be abstracted away. It also is mutable, so the behavior can adjust the configuration while it is running. Neither of these should be allowed.
Task
Make a new JwtBearerQueryStringBehaviorOptions class that is (1) immutable, and (2) provides a subset of settings from JwtBearerQueryStringOptions that are appropriate for a IJwtBearerQueryStringBehavior to know about. It should get hydrated within the JwtBearerQueryStringMiddleware here
Background
Right now I have one "Options" class, the
JwtBearerQueryStringOptions. This is great for configuring the extension, but when it is provided to the behavior, it gives a little bit too much power.Specifically, it lets the behavior see its own specification on the options object, which is something that should be abstracted away. It also is mutable, so the behavior can adjust the configuration while it is running. Neither of these should be allowed.
Task
Make a new
JwtBearerQueryStringBehaviorOptionsclass that is (1) immutable, and (2) provides a subset of settings fromJwtBearerQueryStringOptionsthat are appropriate for aIJwtBearerQueryStringBehaviorto know about. It should get hydrated within theJwtBearerQueryStringMiddlewarehere