mirror of
				https://github.com/steveiliop56/tinyauth.git
				synced 2025-10-31 14:15:50 +00:00 
			
		
		
		
	 3397e2aa8e
			
		
	
	3397e2aa8e
	
	
	
		
			
			* refactor: move to traefik paerser for label parsing * fix: sanitize headers before adding to map * refactor: use splitn in header parser * refactor: ignore containers that failed to get inspected in docker
		
			
				
	
	
		
			54 lines
		
	
	
		
			1019 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1019 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package types
 | |
| 
 | |
| import (
 | |
| 	"time"
 | |
| 	"tinyauth/internal/oauth"
 | |
| )
 | |
| 
 | |
| // User is the struct for a user
 | |
| type User struct {
 | |
| 	Username   string
 | |
| 	Password   string
 | |
| 	TotpSecret string
 | |
| }
 | |
| 
 | |
| // Users is a list of users
 | |
| type Users []User
 | |
| 
 | |
| // OAuthProviders is the struct for the OAuth providers
 | |
| type OAuthProviders struct {
 | |
| 	Github    *oauth.OAuth
 | |
| 	Google    *oauth.OAuth
 | |
| 	Microsoft *oauth.OAuth
 | |
| }
 | |
| 
 | |
| // SessionCookie is the cookie for the session (exculding the expiry)
 | |
| type SessionCookie struct {
 | |
| 	Username    string
 | |
| 	Name        string
 | |
| 	Email       string
 | |
| 	Provider    string
 | |
| 	TotpPending bool
 | |
| 	OAuthGroups string
 | |
| }
 | |
| 
 | |
| // UserContext is the context for the user
 | |
| type UserContext struct {
 | |
| 	Username    string
 | |
| 	Name        string
 | |
| 	Email       string
 | |
| 	IsLoggedIn  bool
 | |
| 	OAuth       bool
 | |
| 	Provider    string
 | |
| 	TotpPending bool
 | |
| 	OAuthGroups string
 | |
| 	TotpEnabled bool
 | |
| }
 | |
| 
 | |
| // LoginAttempt tracks information about login attempts for rate limiting
 | |
| type LoginAttempt struct {
 | |
| 	FailedAttempts int
 | |
| 	LastAttempt    time.Time
 | |
| 	LockedUntil    time.Time
 | |
| }
 |