I've been working with @keetonian via the slack channel on this issue, I'll defer to him for more details and findings.
In a nutshell:
Swagger is used to define API details. It's included in template with
Location: !Sub 's3://${DeployBucket}/${BranchName}/swagger-${Version}.yaml'
There is a global auth config at the API level with a default authorizer (a lambda authorizer). I wish to make specific get requests defined in the sam template have no authorizer, so I added:
This doesn't seem to stick (it's ignored when deployed) and the DefaultAuthorizer gets added to the resource anyway. Keeton has reproduced the issue, but hasn't nailed down a cause yet. I'm reporting here for tracking and for others should they hit a similar issue. Thanks!