Changes
5 changed files (+84/-0)
-
-
@@ -0,0 +1,33 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v2; import "yamori/capability/v1/capability_key.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v2"; message CreateUserRequest { // [必須] ログインユーザ名。社員 ID でもハンドルネームでも本名でも。 string name = 1; // 公開名。未設定の場合は `name` の値となる。 string display_name = 2; // [必須] 初期パスワード。 string password = 3; // 管理者ユーザかどうか。 bool is_admin = 4; // 管理ユーザセットアップパスワード。 // ワークスペースに誰も管理者ユーザが存在しない状態で管理者ユーザを // 登録する際のパスワード。 string initial_admin_password = 5; // `Workspace.user_add_key` の値。 // `initial_admin_password` が未指定の場合は必須。 yamori.capability.v1.CapabilityKey user_add_key = 6; }
-
-
-
@@ -0,0 +1,34 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v2; import "yamori/error/v1/authentication_error.proto"; import "yamori/error/v1/capability_error.proto"; import "yamori/error/v1/missing_field_error.proto"; import "yamori/error/v1/system_error.proto"; import "yamori/workspace/v2/user.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v2"; message CreateUserResponse { oneof result { // 作成したユーザ。 User ok = 1; // 予期せぬエラー。 yamori.error.v1.SystemError system_error = 2; // ログインしていない、トークンやセッションが不正といった認証に関するエラーが発生した。 // 管理ユーザセットアップパスワードに関するエラー(条件不一致や文字列不一致)もこれになる。 yamori.error.v1.AuthenticationError authentication_error = 3; // リクエストの必須フィールドが欠けている。 yamori.error.v1.MissingFieldError missing_field_error = 4; // 権限を持っていない。 yamori.error.v1.CapabilityError capability_error = 5; } }
-
-
-
@@ -23,4 +23,14 @@ string display_name = 3;// ログイン設定。 LoginMethod login_method = 4; // 管理者ユーザかどうか。ワークスペースには必ず一人以上の管理者ユーザが // 存在する。 // 管理者ユーザは全てのデータに対する全ての操作が行える。 // 全ての権限を持った通常ユーザとの違いは、将来のアップデートによって // 新しい権限が追加された際、管理者ユーザはその権限を自動的に持つが // 通常ユーザには与えられない。これは新しい権限を持つユーザが存在せず、 // その新しい権限を持つユーザを誰も作成できないデッドロック状態を回避 // するための設計となる。 bool is_admin = 5; }
-
-
-
@@ -32,6 +32,9 @@// ワークスペースに登録されているユーザの一覧。 repeated User users = 5; // 管理者ユーザが存在するか。初期セットアップ時のみ利用。 bool has_admin = 8; // ワークスペースの更新を行うためのキー。 yamori.capability.v1.CapabilityKey update_key = 6;
-
-
-
@@ -5,6 +5,8 @@ edition = "2023";package yamori.workspace.v2; import "yamori/workspace/v2/create_user_request.proto"; import "yamori/workspace/v2/create_user_response.proto"; import "yamori/workspace/v2/get_request.proto"; import "yamori/workspace/v2/get_response.proto"; import "yamori/workspace/v2/login_request.proto";
-
@@ -28,4 +30,6 @@ rpc Get(GetRequest) returns (GetResponse);// ワークスペース情報を更新する。 rpc Update(UpdateRequest) returns (UpdateResponse); rpc CreateUser(CreateUserRequest) returns (CreateUserResponse); }
-