Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
|
|
6 years ago | |
|---|---|---|
| .. | ||
| secctx | 6 years ago | |
| .gitignore | 6 years ago | |
| .travis.yml | 6 years ago | |
| LICENSE | 6 years ago | |
| README.md | 6 years ago | |
| go.mod | 6 years ago | |
| go.sum | 6 years ago | |
| userinfo.go | 6 years ago | |
| utf16.go | 6 years ago | |
| websspi_windows.go | 6 years ago | |
| win32_windows.go | 6 years ago | |
websspi will be an HTTP middleware for Golang that uses Kerberos for single sign-on (SSO) authentication of browser based clients in a Windows environment.
The main goal is to create a middleware that performs authentication of HTTP requests without the need to create or use keytab files.
The middleware will implement the scheme defined by RFC4559 (SPNEGO-based HTTP Authentication in Microsoft Windows) to exchange security tokens via HTTP headers and will use SSPI (Security Support Provider Interface) to authenticate HTTP requests.
The examples directory contains a simple web server that demonstrates how to use the package.
Before trying it, you need to prepare your environment:
Create a separate user account in active directory, under which the web server process will be running (eg. user under the domain.local domain)
Create a service principal name for the host with class HTTP:
Start Command prompt or PowerShell as domain administrator
Run the command below, replacing host.domain.local with the fully qualified domain name of the server where the web application will be running, and domain\user with the name of the account created in step 1.:
setspn -A HTTP/host.domain.local domain\user
Start the web server app under the account created in step 1.
If you are using Chrome, Edge or Internet Explorer, add the URL of the web app to the Local intranet sites (Internet Options -> Security -> Local intranet -> Sites)
Start Chrome, Edge or Internet Explorer and navigate to the URL of the web app (eg. http://host.domain.local:9000)
The web app should greet you with the name of your AD account without asking you to login. In case it doesn't, make sure that:
Local intranet zoneIntegrated Windows Authentication should be enabled in Internet Explorer (under Advanced settings)No Description
Go SVG JavaScript Vue Roff other