A simple Go web application that serves a logon page integrated with Duo 2FA.
Change to the "example" directory
cd example
Install the demo requirements:
go mod tidy
Then, create a Web SDK application in the Duo Admin Panel. See https://duo.com/docs/protecting-applications for more details.
- Copy the Client ID, Client Secret, and API Hostname values for your
Web SDKapplication into theduo_config.jsonfile. - Start the app.
go run main.go - Navigate to http://localhost:8080.
- Log in with the user you would like to enroll in Duo or with an already enrolled user (any password will work).
A dockerfile is included to easily run the demo app with a known working Go configuration.
- Copy the Client ID, Client Secret, and API Hostname values for your
Web SDKapplication into theduo_config.jsonfile. - Build the docker image:
docker build -t duo_golang_example -f dockerfile .. - Run the docker container:
docker run -it -p 8080:8080 duo_golang_example - Navigate to http://localhost:8080.
- Log in with the user you would like to enroll in Duo or with an already enrolled user (any password will work).