MyBotBoxMyBotBox
Architecture

マルチテナンシー

組織、ワークスペース、ワークフロー、権限モデル、および YID 識別子について。

MyBotBox は設計の根底からマルチテナント対応です。3つのネストされたエンティティがあらゆる境界を定義し、単一の権限テーブルが誰が何にアクセスできるかを管理します。

階層構造

flowchart TB
    classDef actor fill:#FF6B35,stroke:#C2410C,color:#fff
    classDef tenant fill:#00D4AA,stroke:#0F766E,color:#06302B
    classDef wf fill:#3B82F6,stroke:#1E40AF,color:#fff
    classDef acl fill:#8B5CF6,stroke:#6D28D9,color:#fff

    U(["User · YID"]):::actor

    subgraph ORG["Organization — billing & team boundary"]
        M["member<br/>owner / admin / member / viewer"]:::tenant
        SUB["subscription<br/>Free · Starter · Pro · Enterprise"]:::tenant
    end

    subgraph WS["Workspaces"]
        PRIV["Private<br/>ownerId = you"]:::tenant
        SHARED["Shared<br/>granted access"]:::tenant
    end

    subgraph WORK["Workflow"]
        WF["workflow"]:::wf
        DEP["deployment version<br/>(immutable)"]:::wf
        EX["executions + logs"]:::wf
    end

    PERM{{"permissions<br/>userId · entityType · entityId · type"}}:::acl

    U --> M
    U --> PRIV
    PERM -. grants .-> SHARED
    PRIV --> WF
    SHARED --> WF
    WF --> DEP --> EX
    SUB -. meters .-> EX
エンティティ説明
Organization請求とチームの境界。サブスクリプション、メンバー、ブランディング、SSO を管理します。
Workspaceプロジェクトのコンテナ。プライベート ワークスペースは自分が所有するもの、共有 ワークスペースは権限付与を通じてアクセスするものです。
Workflowワークスペース内に存在します。イミュータブルなバージョンにデプロイされ、実行ログはそこに紐づきます。

権限

アクセスは単一の permissions テーブルによって管理されます。(userId, entityType, entityId) ごとに1行が存在し、権限レベルは readwrite、または admin です。権限グループを使用すると、組織管理者がまとめてアクセスを付与し、メンバーが参加した際に自動的に割り当てることができます。メンバー向けの詳細は 権限ガイド を参照してください。

すべてのクエリおよびワークフローの実行は workspaceIdorganizationId によってスコープされます。テナントをまたいだ読み取りパスは存在しません — ワークフローは自身の境界内のデータにしかアクセスできません。

YID — クロスプロダクト識別子

すべてのユーザーはサインアップ時にイミュータブルな YID を取得します: yid_<base62_11chars>_<YYYYMMDD> (例: yid_aB3xK9mP2qR_20260417

  • 一度生成されると変更されません
  • 日付サフィックスはアカウントの作成日をエンコードしています
  • MyBotBox および将来のプロダクト全体で安定しており、アイデンティティのフェデレーションをクリーンに実現します

請求の境界

サブスクリプションは Organization に紐づき、使用量は実行単位で計測されます。各実行はモデル、トークン数、コストを記録し、それが組織の現在の請求期間に集計されます。プランの制限(ボット数、メッセージ数、シート数)は組織レベルで適用されます。詳細は 請求と使用状況 を参照してください。