github.com/rancher/types@v0.0.0-20220328215343-4370ff10ecd5/apis/management.cattle.io/v3public/authn_types.go (about)

     1  package v3public
     2  
     3  import (
     4  	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
     5  )
     6  
     7  type AuthProvider struct {
     8  	metav1.TypeMeta   `json:",inline"`
     9  	metav1.ObjectMeta `json:"metadata,omitempty"`
    10  
    11  	Type string `json:"type"`
    12  }
    13  
    14  type AuthToken struct {
    15  	metav1.TypeMeta   `json:",inline"`
    16  	metav1.ObjectMeta `json:"metadata,omitempty"`
    17  
    18  	Token     string `json:"token"`
    19  	ExpiresAt string `json:"expiresAt"`
    20  }
    21  
    22  type GenericLogin struct {
    23  	TTLMillis    int64  `json:"ttl,omitempty"`
    24  	Description  string `json:"description,omitempty" norman:"type=string,required"`
    25  	ResponseType string `json:"responseType,omitempty" norman:"type=string,required"` //json or cookie
    26  }
    27  
    28  type BasicLogin struct {
    29  	GenericLogin `json:",inline"`
    30  	Username     string `json:"username" norman:"type=string,required"`
    31  	Password     string `json:"password" norman:"type=string,required"`
    32  }
    33  
    34  type LocalProvider struct {
    35  	metav1.TypeMeta   `json:",inline"`
    36  	metav1.ObjectMeta `json:"metadata,omitempty"`
    37  	AuthProvider      `json:",inline"`
    38  }
    39  
    40  type GithubProvider struct {
    41  	metav1.TypeMeta   `json:",inline"`
    42  	metav1.ObjectMeta `json:"metadata,omitempty"`
    43  	AuthProvider      `json:",inline"`
    44  
    45  	RedirectURL string `json:"redirectUrl"`
    46  }
    47  
    48  type GithubLogin struct {
    49  	GenericLogin `json:",inline"`
    50  	Code         string `json:"code" norman:"type=string,required"`
    51  }
    52  
    53  type GoogleOAuthProvider struct {
    54  	metav1.TypeMeta   `json:",inline"`
    55  	metav1.ObjectMeta `json:"metadata,omitempty"`
    56  	AuthProvider      `json:",inline"`
    57  
    58  	RedirectURL string `json:"redirectUrl"`
    59  }
    60  
    61  type GoogleOauthLogin struct {
    62  	GenericLogin `json:",inline"`
    63  	Code         string `json:"code" norman:"type=string,required"`
    64  }
    65  
    66  type ActiveDirectoryProvider struct {
    67  	metav1.TypeMeta   `json:",inline"`
    68  	metav1.ObjectMeta `json:"metadata,omitempty"`
    69  	AuthProvider      `json:",inline"`
    70  
    71  	DefaultLoginDomain string `json:"defaultLoginDomain,omitempty"`
    72  }
    73  
    74  type AzureADProvider struct {
    75  	metav1.TypeMeta   `json:",inline"`
    76  	metav1.ObjectMeta `json:"metadata,omitempty"`
    77  	AuthProvider      `json:",inline"`
    78  
    79  	RedirectURL string `json:"redirectUrl"`
    80  }
    81  
    82  type SamlProvider struct {
    83  	metav1.TypeMeta   `json:",inline"`
    84  	metav1.ObjectMeta `json:"metadata,omitempty"`
    85  	AuthProvider      `json:",inline"`
    86  
    87  	RedirectURL string `json:"redirectUrl"`
    88  }
    89  
    90  type AzureADLogin struct {
    91  	GenericLogin `json:",inline"`
    92  	Code         string `json:"code" norman:"type=string,required"`
    93  }
    94  
    95  type OpenLdapProvider struct {
    96  	metav1.TypeMeta   `json:",inline"`
    97  	metav1.ObjectMeta `json:"metadata,omitempty"`
    98  	AuthProvider      `json:",inline"`
    99  }
   100  
   101  type FreeIpaProvider struct {
   102  	metav1.TypeMeta   `json:",inline"`
   103  	metav1.ObjectMeta `json:"metadata,omitempty"`
   104  	AuthProvider      `json:",inline"`
   105  }
   106  
   107  type PingProvider struct {
   108  	SamlProvider `json:",inline"`
   109  }
   110  
   111  type ShibbolethProvider struct {
   112  	SamlProvider `json:",inline"`
   113  }
   114  
   115  type ADFSProvider struct {
   116  	SamlProvider `json:",inline"`
   117  }
   118  
   119  type KeyCloakProvider struct {
   120  	SamlProvider `json:",inline"`
   121  }
   122  
   123  type OKTAProvider struct {
   124  	SamlProvider `json:",inline"`
   125  }
   126  
   127  type SamlLoginInput struct {
   128  	FinalRedirectURL string `json:"finalRedirectUrl"`
   129  	RequestID        string `json:"requestId"`
   130  	PublicKey        string `json:"publicKey"`
   131  	ResponseType     string `json:"responseType"`
   132  }
   133  
   134  type SamlLoginOutput struct {
   135  	IdpRedirectURL string `json:"idpRedirectUrl"`
   136  }