Changes
3 changed files (+31/-33)
-
-
@@ -41,6 +41,14 @@ },}), nil } func createUserPermError() (*connect.Response[workspaceV2.CreateUserResponse], error) { return connect.NewResponse(&workspaceV2.CreateUserResponse{ Result: &workspaceV2.CreateUserResponse_PermissionError{ PermissionError: &errorV1.PermissionError{}, }, }), nil } func (s *Service) CreateUser( ctx context.Context, req *connect.Request[workspaceV2.CreateUserRequest],
-
@@ -139,9 +147,8 @@ if req.Msg.GetIsAdmin() {requiredPerm = types.Permission_PERMISSION_ADD_ADMIN_USER } // TODO: 認可エラーもしくは権限エラーを作成する if !slices.Contains(user.Permissions, requiredPerm) { return createUserAuthError() return createUserPermError() } for _, u := range users.Projection.Users {
-
@@ -191,8 +198,7 @@ }if req.Msg.Permissions.GetCanDeleteRegularUser() { if !slices.Contains(user.Permissions, types.Permission_PERMISSION_DELETE_REGULAR_USER) { // TODO: 認可エラーもしくは権限エラーを作成する return createUserAuthError() return createUserPermError() } permissions = append(permissions, types.Permission_PERMISSION_DELETE_REGULAR_USER)
-
@@ -200,13 +206,11 @@ }if req.Msg.Permissions.GetCanReadOtherUserProfile() { if !slices.Contains(user.Permissions, types.Permission_PERMISSION_READ_REGULAR_USER_PROFILE) { // TODO: 認可エラーもしくは権限エラーを作成する return createUserAuthError() return createUserPermError() } if !slices.Contains(user.Permissions, types.Permission_PERMISSION_READ_ADMIN_USER_PROFILE) { // TODO: 認可エラーもしくは権限エラーを作成する return createUserAuthError() return createUserPermError() } permissions = append(
-
@@ -218,8 +222,7 @@ }if req.Msg.Permissions.GetCanUpdateOtherRegularUserProfile() { if !slices.Contains(user.Permissions, types.Permission_PERMISSION_UPDATE_REGULAR_USER_PROFILE) { // TODO: 認可エラーもしくは権限エラーを作成する return createUserAuthError() return createUserPermError() } permissions = append(permissions, types.Permission_PERMISSION_UPDATE_REGULAR_USER_PROFILE)
-
@@ -227,8 +230,7 @@ }if req.Msg.Permissions.GetCanUpdateSelfProfile() { if !slices.Contains(user.Permissions, types.Permission_PERMISSION_UPDATE_SELF_PROFILE) { // TODO: 認可エラーもしくは権限エラーを作成する return createUserAuthError() return createUserPermError() } permissions = append(permissions, types.Permission_PERMISSION_UPDATE_SELF_PROFILE)
-
@@ -236,8 +238,7 @@ }if req.Msg.Permissions.GetCanUpdateOtherRegularUserLoginMethod() { if !slices.Contains(user.Permissions, types.Permission_PERMISSION_UPDATE_REGULAR_USER_LOGIN_METHOD) { // TODO: 認可エラーもしくは権限エラーを作成する return createUserAuthError() return createUserPermError() } permissions = append(
-
@@ -248,8 +249,7 @@ }if req.Msg.Permissions.GetCanUpdateWorkspace() { if !slices.Contains(user.Permissions, types.Permission_PERMISSION_EDIT_WORKSPACE_PROFILE) { // TODO: 認可エラーもしくは権限エラーを作成する return createUserAuthError() return createUserPermError() } permissions = append(permissions, types.Permission_PERMISSION_EDIT_WORKSPACE_PROFILE)
-
-
-
@@ -22,6 +22,14 @@ "pocka.jp/x/yamori/backend/core/projection"workspaceEvent "pocka.jp/x/yamori/backend/events/workspace" ) func updatePermError() *connect.Response[workspaceV2.UpdateResponse] { return connect.NewResponse(&workspaceV2.UpdateResponse{ Result: &workspaceV2.UpdateResponse_PermissionError{ PermissionError: &errorV1.PermissionError{}, }, }) } func (s *Service) Update( ctx context.Context, req *connect.Request[workspaceV2.UpdateRequest],
-
@@ -114,14 +122,7 @@ }), nil} if !slices.Contains(user.Permissions, types.Permission_PERMISSION_EDIT_WORKSPACE_PROFILE) { // TODO: AuthenticationError もしくは認可エラーに切り替える return connect.NewResponse(&workspaceV2.UpdateResponse{ Result: &workspaceV2.UpdateResponse_SystemError{ SystemError: &errorV1.SystemError{ Message: proto.String("Not allowed"), }, }, }), nil return updatePermError(), nil } events := make([]*eventV1.Event, 0, 2)
-
-
-
@@ -160,10 +160,9 @@ if err != nil {t.Fatal(err) } // TODO: 認可エラーもしくは権限エラーを作成する if _, ok := carol.Msg.Result.(*workspaceV2.CreateUserResponse_AuthenticationError); !ok { if _, ok := carol.Msg.Result.(*workspaceV2.CreateUserResponse_PermissionError); !ok { typeName := reflect.Indirect(reflect.ValueOf(carol.Msg.Result)) t.Errorf("Expected authentication_error, got %s", typeName.Type().Name()) t.Errorf("Expected permission_error, got %s", typeName.Type().Name()) } dave, err := client.CreateUser(
-
@@ -249,10 +248,9 @@ if err != nil {t.Fatal(err) } // TODO: 認可エラーもしくは権限エラーを作成する if _, ok := carol.Msg.Result.(*workspaceV2.CreateUserResponse_AuthenticationError); !ok { if _, ok := carol.Msg.Result.(*workspaceV2.CreateUserResponse_PermissionError); !ok { typeName := reflect.Indirect(reflect.ValueOf(carol.Msg.Result)) t.Errorf("Expected authentication_error, got %s", typeName.Type().Name()) t.Errorf("Expected permission_error, got %s", typeName.Type().Name()) } }
-
@@ -319,9 +317,8 @@ if err != nil {t.Fatal(err) } // TODO: 認可エラーもしくは権限エラーを作成する if _, ok := carol.Msg.Result.(*workspaceV2.CreateUserResponse_AuthenticationError); !ok { if _, ok := carol.Msg.Result.(*workspaceV2.CreateUserResponse_PermissionError); !ok { typeName := reflect.Indirect(reflect.ValueOf(carol.Msg.Result)) t.Errorf("Expected authentication_error, got %s", typeName.Type().Name()) t.Errorf("Expected permission_error, got %s", typeName.Type().Name()) } }
-