github.com/kyma-incubator/compass/components/director@v0.0.0-20230623144113-d764f56ff805/pkg/graphql/auth_validation.go (about) 1 package graphql 2 3 import ( 4 validation "github.com/go-ozzo/ozzo-validation/v4" 5 "github.com/go-ozzo/ozzo-validation/v4/is" 6 "github.com/kyma-incubator/compass/components/director/pkg/inputvalidation" 7 ) 8 9 // Validate missing godoc 10 func (i AuthInput) Validate() error { 11 return validation.ValidateStruct(&i, 12 validation.Field(&i.AdditionalHeaders, 13 inputvalidation.EachKey(validation.Required), // key 14 inputvalidation.Each(validation.Required, inputvalidation.Each(validation.Required)), // value 15 ), 16 validation.Field(&i.AdditionalQueryParams, 17 inputvalidation.EachKey(validation.Required), // key 18 inputvalidation.Each(validation.Required, inputvalidation.Each(validation.Required)), // value 19 ), 20 validation.Field(&i.Credential, validation.NilOrNotEmpty), 21 validation.Field(&i.RequestAuth), 22 ) 23 } 24 25 // Validate missing godoc 26 func (i CredentialDataInput) Validate() error { 27 return validation.Errors{ 28 "Rule.ExactlyOneNotNil": inputvalidation.ValidateExactlyOneNotNil( 29 "exactly one credential input has to be specified", 30 i.Basic, i.Oauth, i.CertificateOAuth, 31 ), 32 "Basic": validation.Validate(i.Basic), 33 "Oauth": validation.Validate(i.Oauth), 34 "CertificateOAuth": validation.Validate(i.CertificateOAuth), 35 }.Filter() 36 } 37 38 // Validate missing godoc 39 func (i BasicCredentialDataInput) Validate() error { 40 return validation.ValidateStruct(&i, 41 validation.Field(&i.Username, validation.Required), 42 validation.Field(&i.Password, validation.Required), 43 ) 44 } 45 46 // Validate missing godoc 47 func (i OAuthCredentialDataInput) Validate() error { 48 return validation.ValidateStruct(&i, 49 validation.Field(&i.ClientID, validation.Required), 50 validation.Field(&i.ClientSecret, validation.Required), 51 validation.Field(&i.URL, validation.Required, is.URL), 52 ) 53 } 54 55 // Validate missing godoc 56 func (i CertificateOAuthCredentialDataInput) Validate() error { 57 return validation.ValidateStruct(&i, 58 validation.Field(&i.ClientID, validation.Required), 59 validation.Field(&i.Certificate, validation.Required), 60 validation.Field(&i.URL, validation.Required, is.URL), 61 ) 62 } 63 64 // Validate missing godoc 65 func (i CredentialRequestAuthInput) Validate() error { 66 return validation.ValidateStruct(&i, 67 validation.Field(&i.Csrf, validation.Required), 68 ) 69 } 70 71 // Validate missing godoc 72 func (i CSRFTokenCredentialRequestAuthInput) Validate() error { 73 return validation.ValidateStruct(&i, 74 validation.Field(&i.AdditionalHeaders, 75 inputvalidation.EachKey(validation.Required), // key 76 inputvalidation.Each(validation.Required, inputvalidation.Each(validation.Required)), // value 77 ), 78 validation.Field(&i.AdditionalQueryParams, 79 inputvalidation.EachKey(validation.Required), // key 80 inputvalidation.Each(validation.Required, inputvalidation.Each(validation.Required)), // value 81 ), 82 validation.Field(&i.TokenEndpointURL, validation.Required, is.URL), 83 validation.Field(&i.Credential, validation.NilOrNotEmpty), 84 ) 85 }