Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/snyk/go-httpauth
"Advanced" HTTP Authentication mechanisms to be used in the golang HTTP stack
https://github.com/snyk/go-httpauth
negotiate spnego
Last synced: 5 days ago
JSON representation
"Advanced" HTTP Authentication mechanisms to be used in the golang HTTP stack
- Host: GitHub
- URL: https://github.com/snyk/go-httpauth
- Owner: snyk
- License: other
- Created: 2022-08-17T09:42:57.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-07T11:45:24.000Z (8 months ago)
- Last Synced: 2024-06-19T06:48:44.228Z (5 months ago)
- Topics: negotiate, spnego
- Language: Go
- Homepage:
- Size: 149 KB
- Stars: 6
- Watchers: 14
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# go-httpauth
## Overview
This library introduces "advanced" HTTP Authentication mechanisms to be used in the golang HTTP stack (http.Transport). While the golang HTTP stack provides support for Basic Authentication or more generally authentication mechanisms that require a single authentication message to be send. This implementation adds support for mechanisms that require multiple messages to be exchanged for authentication, like challenge response based types like NTLM.The current focus is on Proxy Authentication but future use is not limited to it.
The implementation supports automatic mechanism detection with `httpauth.AnyAuth`
Currently supported authentication mechanism:
- Negotiate (see https://www.ietf.org/rfc/rfc4559.txt)
- Kerberos (on all OS)
- NTLM (on Windows)## Usage
### Proxy Authentication
See `cmd/example1/main.go`