1
0
Fork 0

🤣添加应用tinyauth

This commit is contained in:
LiuShen 2025-09-16 13:48:31 +08:00
parent 50db91eb78
commit 1aa6f56721
5 changed files with 362 additions and 0 deletions

210
tinyauth/3.6.2/data.yml Normal file
View File

@ -0,0 +1,210 @@
additionalProperties:
formFields:
- default: 14389
envKey: PANEL_APP_PORT_HTTP
labelEn: HTTP Port
labelZh: HTTP 端口
label:
en: HTTP Port
ja: ポート
ms: Port
pt-br: Porta
ru: Порт
ko: 포트
zh: HTTP 端口
zh-Hant: HTTP 連接埠
required: true
rule: paramPort
type: number
- default: ""
envKey: PANEL_TINYAUTH_APP_URL
labelEn: App URL
labelZh: 应用地址
label:
en: App URL
ja: アプリURL
ms: URL Aplikasi
pt-br: URL do Aplicativo
ru: URL приложения
ko: 앱 URL
zh: 应用地址
zh-Hant: 應用地址
required: false
type: text
- default: ""
envKey: PANEL_TINYAUTH_SECRET
labelEn: Secret
labelZh: 密钥
label:
en: Secret
ja: シークレット
ms: Rahsia
pt-br: Segredo
ru: Секрет
ko: 비밀
zh: 密钥
zh-Hant: 密鑰
required: false
type: password
- default: "86400"
envKey: PANEL_TINYAUTH_SESSION_EXPIRY
labelEn: Session Expiry (seconds)
labelZh: 会话过期时间(秒)
label:
en: Session Expiry (seconds)
ja: セッション有効期限(秒)
ms: Tamat Sesi (saat)
pt-br: Expiração da Sessão (segundos)
ru: Время жизни сессии (секунды)
ko: 세션 만료 (초)
zh: 会话过期时间(秒)
zh-Hant: 會話過期時間(秒)
required: false
type: number
- default: "TinyAuth"
envKey: PANEL_TINYAUTH_APP_TITLE
labelEn: App Title
labelZh: 应用标题
label:
en: App Title
ja: アプリタイトル
ms: Tajuk Aplikasi
pt-br: Título do Aplicativo
ru: Заголовок приложения
ko: 앱 제목
zh: 应用标题
zh-Hant: 應用標題
required: false
type: text
- default: ""
envKey: PANEL_TINYAUTH_OAUTH_AUTO_REDIRECT
labelEn: Auto Redirect Provider
labelZh: 自动跳转提供商
label:
en: Auto Redirect Provider
ja: 自動リダイレクトプロバイダー
ms: Penyedia Pengalihan Automatik
pt-br: Provedor de Redirecionamento Automático
ru: Автоматический редирект провайдера
ko: 자동 리디렉션 제공자
zh: 自动跳转提供商
zh-Hant: 自動跳轉提供商
required: false
type: select
values:
- label: None
value: "none"
- label: GitHub
value: "github"
- label: Google
value: "google"
- label: Generic
value: "generic"
- default: ""
envKey: PANEL_TINYAUTH_BACKGROUND_IMAGE
labelEn: Background Image
labelZh: 背景图片
label:
en: Background Image
ja: 背景画像
ms: Imej Latar Belakang
pt-br: Imagem de Fundo
ru: Фоновое изображение
ko: 배경 이미지
zh: 背景图片
zh-Hant: 背景圖片
required: false
type: text
# GitHub
- default: ""
envKey: PANEL_TINYAUTH_GITHUB_CLIENT_ID
labelEn: GitHub Client ID
labelZh: GitHub 客户端ID
required: false
type: text
- default: ""
envKey: PANEL_TINYAUTH_GITHUB_CLIENT_SECRET
labelEn: GitHub Client Secret
labelZh: GitHub 客户端密钥
required: false
type: password
- default: ""
envKey: PANEL_TINYAUTH_GITHUB_REDIRECT_URI
labelEn: GitHub Redirect URI
labelZh: GitHub 回调地址
required: false
type: text
# Google
- default: ""
envKey: PANEL_TINYAUTH_GOOGLE_CLIENT_ID
labelEn: Google Client ID
labelZh: Google 客户端ID
required: false
type: text
- default: ""
envKey: PANEL_TINYAUTH_GOOGLE_CLIENT_SECRET
labelEn: Google Client Secret
labelZh: Google 客户端密钥
required: false
type: password
- default: ""
envKey: PANEL_TINYAUTH_GOOGLE_REDIRECT_URI
labelEn: Google Redirect URI
labelZh: Google 回调地址
required: false
type: text
# Generic
- default: ""
envKey: PANEL_TINYAUTH_GENERIC_NAME
labelEn: Generic Provider Name
labelZh: 通用提供商名称
required: false
type: text
- default: ""
envKey: PANEL_TINYAUTH_GENERIC_CLIENT_ID
labelEn: Generic Client ID
labelZh: 通用客户端ID
required: false
type: text
- default: ""
envKey: PANEL_TINYAUTH_GENERIC_CLIENT_SECRET
labelEn: Generic Client Secret
labelZh: 通用客户端密钥
required: false
type: password
- default: ""
envKey: PANEL_TINYAUTH_GENERIC_AUTH_URL
labelEn: Generic Auth URL
labelZh: 通用认证地址
required: false
type: text
- default: ""
envKey: PANEL_TINYAUTH_GENERIC_TOKEN_URL
labelEn: Generic Token URL
labelZh: 通用令牌地址
required: false
type: text
- default: ""
envKey: PANEL_TINYAUTH_GENERIC_USER_URL
labelEn: Generic User Info URL
labelZh: 通用用户信息地址
required: false
type: text

