Compare commits

..

4 Commits

Author SHA1 Message Date
Stavros
dad0718091 fix: disable search engine indexing 2025-10-05 16:41:15 +03:00
Stavros
d4069900bc feat: autofocus totp form 2025-10-03 16:36:10 +03:00
dependabot[bot]
a54996d72d chore(deps): bump oven/bun from 1.2.22-alpine to 1.2.23-alpine (#373)
Bumps oven/bun from 1.2.22-alpine to 1.2.23-alpine.

---
updated-dependencies:
- dependency-name: oven/bun
  dependency-version: 1.2.23-alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-03 16:32:17 +03:00
Stavros
085f6257c5 fix: fix oauth group provider check 2025-09-25 22:35:44 +03:00
7 changed files with 20 additions and 16 deletions

View File

@@ -1,5 +1,5 @@
# Site builder
FROM oven/bun:1.2.22-alpine AS frontend-builder
FROM oven/bun:1.2.23-alpine AS frontend-builder
WORKDIR /frontend

View File

@@ -8,6 +8,7 @@
<link rel="shortcut icon" href="/favicon.ico" />
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
<meta name="apple-mobile-web-app-title" content="Tinyauth" />
<meta name="robots" content="noindex" />
<link rel="manifest" href="/site.webmanifest" />
<title>Tinyauth</title>
</head>

View File

@@ -44,6 +44,7 @@ export const TotpForm = (props: Props) => {
disabled={loading}
{...field}
autoComplete="one-time-code"
autoFocus
>
<InputOTPGroup>
<InputOTPSlot index={0} />

View File

@@ -147,10 +147,6 @@ func (app *BootstrapApp) Setup() error {
}
// Configured providers
babysit := map[string]string{
"google": "Google",
"github": "GitHub",
}
configuredProviders := make([]controller.Provider, 0)
for id, provider := range oauthProviders {
@@ -159,7 +155,7 @@ func (app *BootstrapApp) Setup() error {
}
if provider.Name == "" {
if name, ok := babysit[id]; ok {
if name, ok := config.OverrideProviders[id]; ok {
provider.Name = name
} else {
provider.Name = utils.Capitalize(id)

View File

@@ -65,6 +65,11 @@ type OAuthServiceConfig struct {
Name string `key:"name"`
}
var OverrideProviders = map[string]string{
"google": "Google",
"github": "GitHub",
}
// User/session related stuff
type User struct {

View File

@@ -309,12 +309,14 @@ func (auth *AuthService) IsInOAuthGroup(c *gin.Context, context config.UserConte
return true
}
if context.Provider != "generic" {
log.Debug().Msg("Not using generic provider, skipping group check")
return true
for id := range config.OverrideProviders {
if context.Provider == id {
log.Info().Str("provider", id).Msg("OAuth groups not supported for this provider")
return true
}
}
for _, userGroup := range strings.Split(context.OAuthGroups, ",") {
for userGroup := range strings.SplitSeq(context.OAuthGroups, ",") {
if utils.CheckFilter(requiredGroups, strings.TrimSpace(userGroup)) {
return true
}

View File

@@ -183,14 +183,13 @@ func GetOAuthProvidersConfig(env []string, args []string, appUrl string) (map[st
providers[name] = provider
}
// If we have google/github providers and no redirect URL babysit them
babysitProviders := []string{"google", "github"}
// If we have google/github providers and no redirect URL then set a default
for _, name := range babysitProviders {
if provider, exists := providers[name]; exists {
for id := range config.OverrideProviders {
if provider, exists := providers[id]; exists {
if provider.RedirectURL == "" {
provider.RedirectURL = appUrl + "/api/oauth/callback/" + name
providers[name] = provider
provider.RedirectURL = appUrl + "/api/oauth/callback/" + id
providers[id] = provider
}
}
}