mirror of
				https://github.com/steveiliop56/tinyauth.git
				synced 2025-11-03 23:55:44 +00:00 
			
		
		
		
	Compare commits
	
		
			1 Commits
		
	
	
		
			b5eaf05629
			...
			5095bb5e88
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					5095bb5e88 | 
@@ -147,6 +147,10 @@ func (app *BootstrapApp) Setup() error {
 | 
				
			|||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Configured providers
 | 
						// Configured providers
 | 
				
			||||||
 | 
						babysit := map[string]string{
 | 
				
			||||||
 | 
							"google": "Google",
 | 
				
			||||||
 | 
							"github": "GitHub",
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	configuredProviders := make([]controller.Provider, 0)
 | 
						configuredProviders := make([]controller.Provider, 0)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for id, provider := range oauthProviders {
 | 
						for id, provider := range oauthProviders {
 | 
				
			||||||
@@ -155,7 +159,7 @@ func (app *BootstrapApp) Setup() error {
 | 
				
			|||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if provider.Name == "" {
 | 
							if provider.Name == "" {
 | 
				
			||||||
			if name, ok := config.OverrideProviders[id]; ok {
 | 
								if name, ok := babysit[id]; ok {
 | 
				
			||||||
				provider.Name = name
 | 
									provider.Name = name
 | 
				
			||||||
			} else {
 | 
								} else {
 | 
				
			||||||
				provider.Name = utils.Capitalize(id)
 | 
									provider.Name = utils.Capitalize(id)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -65,11 +65,6 @@ type OAuthServiceConfig struct {
 | 
				
			|||||||
	Name               string   `key:"name"`
 | 
						Name               string   `key:"name"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var OverrideProviders = map[string]string{
 | 
					 | 
				
			||||||
	"google": "Google",
 | 
					 | 
				
			||||||
	"github": "GitHub",
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// User/session related stuff
 | 
					// User/session related stuff
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type User struct {
 | 
					type User struct {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -309,14 +309,12 @@ func (auth *AuthService) IsInOAuthGroup(c *gin.Context, context config.UserConte
 | 
				
			|||||||
		return true
 | 
							return true
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for id := range config.OverrideProviders {
 | 
						if context.Provider != "generic" {
 | 
				
			||||||
		if context.Provider == id {
 | 
							log.Debug().Msg("Not using generic provider, skipping group check")
 | 
				
			||||||
			log.Info().Str("provider", id).Msg("OAuth groups not supported for this provider")
 | 
					 | 
				
			||||||
		return true
 | 
							return true
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for userGroup := range strings.SplitSeq(context.OAuthGroups, ",") {
 | 
						for _, userGroup := range strings.Split(context.OAuthGroups, ",") {
 | 
				
			||||||
		if utils.CheckFilter(requiredGroups, strings.TrimSpace(userGroup)) {
 | 
							if utils.CheckFilter(requiredGroups, strings.TrimSpace(userGroup)) {
 | 
				
			||||||
			return true
 | 
								return true
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -183,13 +183,14 @@ func GetOAuthProvidersConfig(env []string, args []string, appUrl string) (map[st
 | 
				
			|||||||
		providers[name] = provider
 | 
							providers[name] = provider
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// If we have google/github providers and no redirect URL then set a default
 | 
						// If we have google/github providers and no redirect URL babysit them
 | 
				
			||||||
 | 
						babysitProviders := []string{"google", "github"}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for id := range config.OverrideProviders {
 | 
						for _, name := range babysitProviders {
 | 
				
			||||||
		if provider, exists := providers[id]; exists {
 | 
							if provider, exists := providers[name]; exists {
 | 
				
			||||||
			if provider.RedirectURL == "" {
 | 
								if provider.RedirectURL == "" {
 | 
				
			||||||
				provider.RedirectURL = appUrl + "/api/oauth/callback/" + id
 | 
									provider.RedirectURL = appUrl + "/api/oauth/callback/" + name
 | 
				
			||||||
				providers[id] = provider
 | 
									providers[name] = provider
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user