View File

@ -0,0 +1,42 @@
services:
tinyauth:
image: ghcr.io/tinyauth/tinyauth:v3.6.2
container_name: ${CONTAINER_NAME}
environment:
# ---- 通用配置 ----
- APP_URL=${PANEL_TINYAUTH_APP_URL}
- SECRET=${PANEL_TINYAUTH_SECRET}
- SESSION_EXPIRY=${PANEL_TINYAUTH_SESSION_EXPIRY}
- APP_TITLE=${PANEL_TINYAUTH_APP_TITLE}
- OAUTH_AUTO_REDIRECT=${PANEL_TINYAUTH_OAUTH_AUTO_REDIRECT}
- BACKGROUND_IMAGE=${PANEL_TINYAUTH_BACKGROUND_IMAGE}
# ---- GitHub ----
- GITHUB_CLIENT_ID=${PANEL_TINYAUTH_GITHUB_CLIENT_ID}
- GITHUB_CLIENT_SECRET=${PANEL_TINYAUTH_GITHUB_CLIENT_SECRET}
- GITHUB_REDIRECT_URI=${PANEL_TINYAUTH_GITHUB_REDIRECT_URI}
# ---- Google ----
- GOOGLE_CLIENT_ID=${PANEL_TINYAUTH_GOOGLE_CLIENT_ID}
- GOOGLE_CLIENT_SECRET=${PANEL_TINYAUTH_GOOGLE_CLIENT_SECRET}
- GOOGLE_REDIRECT_URI=${PANEL_TINYAUTH_GOOGLE_REDIRECT_URI}
# ---- Generic (示例 Linux.Do) ----
- GENERIC_NAME=${PANEL_TINYAUTH_GENERIC_NAME}
- GENERIC_CLIENT_ID=${PANEL_TINYAUTH_GENERIC_CLIENT_ID}
- GENERIC_CLIENT_SECRET=${PANEL_TINYAUTH_GENERIC_CLIENT_SECRET}
- GENERIC_AUTH_URL=${PANEL_TINYAUTH_GENERIC_AUTH_URL}
- GENERIC_TOKEN_URL=${PANEL_TINYAUTH_GENERIC_TOKEN_URL}
- GENERIC_USER_URL=${PANEL_TINYAUTH_GENERIC_USER_URL}
ports:
- "${PANEL_APP_PORT_HTTP}:3000"
labels:
createdBy: "Apps"
networks:
- 1panel-network
restart: always
networks:
1panel-network:
external: true

78
tinyauth/README.md Normal file
View File

