mirror of
https://github.com/steveiliop56/tinyauth.git
synced 2026-05-10 14:28:12 +00:00
4f7335ed73
* feat: add new logger * refactor: use one struct for context handling and cancellation * refactor: rework logging and config in controllers * refactor: rework logging and config in middlewares * refactor: rework logging and cancellation in services * refactor: rework cli logging * fix: improve logging in routines * feat: use sync groups for better cancellation * refactor: simplify middleware, controller and service init * tests: fix controller tests * tests: use require instead of assert where previous step is required * tests: fix middleware tests * tests: fix service tests * tests: fix context tests * fix: fix typos * feat: add option to enable or disable concurrent listeners * fix: assign public key correctly in oidc server * tests: fix don't try to test logger with char size * fix: coderabbit comments * tests: use filepath join instead of path join * fix: ensure unix socket shutdown doesn't run twice * chore: remove temp lint file
26 lines
850 B
Go
26 lines
850 B
Go
package service
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/tinyauthapp/tinyauth/internal/model"
|
|
"golang.org/x/oauth2/endpoints"
|
|
)
|
|
|
|
func newGoogleOAuthService(config model.OAuthServiceConfig, ctx context.Context) *OAuthService {
|
|
scopes := []string{"openid", "email", "profile"}
|
|
config.Scopes = scopes
|
|
config.AuthURL = endpoints.Google.AuthURL
|
|
config.TokenURL = endpoints.Google.TokenURL
|
|
config.UserinfoURL = "https://openidconnect.googleapis.com/v1/userinfo"
|
|
return NewOAuthService(config, "google", ctx)
|
|
}
|
|
|
|
func newGitHubOAuthService(config model.OAuthServiceConfig, ctx context.Context) *OAuthService {
|
|
scopes := []string{"read:user", "user:email"}
|
|
config.Scopes = scopes
|
|
config.AuthURL = endpoints.GitHub.AuthURL
|
|
config.TokenURL = endpoints.GitHub.TokenURL
|
|
return NewOAuthService(config, "github", ctx).WithUserinfoExtractor(githubExtractor)
|
|
}
|