• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

go-pkgz / auth
85%

Build:
DEFAULT BRANCH: master
Repo Added 26 Dec 2018 08:17AM UTC
Files 25
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH master
branch: master
CHANGE BRANCH
x
Reset
  • master
  • allowed-provider-check
  • apple-reponse-mode-fix
  • aud-secrets
  • ava-factory
  • chore/go-fix
  • configurable-microsoft-tenant
  • cookie-domain
  • custom-dev-host
  • custom-dev-port
  • dependabot/go_modules/_example/github.com/go-chi/chi/v5-5.2.2
  • dependabot/go_modules/_example/golang.org/x/crypto-0.17.0
  • dependabot/go_modules/_example/golang.org/x/image-0.38.0
  • dependabot/go_modules/_example/golang.org/x/image-0.5.0
  • dependabot/go_modules/_example/golang.org/x/net-0.17.0
  • dependabot/go_modules/_example/golang.org/x/net-0.7.0
  • dependabot/go_modules/golang.org/x/crypto-0.31.0
  • dependabot/go_modules/golang.org/x/image-0.38.0
  • dependabot/go_modules/v2/github.com/golang-jwt/jwt/v5-5.2.2
  • dependabot/go_modules/v2/golang.org/x/crypto-0.31.0
  • dependabot/go_modules/v2/golang.org/x/crypto-0.45.0
  • dependabot/go_modules/v2/golang.org/x/net-0.33.0
  • dependabot/go_modules/v2/golang.org/x/net-0.36.0
  • direct-custom-id
  • dverhoturov/telegram_fix
  • email-sender
  • feat/csrf-middleware
  • feature/custom-error-handler
  • fix-anon
  • fix-content-type-header
  • fix-oauth-from-open-redirect
  • fix-oauth-sendjwtheader
  • fix-providers-names
  • fix/admin-passwd-log-leak
  • fix/apple-id-token-iss-aud
  • fix/apple-log-redact-token-response
  • fix/dev-custom-bind-localhost
  • fix/email-sender-redact-body
  • fix/panic-save-ava-nil
  • fix/telegram-redact-bot-token-in-avatar-url
  • fix/v1-from-redirect-validator
  • fix/verify-replay
  • fix/verify-replay-typed-nil-followup
  • followups/security-review
  • go1_20
  • jwt-header
  • microsoft
  • migrate-example-to-routegroup
  • no-ava
  • official-mongo-drvier
  • paskal/HttpOnly
  • paskal/add_common_processor
  • paskal/avatar_return_proper_content_type
  • paskal/bump_ci_go_version
  • paskal/bump_dep
  • paskal/bump_go_modules
  • paskal/bump_modules
  • paskal/double_close
  • paskal/email_module
  • paskal/facelift
  • paskal/fix_actions_test
  • paskal/fix_apple_key_panic
  • paskal/fix_custom_server
  • paskal/fix_error
  • paskal/fix_golangcilint
  • paskal/fix_lint_report
  • paskal/fix_send_jwt_header
  • paskal/google_auth_doc
  • paskal/improve_telegram
  • paskal/modules_bump
  • paskal/mongodb
  • paskal/moq
  • paskal/new_errors
  • paskal/plain_text
  • paskal/switch_to_v2
  • paskal/sync_v2
  • paskal/telegram_site_id
  • paskal/tg_username
  • paskal/token_generation_instructions
  • paskal/update-dependencies
  • paskal/update-modules
  • paskal/update_modules
  • paskal/update_pkcs8
  • paskal/v2
  • paskal/v2_golangcilint
  • paskal/v2_jwt5
  • rbac
  • refs/tags/v0.10.0
  • refs/tags/v0.10.1
  • refs/tags/v0.10.2
  • refs/tags/v0.11.0
  • refs/tags/v0.12.0
  • refs/tags/v0.12.1
  • refs/tags/v1.13.0
  • refs/tags/v1.13.1
  • refs/tags/v1.14.0
  • refs/tags/v1.15.0
  • refs/tags/v1.16.0
  • refs/tags/v1.17.0
  • refs/tags/v1.18.0
  • refs/tags/v1.19.0
  • refs/tags/v1.19.1
  • refs/tags/v1.20.0
  • refs/tags/v1.21.0
  • refs/tags/v1.22.0
  • refs/tags/v1.22.1
  • refs/tags/v1.23.0
  • refs/tags/v1.24.0
  • refs/tags/v1.24.1
  • refs/tags/v1.24.2
  • refs/tags/v1.25.1
  • refs/tags/v1.25.2
  • refs/tags/v1.25.3
  • refs/tags/v1.5.1
  • refs/tags/v2.0.0
  • refs/tags/v2.1.0
  • refs/tags/v2.1.1
  • refs/tags/v2.1.2
  • refs/tags/v2.1.3
  • remove-bluemonday
  • samesite
  • sanitize-verifyed
  • update-dependencies-2026-04
  • update-dependencies-dec2024
  • update-deps-and-golangci-v2
  • upgrade-repeater-v2
  • v0.8.0
  • v0.8.1
  • v0.8.2
  • v0.8.3
  • v0.9.0
  • verify-avatar

10 May 2026 04:58AM UTC coverage: 85.323% (+0.1%) from 85.199%
25620289937

push

github

umputun
fix(verify): close service-level typed-nil store + adapter-author guidance