@ -0,0 +1,78 @@
# TinyAuth
TinyAuth 是一个轻量级的 OAuth2 / OIDC 认证代理,适合为已有的 Web 应用、面板或服务添加登录保护。你可以将它部署在应用之前,通过标准的身份提供商(如 Casdoor、Keycloak、Auth0 等实现单点登录SSO
## 功能特性
* 支持 OAuth2 / OpenID Connect 协议
* 支持多身份提供商配置
* 可保护现有 Web 服务(无需修改应用本身)
* 简单的反向代理模式
* 支持多种回调和重定向策略
## 快速开始
### 1. 部署 TinyAuth
使用 Docker 运行:
```bash
docker run -d \
--name=tinyauth \
-p 8080:8080 \
-v $(pwd)/config.yml:/app/config.yml \
ghcr.io/tinyauth/tinyauth:latest
```
### 2. 配置示例
`config.yml` 中配置认证提供商(例如 Casdoor
```yaml
server:
port: 8080
providers:
- id: casdoor
name: Casdoor
client_id: your-client-id
client_secret: your-client-secret
issuer: https://auth.example.com
redirect_url: https://tinyauth.example.com/callback
```
### 3. Nginx 反向代理示例
```nginx
server {
listen 80;
server_name app.example.com;
location / {
proxy_pass http://127.0.0.1:8080;
}
}
```
### 4. 登录流程
1. 访问受保护的应用(如 `app.example.com`
2. TinyAuth 会跳转到认证提供商(如 Casdoor登录
3. 登录成功后跳转回应用
## 配置参数
常见参数:
| 参数 | 描述 |
| --------------- | ----------------- |
| `client_id` | OAuth2 客户端 ID |
| `client_secret` | OAuth2 客户端密钥 |
| `issuer` | 身份提供商地址OIDC 发行者) |
| `redirect_url` | 登录成功后的回调地址 |
## 参考链接
* [TinyAuth 文档](https://tinyauth.app/docs)
* [OAuth2 Proxy](https://oauth2-proxy.github.io/oauth2-proxy/)(类似工具)
* [Casdoor](https://casdoor.org/)(身份提供商示例)

32
tinyauth/data.yml Normal file
View File

@ -0,0 +1,32 @@
name: TinyAuth
tags:
- 开发工具
- 安全
title: 轻量级OAuth2/OIDC认证代理支持多身份提供商的统一登录解决方案
description: 一个轻量级的OAuth2和OIDC认证代理工具常用于在现有Web服务前添加统一登录认证。
additionalProperties:
key: tinyauth
name: TinyAuth
tags:
- DevTool
- Security
shortDescZh: 轻量级OAuth2/OIDC认证代理支持多身份提供商的一站式登录认证
shortDescEn: Lightweight OAuth2/OIDC authentication proxy with multi-provider SSO support
type: website
crossVersionUpdate: true
limit: 0
website: https://tinyauth.app/
github: https://github.com/tinyauth/tinyauth
document: https://tinyauth.app/docs/
description:
en: A lightweight reverse proxy and authentication middleware supporting multiple OAuth2 and OpenID Connect providers, ideal for securing existing web services with SSO.
zh: 一个轻量级的反向代理与认证中间件支持多种OAuth2和OIDC身份提供商为现有Web服务提供统一登录保护。
zh-Hant: 一個輕量級的反向代理與認證中介軟體支援多種OAuth2和OIDC身份提供商為既有Web服務提供單一登入保護。
ja: 複数のOAuth2およびOIDCプロバイダーに対応した軽量認証プロキシで、既存のWebサービスにSSO保護を追加可能。
ms: Proksi pengesahan ringan yang menyokong penyedia OAuth2 dan OIDC pelbagai, sesuai untuk melindungi perkhidmatan web sedia ada dengan SSO.
pt-br: Proxy de autenticação leve que suporta múltiplos provedores OAuth2 e OIDC, adequado para proteger serviços web existentes com SSO.
ru: Легковесный обратный прокси и провайдер аутентификации, поддерживающий OAuth2 и OIDC, обеспечивающий единую точку входа для существующих веб-сервисов.
ko: 다양한 OAuth2 및 OIDC 제공자를 지원하는 경량 인증 프록시로, 기존 웹 서비스에 단일 로그인 보호를 제공합니다.
architectures:
- amd64
- arm64

BIN
tinyauth/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB