feat: HR Portal - Complete Multi-Tenant System with Redis Session Storage
Major Features: - ✅ Multi-tenant architecture (tenant isolation) - ✅ Employee CRUD with lifecycle management (onboarding/offboarding) - ✅ Department tree structure with email domain management - ✅ Company info management (single-record editing) - ✅ System functions CRUD (permission management) - ✅ Email account management (multi-account per employee) - ✅ Keycloak SSO integration (auth.lab.taipei) - ✅ Redis session storage (10.1.0.254:6379) - Solves Cookie 4KB limitation - Cross-system session sharing - Sliding expiration (8 hours) - Automatic token refresh Technical Stack: Backend: - FastAPI + SQLAlchemy - PostgreSQL 16 (10.1.0.20:5433) - Keycloak Admin API integration - Docker Mailserver integration (SSH) - Alembic migrations Frontend: - Next.js 14 (App Router) - NextAuth 4 with Keycloak Provider - Redis session storage (ioredis) - Tailwind CSS Infrastructure: - Redis 7 (10.1.0.254:6379) - Session + Cache - Keycloak 26.1.0 (auth.lab.taipei) - Docker Mailserver (10.1.0.254) Architecture Highlights: - Session管理由 Keycloak + Redis 統一控制 - 支援多系統 (HR/WebMail/Calendar/Drive/Office) 共享 session - Token 自動刷新,異質服務整合 - 未來可無縫遷移到雲端 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
43
scripts/SETUP-SSH-KEY-EASY.txt
Normal file
43
scripts/SETUP-SSH-KEY-EASY.txt
Normal file
@@ -0,0 +1,43 @@
|
||||
========================================
|
||||
SSH 免密碼登入設定 (超簡單版)
|
||||
========================================
|
||||
|
||||
只需要 3 步驟,1 分鐘完成!
|
||||
|
||||
========================================
|
||||
步驟 1: 在 Windows PowerShell 執行
|
||||
========================================
|
||||
|
||||
# 檢查是否已有 SSH 金鑰
|
||||
if (Test-Path "$env:USERPROFILE\.ssh\id_rsa.pub") {
|
||||
Write-Host "SSH 金鑰已存在!" -ForegroundColor Green
|
||||
Get-Content "$env:USERPROFILE\.ssh\id_rsa.pub"
|
||||
} else {
|
||||
Write-Host "正在生成 SSH 金鑰..." -ForegroundColor Yellow
|
||||
ssh-keygen -t rsa -b 4096 -f "$env:USERPROFILE\.ssh\id_rsa" -N ""
|
||||
Write-Host "金鑰生成完成!" -ForegroundColor Green
|
||||
Get-Content "$env:USERPROFILE\.ssh\id_rsa.pub"
|
||||
}
|
||||
|
||||
========================================
|
||||
步驟 2: 上傳公鑰到 Ubuntu Server
|
||||
========================================
|
||||
|
||||
# 執行這一行命令 (需要輸入密碼最後一次)
|
||||
type $env:USERPROFILE\.ssh\id_rsa.pub | ssh ubuntu@10.1.0.254 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && echo '========== SSH 金鑰設定完成! =========='"
|
||||
|
||||
========================================
|
||||
步驟 3: 測試免密碼登入
|
||||
========================================
|
||||
|
||||
# 測試 (應該不用輸入密碼)
|
||||
ssh ubuntu@10.1.0.254 "echo '免密碼登入成功! 🎉'"
|
||||
|
||||
========================================
|
||||
完成!
|
||||
========================================
|
||||
|
||||
之後所有操作都可以全自動執行了!
|
||||
|
||||
回來告訴我「設定完成」,我就能自動幫你執行所有任務! 🚀
|
||||
========================================
|
||||
Reference in New Issue
Block a user