Followups to #281 (verify replay protection) raised on the post-merge
review. None blocking, all small.

1. Service-level typed-nil VerifConfirmationStoreFunc guard. The
   handler-level guard added in round 2 normalizes a typed-nil func to
   nil, but the AddVerifProvider check at auth.go was still a plain
   `s.opts.VerifConfirmationStore != nil` test. A typed-nil
   VerifConfirmationStoreFunc is a non-nil interface wrapping a nil
   func, so it survived that check, the in-memory default was skipped,
   and at redemption the handler's typed-nil guard normalized it to
   nil — net result: a user who wrote
   `Opts{VerifConfirmationStore: VerifConfirmationStoreFunc(nil)}`
   got neither their func nor the default, and replay protection was
   silently disabled for that exact configuration.

   Same shape as the *avatar.Proxy typed-nil case fixed in #286 with a
   different consequence (silent loss of protection vs panic). Apply
   the same shape of guard one layer up. New regression test
   TestService_AddVerifProvider_TypedNilStoreFuncFallsBackToDefault in
   both v1 and v2.

2. gofmt -w on auth.go / v2/auth.go. The verifConfirmStoreO ->
   verifConfirmStoreOnce rename in #281 made the field longer than the
   surrounding column alignment. Cosmetic; CI doesn't enforce gofmt
   but a noisy IDE-on-save diff for the next contributor.

3. scrubTokenFromRequest unit test (TestScrubTokenFromRequest) in both
   v1 and v2 — covers the defensive early-return that coveralls flagged
   as uncovered after #281 (token-missing returns r unchanged, nil r
   returns nil, token-present returns redacted clone with other query
   params preserved).

4. Adapter-author guidance on VerifConfirmationStore.MarkUsed godoc:
   tells external Redis/DB adapter authors not to embed the supplied
   key in returned errors, since the handler logs err on the
   fail-closed branch and the key is the SHA-256 o... (continued)

10 of 10 new or added lines in 1 file covered. (100.0%)

2988 of 3502 relevant lines covered (85.32%)

8.18 hits per line

Relevant lines Covered
Build:
Build:
3502 RELEVANT LINES 2988 COVERED LINES
8.18 HITS PER LINE
Source Files on master
  • Tree
  • List 25
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
25620289937 master fix(verify): close service-level typed-nil store + adapter-author guidance Followups to #281 (verify replay protection) raised on the post-merge review. None blocking, all small. 1. Service-level typed-nil VerifConfirmationStoreFunc guard. The ... push 10 May 2026 05:00AM UTC umputun github
85.32
25620289928 master fix(verify): close service-level typed-nil store + adapter-author guidance Followups to #281 (verify replay protection) raised on the post-merge review. None blocking, all small. 1. Service-level typed-nil VerifConfirmationStoreFunc guard. The ... push 10 May 2026 05:00AM UTC umputun github
85.29
25606477506 master fix(verify): one-shot consumption of email confirmation tokens The email confirmation JWT issued by VerifyHandler.sendConfirmation was only protected by its 30-minute expiry: any party who could read the confirmation link (forwarded email, mail-g... push 09 May 2026 04:52PM UTC umputun github
85.2
25606477509 master fix(verify): one-shot consumption of email confirmation tokens The email confirmation JWT issued by VerifyHandler.sendConfirmation was only protected by its 30-minute expiry: any party who could read the confirmation link (forwarded email, mail-g... push 09 May 2026 04:52PM UTC umputun github
85.23
25606245315 master fix(apple): validate id_token iss and aud on Sign in with Apple After ParseWithClaims succeeded the Apple handler accepted any token Apple had signed, regardless of which Sign-in-with-Apple client it was issued to. The relying party MUST verify i... push 09 May 2026 04:41PM UTC umputun github
85.0
25606245284 master fix(apple): validate id_token iss and aud on Sign in with Apple After ParseWithClaims succeeded the Apple handler accepted any token Apple had signed, regardless of which Sign-in-with-Apple client it was issued to. The relying party MUST verify i... push 09 May 2026 04:41PM UTC umputun github
85.03
25592801771 master fix(telegram): never expose bot token in avatar URL tgAPI.Avatar returned a URL with the bot token embedded in its path: https://api.telegram.org/file/bot{TOKEN}/photos/file_X.jpg The token is a bearer credential for the entire bot API. The... push 09 May 2026 05:24AM UTC umputun github
84.97
25592801746 master fix(telegram): never expose bot token in avatar URL tgAPI.Avatar returned a URL with the bot token embedded in its path: https://api.telegram.org/file/bot{TOKEN}/photos/file_X.jpg The token is a bearer credential for the entire bot API. The... push 09 May 2026 05:24AM UTC umputun github
84.93
25592713665 master fix(provider): backport "from" redirect validator to v1 (sibling of #275) The "from" query parameter accepted by oauth1/oauth2/apple/verify login handlers was stored verbatim in the handshake JWT and used as the redirect target after a successful... push 09 May 2026 05:20AM UTC umputun github
84.9
25592713657 master fix(provider): backport "from" redirect validator to v1 (sibling of #275) The "from" query parameter accepted by oauth1/oauth2/apple/verify login handlers was stored verbatim in the handshake JWT and used as the redirect target after a successful... push 09 May 2026 05:20AM UTC umputun github
84.94
See All Builds (1045)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc