v0.7.0
Hmbown/Codewhalev0.7.0Mar 22, 2026by azophy
AI Summary
Introduced OIDC provider support, enabling authentication via various providers like Authentik, Google, and Okta, while maintaining GitHub OAuth support.
Key Highlights
- Added OIDC provider implementation for OpenID Connect authentication
- Auto-discovery of OIDC configuration via .well-known/openid-configuration
- Support for multiple OAuth providers simultaneously (GitHub + OIDC)
- Added Authentik Integration Guide
New Features
- OIDC provider implementation
- Multi-provider OAuth support
- Authentik Integration Guide
Full Release Notes
## 🎉 Major Features
### OIDC Provider Support
- ✅ Add OIDC provider implementation for OpenID Connect authentication
- ✅ Support multiple OAuth providers simultaneously (GitHub + OIDC)
- ✅ Encode provider name in OAuth state parameter for correct callback routing
- ✅ Auto-discover OIDC configuration via .well-known/openid-configuration
### Supported OIDC Providers
- Authentik (self-hosted, recommended)
- Google Workspace
- Okta
- Auth0
- Keycloak
- Microsoft Entra ID (Azure AD)
- Any OIDC-compatible provider
## 📚 Documentation
### New Guides
- **Authentik Integration Guide** - Complete step-by-step OIDC setup tutorial
- **OAuth Provider Configuration Guide** - Comprehensive OAuth/OIDC reference
### Updated Documentation
- README.md - Added OIDC provider information and links
- Configuration reference - Updated multi-provider support documentation
## 🔧 Technical Changes
### OAuth Flow Improvements
- Provider name encoded in state parameter (format: `provider:session_id`)
- Direct provider selection in callback handler (no more trial-and-error)
- Improved efficiency and reliability with multiple providers
### Configuration
```yaml
auth:
providers:
- name: github
type: github
client_id: ...
client_secret: ...
allowed_org: my-org
- name: authentik
type: oidc
issuer: https://auth.example.com/application/o/sshifu/
client_id: ...
client_secret: ...
principal_oauth_field_name: preferred_username
```
## 📦 Installation
```bash
# Using npx (no installation)
npx sshifu-server
# Or install globally
npm install -g sshifu-server
# Or via Go
go install github.com/azophy/sshifu/cmd/sshifu-server@latest
```
## 🔗 Links
- [Authentik Integration Guide](https://github.com/azophy/sshifu/blob/main/docs/guides/authentik-setup.md)
- [OAuth Provider Configuration](https://github.com/azophy/sshifu/blob/main/docs/guides/oauth-providers.md)
- [Full Changelog](https://github.com/azophy/sshifu/compare/v0.6.3...v0.7.0)
**Full commit list:** 12 commits since v0.6.3