func NewThirdPartyAuthProvider(config *ThirdPartyProviderConfig) (AuthProvider, error) {
	authn := config.Authn
	if authn == nil {
		if config.TrustedKey == nil {
			return nil, errors.New("missing required trusted key")
		}
		authn = &ThirdPartyStrategy{RequestTolerance: config.RequestLifeSpan, TrustedKey: config.TrustedKey}
	}

	authz := config.Authz
	if authz == nil {
		authz = &AllowAllAuthzStrategy{}
	}
	return NewAuthProvider(authn, authz)
}
//NewThirdPartyAuthProvider retrieves a new ThirdPartyProviderConfig
NewThirdPartyAuthProvider retrieves a new ThirdPartyProviderConfig
// NewThirdPartyAuthProvider retrieves a new ThirdPartyProviderConfig
func NewThirdPartyAuthProvider(config *ThirdPartyProviderConfig) (AuthProvider, error) {
	authn := config.Authn
	if authn == nil {
		if config.TrustedKey == nil {
			return nil, errors.New("missing required trusted key")
		}
		authn = &ThirdPartyStrategy{RequestTolerance: config.RequestLifeSpan, TrustedKey: config.TrustedKey}
	}
	authz := config.Authz
	if authz == nil {
		authz = &AllowAllAuthzStrategy{}
	}
	return NewAuthProvider(authn, authz)
}
func NewThirdPartyAuthProvider ( config * ThirdPartyProviderConfig ) ( AuthProvider , error ) { authn := config . Authn if authn == nil { if config . TrustedKey == nil { return nil , errors . New ( " " ) } authn = & ThirdPartyStrategy { RequestTolerance : config . RequestLifeSpan , TrustedKey : config . TrustedKey } } authz := config . Authz if authz == nil { authz = & AllowAllAuthzStrategy { } } return NewAuthProvider ( authn , authz ) }
NewThirdPartyAuthProvider retrieves a new ThirdPartyProviderConfig
NewThirdPartyAuthProvider retrieves a new ThirdPartyProviderConfig