跳至主要內容
Tinu AI
Continue→

安全性

最後審查:2026年10月1日

重點摘要

  • 成員的要求透過資料庫本身的資料列層級安全性存取各組織的工作區內容,資料庫會將每個要求限制在應用程式為其設定的組織與人員範圍內。
  • 工作區內容由兩家 AI 供應商(OpenAI 與 Google)透過其 API 處理。每個組織都有每月 AI 支出上限,我們不會使用客戶內容訓練 AI 模型。
  • Tinu 絕不連線至控制系統。營運資料只會以人員匯出的檔案形式進入 Tinu,或來自由 Tinu 營運人員與你的系統管理員共同連線的業務系統。
  • SOC 2 準備工作進行中。我們目前還沒有可以分享的 SOC 2 報告。
  • 請將安全性問題回報至 security@tinuai.com。

本頁說明產品目前的運作方式。我們的合約承諾載於資料處理協議。

目錄

  1. 01代管與資料位置
  2. 02租戶隔離
  3. 03加密
  4. 04登入與存取控制
  5. 05AI 處理與模型供應商
  6. 06資料保留與刪除
  7. 07稽核記錄
  8. 08備份與復原
  9. 09軟體變更
  10. 10控制系統(OT 與 SCADA)
  11. 11次處理者
  12. 12法規遵循狀態
  13. 13回報安全性問題

01代管與資料位置

Tinu 是一項雲端服務。應用程式代管於 Vercel。客戶資料儲存在由 Neon 營運的 PostgreSQL 資料庫中,位於 AWS us-east-2 區域(美國俄亥俄州)。背景工作透過 Inngest 執行,Upstash Redis 負責速率限制與工作階段撤銷。

Tinu 採多租戶架構:客戶共用同一個應用程式與資料庫,並依第 02 節所述方式彼此隔離。我們目前不提供專屬部署或地端部署。

02租戶隔離

存放組織工作區內容的資料表(例如條目、決策、記憶與成員記錄)都設有 PostgreSQL 資料列層級安全性政策,以組織和提出要求的人員為依據。已登入成員的要求會以另一個獨立的資料庫角色執行,該角色並不擁有這些資料表,也無法繞過這些政策。應用程式會為每個要求決定組織與人員,並在與查詢相同的交易中設定;接著由資料庫強制執行這項選擇。在條目和決策等內容資料表上,未設定組織的查詢只會符合提出要求者自己的資料列。

部分路徑以資料庫擁有者身分執行,會略過這些政策,改由應用程式程式碼限制其查詢:登入、唯讀分享連結、Tinu 的內部管理工具,以及部分背景處理工作。少數資料表沒有資料列層級安全性:分享連結,面向成員的角色完全無法存取;稽核記錄,該角色只能新增內容;以及產品分析事件和註冊申請等內部資料表。

每次程式碼變更都有兩項自動檢查來守護這一點:

  • 一項測試:如果新增了含組織欄位的資料表卻沒有資料列層級安全性,就會讓建置失敗,除非該資料表列在一份附有書面理由的簡短例外清單中;以及
  • 一項以真實 PostgreSQL 資料庫進行的測試:證明一個組織無法讀取或寫入另一個組織的資料列,且應用程式的角色無法繞過這些政策。

在組織內,成員可以將條目標示為私密。主管和管理員沒有任何能讀取其他成員私密條目的特殊權限。

03加密

傳輸中

每個回應都透過 Strict-Transport-Security 標頭(兩年,包含子網域)要求瀏覽器只使用 HTTPS。如果正式環境應用程式的任一資料庫連線字串明確允許未加密的連線,應用程式將拒絕啟動。

儲存的資料

  • 你連接到 Tinu 的系統所用的存取權杖、API 金鑰和密碼,在儲存前都會由應用程式以 AES-256-GCM 加密。它們存放在處理客戶要求的角色無法讀取的資料庫欄位中。加密金鑰保存在資料庫之外,並且可以輪替。
  • Tinu 帳號密碼以 bcrypt 雜湊形式儲存,絕不以可讀形式儲存。
  • Tinu API 金鑰和分享連結權杖只以 SHA-256 雜湊形式儲存,因此資料庫副本中不會包含它們。

