# BIORI BIOTECH · Windows 授权访问方案

## 现有架构 → 目标架构

```
当前: Mac(Hermes) + NAS(存文件) → Tailscale → 总经理
目标: Mac(Hermes) → Windows(服务器) → Tailscale ACL → 指定人员
```

---

## 方案对比

| | 方案A: 轻量HTTP | 方案B: IIS专业 | 方案C: Docker |
|--|:--:|:--:|:--:|
| 部署时间 | 10分钟 | 30分钟 | 20分钟 |
| 授权粒度 | Tailscale ACL | Windows域账户 | 两者均可 |
| 性能 | 中 | 高 | 高 |
| 维护 | 极低 | 低 | 中 |
| 文件同步 | 手动/脚本 | 手动/脚本 | 自动挂载 |

### 推荐：方案A（轻量HTTP + Tailscale ACL）

**为什么**：10分钟部署、零配置维护、Tailscale ACL 精准控制谁能访问。
**前提**：Windows 安装 Python 3 + Tailscale

---

## 方案A 实施步骤

### 第一步：Windows 准备

```powershell
# 1. 安装 Python 3（如未安装）
winget install Python.Python.3.12

# 2. 安装 Tailscale
winget install tailscale.tailscale
# 打开 Tailscale → 登录同一 GitHub 账号 → 加入 tailnet
```

### 第二步：部署文件

将以下文件从 Mac 复制到 Windows `C:\baorui\`：

| 源（Mac） | 目标（Windows） |
|------|------|
| `工具/客户档案_自包含.html` | `C:\baorui\客户档案.html` |
| `工具/生命科学商机.html` | `C:\baorui\生命科学.html` |

复制命令（Mac上执行）：
```bash
scp 工具/客户档案_自包含.html user@windows-ip:/c/baorui/
```

### 第三步：启动 HTTP 服务器

在 Windows 上创建 `C:\baorui\start_server.bat`：

```batch
@echo off
cd /d C:\baorui
python -m http.server 8765 --bind 0.0.0.0
```

设为开机自启：`Win+R` → `shell:startup` → 放入快捷方式。

### 第四步：Tailscale ACL 授权

在 Tailscale 管理台 → **Access Controls** → 编辑 ACL 文件：

```json
{
  "acls": [
    // 总经理：完全访问
    {
      "action": "accept",
      "src":    ["gm@biori.com"],
      "dst":    ["win-server:8765:*"]
    },
    // 销售总监：只读客户档案
    {
      "action": "accept",
      "src":    ["sales-director@biori.com"],
      "dst":    ["win-server:8765:/客户档案.html"]
    },
    // 默认：拒绝所有
    {
      "action": "accept",
      "src":    ["autogroup:admin"],
      "dst":    ["win-server:*:*"]
    }
  ]
}
```

### 第五步：访问地址

授权人员安装 Tailscale → 浏览器打开：

```
http://win-server:8765/客户档案.html
```

（`win-server` 为 Windows 在 Tailscale 中的设备名）

---

## 安全性

| 层级 | 措施 |
|------|------|
| 网络层 | Tailscale WireGuard 端到端加密 |
| 授权层 | Tailscale ACL 按用户/设备/路径控制 |
| 传输层 | 内网直连（不经过第三方） |
| 数据层 | 自包含 HTML，无后端数据库 |

---

## 对比 NAS 方案

| 维度 | NAS | Windows 服务器 |
|------|-----|:--:|
| 授权控制 | 仅共享密码 | ✅ 每个用户独立 ACL |
| 外网访问 | 需 VPN | ✅ Tailscale 自带 |
| 文件同步 | SMB 挂载 | 脚本 / 云盘 |
| 访问方式 | SMB / 文件 | ✅ HTTP 浏览器 |
| 移动端 | 不支持 | ✅ 手机浏览器 |
| 审计日志 | 无 | ✅ Tailscale 日志 |
| 功耗 | 低 | 中 |
