Categorygithub.com/webishdev/stopnik
module
0.7.8
Repository: https://github.com/webishdev/stopnik.git
Documentation: pkg.go.dev

# README

STOPnik

STOPnik

The simple and small OAuth2 | OpenId Connect server that secures applications without hassle.

STOPnik does not have any persistence layer and will only work in-memory with the clients and users defined in the configuration file (YAML). When restarted, all issued tokens will become invalid/forgotten by STOPnik.

This project was used to learn OAuth 2.0, OpenId Connect Core 1.0 and Go.

The logo mascot was mostly inspired by the nice work of gopherize.me and redrawn by hand as a vector graphic with additional body and a cool hat.

build report

STOPnik alternatives

The awesome work of other servers is very appreciated, most of them were the inspiration for this small project! ♥️

They add features like persistence and access to user directories like LDAP.

Related specifications

SpecificationsImplementation
The OAuth 2.0 Authorization FrameworkYes
Proof Key for Code Exchange by OAuth Public ClientsYes
OAuth 2.0 Token IntrospectionYes
OAuth 2.0 Token RevocationYes
JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization GrantsYes
JSON Web Token (JWT)Dependency
OAuth 2.0 Authorization Server MetadataPartially
OAuth 2.0 Device Authorization GrantPlanned
The OAuth 2.0 Authorization Framework: Bearer Token UsagePlanned
Resource Indicators for OAuth 2.0Planned
OAuth 2.0 Authorization Server Issuer IdentificationPlanned
OpenID Connect Core 1.0Partially
OpenID Connect Discovery 1.0Partially
OpenID Connect Session Management 1.0Planned
OpenID Connect Front-Channel Logout 1.0Planned

Documentation

More details about STOPnik can be found at https://stopnik.webish.dev/

Build

Requires Git and Go >=1.23 to be installed.

To build STOPnik the repository should be cloned and the build command executed.

git clone https://github.com/webishdev/stopnik.git
cd stopnik
go build github.com/webishdev/stopnik/cmd/stopnik

And then start STOPnik with

./stopnik

Test

Execute tests inside the repository root folder with

go test ./...

To get access to the HTML coverage report the following script can be executed

./test.sh html

The coverage report will be created in the .test_coverage folder

License

The project is licensed under the Apache License, Version 2.0.

# Packages

No description provided by the author
No description provided by the author