04登入與存取控制

  • 使用者以 Google 帳號,或以電子郵件地址和密碼登入。密碼登入嘗試會依 IP 位址和電子郵件地址進行速率限制。
  • Tinu 目前沒有內建的第二登入驗證因素。
  • 工作階段在 24 小時沒有活動後結束。這是閒置逾時,而不是固定的有效期限:每次造訪都會再延長 24 小時,目前沒有工作階段的最長時限。變更或重設密碼、登出或停用帳號,都會立即結束該帳號的所有工作階段。
  • 已停用的帳號無法登入,其 API 金鑰也會失效。
  • 組織中的每位成員都有一個角色:管理員、主管或成員。管理員負責管理成員與組織設定。

Tinu 員工存取

少數 Tinu 員工帳號可以在組織中開啟支援工作階段,一次僅限一個組織。一次支援工作階段最長持續一小時。它讓該員工無須成為組織成員即可管理該組織。工作階段的開始、結束,以及期間所做的每項變更,都會以該員工本人的名義寫入稽核記錄。這些員工帳號必須使用 Google 登入:在正式環境中,他們的密碼登入會遭到拒絕。

05AI 處理與模型供應商

Tinu 透過 API 將工作區內容傳送給兩家 AI 供應商:OpenAI 和 Google(Gemini)。它們負責撰寫摘要,擷取決策、人員和主題,建立支援搜尋的嵌入向量,並在聊天中回答問題。沒有其他 AI 供應商會收到客戶內容。

  • 聊天和背景處理會先在 OpenAI 上執行,如果 OpenAI 呼叫失敗,則改用 Google。搜尋嵌入向量、Slack 中的回答,以及部分應用程式內的快速回應則在 Google 上執行。
  • 每個組織都有每月 AI 支出上限。為組織發出的模型呼叫會先對照此上限進行檢查,不過少數應用程式內的要求目前尚未計入。一旦達到上限,其涵蓋的功能將對該組織暫停,直到下一個曆月或上限調高為止。
  • 每次模型呼叫,我們都會記錄供應商、模型、用途、權杖數量和耗時,並與組織建立關聯。該記錄不包含提示文字。
  • Tinu 不會使用客戶內容訓練 AI 模型。

隱私權政策第 05 節完整說明了 AI 供應商與模型訓練。

06資料保留與刪除

移除已離開成員的資料。當某人離開組織後,管理員或其最近一任主管可以提出申請,刪除其在該組織中的資料,並由另一位管理員核准。在只有一位管理員的組織中,該管理員可以核准自己提出的申請,且核准會被記錄下來。核准後,資料會立即隱藏,並可在 30 天內還原。30 天後,資料可以永久刪除,或進行去識別化:移除該成員的作者資訊,並在組織保留的知識中取代其姓名與電子郵件地址,這些知識本身則予以保留。取代是自動進行的:凡是能辨識出姓名的地方,都會取代為標記 [Deleted]。某些寫法可能仍會留在這些文字中,例如暱稱、拼寫有誤的姓名、以小寫字母書寫的姓名,或寫在中文、日文或泰文句子中的姓名。

當成員離開,而其組織以去識別化形式保留其知識時,其私密條目永遠不會作為條目展示給任何人,但 Tinu 的回答和摘要可能會用到其中的內容。成員在離開前可以隨時檢視並刪除自己的私密條目。

刪除申請只會影響該成員在這一個組織中的資料。如果該成員也屬於其他組織,那些組織中的資料不受影響。

匯出。任何成員都可以隨時以 JSON 或 CSV 格式匯出自己的條目。

合約終止。協議終止時你的資料如何返還與刪除,載於資料處理協議第 13 節。各類資料的保留期限載於隱私權政策第 07 節。

