The reimplemented OIDC (OpenID Connect) library, based on the zitadel/oidc library, includes both client (RP) and (OP) functionality.
It is easier to use and more extensible than the original zitadel/oidc library. This library appears to be very useful, especially for applications that need to implement the OIDC standard.
Have you already used this library in your application? If you have any questions or need further assistance, please let me know.
The most important packages of the library:
/ecode Definition and Implementation of Error Message Optimization /log Definition and Implementation of Logger /rp definition and implementation of an OIDC Relying Party (client) /example /client RP demonstrating authorization code flow using various authentication methods (code, PKCE, JWT profile) /server examples of an OpenID Provider implementations (including dynamic) with some very basic login UI op.go definition and implementation of an OIDC OpenID Provider (server)
The library primarily depends on the third-party library "go-jose/v3".
The HTTP processing section uses an interface-based approach , which can be extended as needed.
When starting OP, implement Config.OpenIDWrapper. By default, github. com/xslass/x-oidc/example/server/httpwrapper can be used. Implementation based on net/HTTP.
github.com/go-jose/go-jose/v3 v3.0.0
github.com/google/uuid v1.3.0
golang.org/x/text v0.9.0
Special thanks to zitadel/oidc. This project referred to the redesign and implementation of interface functions for zitadel/oidc.
Made with contrib.rocks.