mirror of
				https://github.com/steveiliop56/tinyauth.git
				synced 2025-11-03 23:55:44 +00:00 
			
		
		
		
	Compare commits
	
		
			2 Commits
		
	
	
		
			fc7e395e66
			...
			9b76a84ee2
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					9b76a84ee2 | ||
| 
						 | 
					ed20d2cf51 | 
@@ -38,7 +38,7 @@ COPY ./cmd ./cmd
 | 
				
			|||||||
COPY ./internal ./internal
 | 
					COPY ./internal ./internal
 | 
				
			||||||
COPY --from=frontend-builder /frontend/dist ./internal/assets/dist
 | 
					COPY --from=frontend-builder /frontend/dist ./internal/assets/dist
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN mkdir -p /data
 | 
					RUN mkdir -p data
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN CGO_ENABLED=0 go build -ldflags "-s -w -X tinyauth/internal/config.Version=${VERSION} -X tinyauth/internal/config.CommitHash=${COMMIT_HASH} -X tinyauth/internal/config.BuildTimestamp=${BUILD_TIMESTAMP}" 
 | 
					RUN CGO_ENABLED=0 go build -ldflags "-s -w -X tinyauth/internal/config.Version=${VERSION} -X tinyauth/internal/config.CommitHash=${COMMIT_HASH} -X tinyauth/internal/config.BuildTimestamp=${BUILD_TIMESTAMP}" 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -112,6 +112,10 @@ func (c *rootCmd) run(cmd *cobra.Command, args []string) {
 | 
				
			|||||||
	log.Logger = log.Level(zerolog.Level(utils.GetLogLevel(conf.LogLevel)))
 | 
						log.Logger = log.Level(zerolog.Level(utils.GetLogLevel(conf.LogLevel)))
 | 
				
			||||||
	log.Info().Str("version", strings.TrimSpace(config.Version)).Msg("Starting Tinyauth")
 | 
						log.Info().Str("version", strings.TrimSpace(config.Version)).Msg("Starting Tinyauth")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if log.Logger.GetLevel() == zerolog.TraceLevel {
 | 
				
			||||||
 | 
							log.Warn().Msg("Log level set to trace, this will log sensitive information!")
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	app := bootstrap.NewBootstrapApp(conf)
 | 
						app := bootstrap.NewBootstrapApp(conf)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	err = app.Setup()
 | 
						err = app.Setup()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -84,6 +84,8 @@ func (controller *ProxyController) proxyHandler(c *gin.Context) {
 | 
				
			|||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						log.Trace().Interface("labels", labels).Msg("Labels for resource")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	clientIP := c.ClientIP()
 | 
						clientIP := c.ClientIP()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if controller.auth.IsBypassedIP(labels.IP, clientIP) {
 | 
						if controller.auth.IsBypassedIP(labels.IP, clientIP) {
 | 
				
			||||||
@@ -150,6 +152,8 @@ func (controller *ProxyController) proxyHandler(c *gin.Context) {
 | 
				
			|||||||
		userContext = context
 | 
							userContext = context
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						log.Trace().Interface("context", userContext).Msg("User context from request")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if userContext.Provider == "basic" && userContext.TotpEnabled {
 | 
						if userContext.Provider == "basic" && userContext.TotpEnabled {
 | 
				
			||||||
		log.Debug().Msg("User has TOTP enabled, denying basic auth access")
 | 
							log.Debug().Msg("User has TOTP enabled, denying basic auth access")
 | 
				
			||||||
		userContext.IsLoggedIn = false
 | 
							userContext.IsLoggedIn = false
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -318,6 +318,7 @@ func (auth *AuthService) IsInOAuthGroup(c *gin.Context, context config.UserConte
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	for userGroup := range strings.SplitSeq(context.OAuthGroups, ",") {
 | 
						for userGroup := range strings.SplitSeq(context.OAuthGroups, ",") {
 | 
				
			||||||
		if utils.CheckFilter(requiredGroups, strings.TrimSpace(userGroup)) {
 | 
							if utils.CheckFilter(requiredGroups, strings.TrimSpace(userGroup)) {
 | 
				
			||||||
 | 
								log.Trace().Str("group", userGroup).Str("required", requiredGroups).Msg("User group matched")
 | 
				
			||||||
			return true
 | 
								return true
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -89,12 +89,12 @@ func (docker *DockerService) GetLabels(appDomain string) (config.App, error) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		for appName, appLabels := range labels.Apps {
 | 
							for appName, appLabels := range labels.Apps {
 | 
				
			||||||
			if appLabels.Config.Domain == appDomain {
 | 
								if appLabels.Config.Domain == appDomain {
 | 
				
			||||||
				log.Debug().Str("id", inspect.ID).Msg("Found matching container by domain")
 | 
									log.Debug().Str("id", inspect.ID).Str("name", inspect.Name).Msg("Found matching container by domain")
 | 
				
			||||||
				return appLabels, nil
 | 
									return appLabels, nil
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			if strings.TrimPrefix(inspect.Name, "/") == appName {
 | 
								if strings.TrimPrefix(inspect.Name, "/") == appName {
 | 
				
			||||||
				log.Debug().Str("id", inspect.ID).Msg("Found matching container by app name")
 | 
									log.Debug().Str("id", inspect.ID).Str("name", inspect.Name).Msg("Found matching container by app name")
 | 
				
			||||||
				return appLabels, nil
 | 
									return appLabels, nil
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -12,6 +12,7 @@ import (
 | 
				
			|||||||
	"time"
 | 
						"time"
 | 
				
			||||||
	"tinyauth/internal/config"
 | 
						"tinyauth/internal/config"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						"github.com/rs/zerolog/log"
 | 
				
			||||||
	"golang.org/x/oauth2"
 | 
						"golang.org/x/oauth2"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -110,6 +111,8 @@ func (generic *GenericOAuthService) Userinfo() (config.Claims, error) {
 | 
				
			|||||||
		return user, err
 | 
							return user, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						log.Trace().Str("body", string(body)).Msg("Userinfo response body")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	err = json.Unmarshal(body, &user)
 | 
						err = json.Unmarshal(body, &user)
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return user, err
 | 
							return user, err
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user