07稽核記錄

  • 對工作區資料的變更會在資料存取層自動寫入稽核記錄,而不是在每項功能中手動記錄。每筆記錄包含執行操作的人員、組織、要求 ID、IP 位址、使用者代理程式,以及變更前後的記錄內容。
  • 開啟他人的記錄同樣會被記錄:一個條目、一項決策、團隊頁面上某個人的記錄、其條目的全文、聊天或 Slack 中引用其條目或決策的回答,或連接到 Tinu 的 AI 應用程式讀取了其條目或決策。每筆記錄會註明誰讀取、讀取了誰的記錄、在哪裡以及何時讀取,僅以 ID 表示,絕不包含內容。讀取自己的記錄不會被記錄;列表和搜尋結果也不會被記錄,而它們可能顯示他人條目的標題和 AI 摘要;開啟該條目則會被記錄。如果寫入記錄失敗,讀取仍會照常進行。你所屬組織的管理員可以查看這份記錄,每位作者也可以看到誰開啟過自己的條目。
  • 密碼雜湊、金鑰與權杖雜湊,以及條目的原始文字,都不會寫入稽核記錄。
  • 處理客戶要求的資料庫角色可以新增稽核記錄,但無法讀取、變更或刪除它們。
  • 稽核記錄至少保留一年。

08備份與復原

資料庫使用 Neon 的時間點還原功能。一項排程工作每月對其進行測試:將正式環境資料庫還原成約五分鐘前狀態的副本,檢查預期的資料表存在且可以查詢,接著刪除該副本。

09軟體變更

每個 pull request 都會執行自動檢查:程式碼檢查與型別檢查、完整測試套件、正式環境建置、資料庫遷移順序檢查,以及使用 TruffleHog 的機密掃描。另有兩項檢查會在每個變更程式碼的 pull request 上執行,只有在 pull request 僅變更測試或文件時才會略過:以真實 PostgreSQL 資料庫進行的資料列層級安全性測試,以及端對端瀏覽器測試。在我們的合併佇列中,這些檢查全都會執行,沒有任何略過。Dependabot 每週建立 pull request,讓相依套件保持最新。

10控制系統(OT 與 SCADA)

Tinu 絕不連線至營運技術系統。它沒有任何用於 SCADA、EMS、DCS、PLC 或歷史資料庫的連接器,也不會在營運或控制網路上安裝任何代理程式、感測器或軟體。

有兩個選用工具在員工自己的電腦上執行:一個命令列工具,會為該電腦上的檔案建立索引並傳送到 Tinu,除非為你的組織開啟,否則處於關閉狀態;以及一個 Excel 增益集。兩者都不會連線至控制系統。

來自營運系統的資訊只會透過兩種方式進入 Tinu:

  • 由人員匯出檔案並上傳,例如儲存為 CSV 的 SCADA 警報日誌;或
  • 由 Tinu 營運人員與你的系統管理員共同連接 Maximo 或 SAP 等業務系統,並使用你的管理員核發的憑證。Tinu 會透過該系統的 API 讀取資料。這些連接器只會讀取,絕不回寫。

Tinu 並非為存放 BES Cyber System Information 或受你的 CIP 計畫保護的其他資訊而設計,你的使用者不應提交此類資訊。

11次處理者

所有代表我們處理客戶資料的第三方、各自的用途,以及會收到哪些資料,都列在我們的次處理者頁面上,並附有標註日期的變更記錄。在新的次處理者開始處理你的資料之前,我們會至少提前 30 天以電子郵件通知組織管理員。

12法規遵循狀態

SOC 2 準備工作進行中。我們目前還沒有可以分享的 SOC 2 報告。

我們的資料處理協議載明了我們的安全措施、我們如何就個人資料外洩通知你,以及協議終止時你的資料如何返還或刪除。

13回報安全性問題

請寄送電子郵件至 security@tinuai.com,說明你發現的問題以及重現方式。對於尊重使用者隱私且不會降低服務品質的善意研究,我們不會追究法律責任。

如果我們得知影響你資料的個人資料外洩事件,我們會依資料處理協議第 09 節的規定,無不當延遲地以電子郵件通知你所屬組織的管理員。

Tinu Inc
Ann Arbor, Michigan, United States
資安:security@tinuai.com
隱私權:privacy@tinuai.com

另請參閱我們的隱私權政策、資料處理協議、次處理者和服務條款,或返回 Tinu AI 首頁。