fix: race condition in auth request unmarshalling (#1993)

This commit is contained in:
Livio Amstutz 2021-07-08 18:38:34 +02:00 committed by GitHub
parent c950d6d272
commit f93337e99b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 10 deletions

View File

@ -111,11 +111,11 @@ const (
) )
func NewAuthRequestFromType(requestType AuthRequestType) (*AuthRequest, error) { func NewAuthRequestFromType(requestType AuthRequestType) (*AuthRequest, error) {
request, ok := authRequestTypeMapping[requestType] switch requestType {
if !ok { case AuthRequestTypeOIDC:
return nil, errors.ThrowInvalidArgument(nil, "DOMAIN-ds2kl", "invalid request type") return &AuthRequest{Request: &AuthRequestOIDC{}}, nil
} }
return &AuthRequest{Request: request}, nil return nil, errors.ThrowInvalidArgument(nil, "DOMAIN-ds2kl", "invalid request type")
} }
func (a *AuthRequest) WithCurrentInfo(info *BrowserInfo) *AuthRequest { func (a *AuthRequest) WithCurrentInfo(info *BrowserInfo) *AuthRequest {

View File

@ -15,12 +15,6 @@ type Request interface {
type AuthRequestType int32 type AuthRequestType int32
var (
authRequestTypeMapping = map[AuthRequestType]Request{
AuthRequestTypeOIDC: &AuthRequestOIDC{},
}
)
const ( const (
AuthRequestTypeOIDC AuthRequestType = iota AuthRequestTypeOIDC AuthRequestType = iota
AuthRequestTypeSAML AuthRequestTypeSAML