mirror of
https://github.com/zitadel/zitadel.git
synced 2025-02-28 20:57:24 +00:00
fix: changes (#1482)
* fix: changes * change listquery to changequery * fix: changes in auth Co-authored-by: Max Peintner <max@caos.ch>
This commit is contained in:
parent
0a058a821e
commit
48456b84b9
@ -69,6 +69,7 @@ import {
|
||||
VerifyMyPhoneRequest,
|
||||
VerifyMyPhoneResponse,
|
||||
} from '../proto/generated/zitadel/auth_pb';
|
||||
import { ChangeQuery } from '../proto/generated/zitadel/change_pb';
|
||||
import { ListQuery } from '../proto/generated/zitadel/object_pb';
|
||||
import { Org, OrgQuery } from '../proto/generated/zitadel/org_pb';
|
||||
import { Gender, User, WebAuthNVerification } from '../proto/generated/zitadel/user_pb';
|
||||
@ -502,14 +503,15 @@ export class GrpcAuthService {
|
||||
return this.grpcService.auth.verifyMyPhone(req, null).then(resp => resp.toObject());
|
||||
}
|
||||
|
||||
public listMyUserChanges(limit: number, offset: number): Promise<ListMyUserChangesResponse.AsObject> {
|
||||
public listMyUserChanges(limit: number, sequence: number): Promise<ListMyUserChangesResponse.AsObject> {
|
||||
const req = new ListMyUserChangesRequest();
|
||||
const query = new ListQuery();
|
||||
const query = new ChangeQuery();
|
||||
|
||||
if (limit) {
|
||||
query.setLimit(limit);
|
||||
}
|
||||
if (offset) {
|
||||
query.setOffset(offset);
|
||||
if (sequence) {
|
||||
query.setSequence(sequence);
|
||||
}
|
||||
req.setQuery(query);
|
||||
return this.grpcService.auth.listMyUserChanges(req, null).then(resp => resp.toObject());
|
||||
|
@ -5,6 +5,7 @@ import { BehaviorSubject } from 'rxjs';
|
||||
|
||||
import { AppQuery } from '../proto/generated/zitadel/app_pb';
|
||||
import { KeyType } from '../proto/generated/zitadel/auth_n_key_pb';
|
||||
import { ChangeQuery } from '../proto/generated/zitadel/change_pb';
|
||||
import { IDPOwnerType } from '../proto/generated/zitadel/idp_pb';
|
||||
import {
|
||||
AddAPIAppRequest,
|
||||
@ -1144,62 +1145,63 @@ export class ManagementService {
|
||||
return this.grpcService.mgmt.bulkRemoveUserGrant(req, null).then(resp => resp.toObject());
|
||||
}
|
||||
|
||||
public listAppChanges(appId: string, projectId: string, limit: number, offset: number): Promise<ListAppChangesResponse.AsObject> {
|
||||
public listAppChanges(appId: string, projectId: string, limit: number, sequence: number): Promise<ListAppChangesResponse.AsObject> {
|
||||
const req = new ListAppChangesRequest();
|
||||
const query = new ListQuery();
|
||||
const query = new ChangeQuery();
|
||||
req.setAppId(appId);
|
||||
req.setProjectId(projectId);
|
||||
|
||||
if (limit) {
|
||||
query.setLimit(limit);
|
||||
}
|
||||
if (offset) {
|
||||
query.setOffset(offset);
|
||||
if (sequence) {
|
||||
query.setSequence(sequence);
|
||||
}
|
||||
req.setQuery(query);
|
||||
return this.grpcService.mgmt.listAppChanges(req, null).then(resp => resp.toObject());
|
||||
}
|
||||
|
||||
public listOrgChanges(limit: number, offset: number): Promise<ListOrgChangesResponse.AsObject> {
|
||||
public listOrgChanges(limit: number, sequence: number): Promise<ListOrgChangesResponse.AsObject> {
|
||||
const req = new ListOrgChangesRequest();
|
||||
const query = new ListQuery();
|
||||
const query = new ChangeQuery();
|
||||
|
||||
if (limit) {
|
||||
query.setLimit(limit);
|
||||
}
|
||||
if (offset) {
|
||||
query.setOffset(offset);
|
||||
if (sequence) {
|
||||
query.setSequence(sequence);
|
||||
}
|
||||
|
||||
req.setQuery(query);
|
||||
return this.grpcService.mgmt.listOrgChanges(req, null).then(resp => resp.toObject());
|
||||
}
|
||||
|
||||
public listProjectChanges(projectId: string, limit: number, offset: number): Promise<ListProjectChangesResponse.AsObject> {
|
||||
public listProjectChanges(projectId: string, limit: number, sequence: number): Promise<ListProjectChangesResponse.AsObject> {
|
||||
const req = new ListProjectChangesRequest();
|
||||
req.setProjectId(projectId);
|
||||
const query = new ListQuery();
|
||||
const query = new ChangeQuery();
|
||||
|
||||
if (limit) {
|
||||
query.setLimit(limit);
|
||||
}
|
||||
if (offset) {
|
||||
query.setOffset(offset);
|
||||
if (sequence) {
|
||||
query.setSequence(sequence);
|
||||
}
|
||||
|
||||
req.setQuery(query);
|
||||
return this.grpcService.mgmt.listProjectChanges(req, null).then(resp => resp.toObject());
|
||||
}
|
||||
|
||||
public listUserChanges(userId: string, limit: number, offset: number): Promise<ListUserChangesResponse.AsObject> {
|
||||
public listUserChanges(userId: string, limit: number, sequence: number): Promise<ListUserChangesResponse.AsObject> {
|
||||
const req = new ListUserChangesRequest();
|
||||
req.setUserId(userId);
|
||||
const query = new ListQuery();
|
||||
const query = new ChangeQuery();
|
||||
|
||||
if (limit) {
|
||||
query.setLimit(limit);
|
||||
}
|
||||
if (offset) {
|
||||
query.setOffset(offset);
|
||||
if (sequence) {
|
||||
query.setSequence(sequence);
|
||||
}
|
||||
|
||||
req.setQuery(query);
|
||||
|
@ -23,12 +23,12 @@ func (s *Server) GetMyUser(ctx context.Context, _ *auth_pb.GetMyUserRequest) (*a
|
||||
}
|
||||
|
||||
func (s *Server) ListMyUserChanges(ctx context.Context, req *auth_pb.ListMyUserChangesRequest) (*auth_pb.ListMyUserChangesResponse, error) {
|
||||
offset, limit, asc := object.ListQueryToModel(req.Query)
|
||||
sequence, limit, asc := change.ChangeQueryToModel(req.Query)
|
||||
features, err := s.repo.GetOrgFeatures(ctx, authz.GetCtxData(ctx).ResourceOwner)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
changes, err := s.repo.MyUserChanges(ctx, offset, limit, asc, features.AuditLogRetention)
|
||||
changes, err := s.repo.MyUserChanges(ctx, sequence, limit, asc, features.AuditLogRetention)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -8,6 +8,13 @@ import (
|
||||
"github.com/caos/zitadel/pkg/grpc/message"
|
||||
)
|
||||
|
||||
func ChangeQueryToModel(query *change_pb.ChangeQuery) (sequence uint64, limit uint64, asc bool) {
|
||||
if query == nil {
|
||||
return 0, 0, false
|
||||
}
|
||||
return query.Sequence, uint64(query.Limit), query.Asc
|
||||
}
|
||||
|
||||
func UserChangesToPb(changes []*user_model.UserChange) []*change_pb.Change {
|
||||
c := make([]*change_pb.Change, len(changes))
|
||||
for i, change := range changes {
|
@ -32,12 +32,12 @@ func (s *Server) GetOrgByDomainGlobal(ctx context.Context, req *mgmt_pb.GetOrgBy
|
||||
}
|
||||
|
||||
func (s *Server) ListOrgChanges(ctx context.Context, req *mgmt_pb.ListOrgChangesRequest) (*mgmt_pb.ListOrgChangesResponse, error) {
|
||||
offset, limit, asc := object.ListQueryToModel(req.Query)
|
||||
sequence, limit, asc := change_grpc.ChangeQueryToModel(req.Query)
|
||||
features, err := s.features.GetOrgFeatures(ctx, authz.GetCtxData(ctx).OrgID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
response, err := s.org.OrgChanges(ctx, authz.GetCtxData(ctx).OrgID, offset, limit, asc, features.AuditLogRetention)
|
||||
response, err := s.org.OrgChanges(ctx, authz.GetCtxData(ctx).OrgID, sequence, limit, asc, features.AuditLogRetention)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -72,12 +72,12 @@ func (s *Server) ListGrantedProjects(ctx context.Context, req *mgmt_pb.ListGrant
|
||||
}
|
||||
|
||||
func (s *Server) ListProjectChanges(ctx context.Context, req *mgmt_pb.ListProjectChangesRequest) (*mgmt_pb.ListProjectChangesResponse, error) {
|
||||
offset, limit, asc := object_grpc.ListQueryToModel(req.Query)
|
||||
sequence, limit, asc := change_grpc.ChangeQueryToModel(req.Query)
|
||||
features, err := s.features.GetOrgFeatures(ctx, authz.GetCtxData(ctx).OrgID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
res, err := s.project.ProjectChanges(ctx, req.ProjectId, offset, limit, asc, features.AuditLogRetention)
|
||||
res, err := s.project.ProjectChanges(ctx, req.ProjectId, sequence, limit, asc, features.AuditLogRetention)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -41,12 +41,12 @@ func (s *Server) ListApps(ctx context.Context, req *mgmt_pb.ListAppsRequest) (*m
|
||||
}
|
||||
|
||||
func (s *Server) ListAppChanges(ctx context.Context, req *mgmt_pb.ListAppChangesRequest) (*mgmt_pb.ListAppChangesResponse, error) {
|
||||
offset, limit, asc := object_grpc.ListQueryToModel(req.Query)
|
||||
sequence, limit, asc := change_grpc.ChangeQueryToModel(req.Query)
|
||||
features, err := s.features.GetOrgFeatures(ctx, authz.GetCtxData(ctx).OrgID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
res, err := s.project.ApplicationChanges(ctx, req.ProjectId, req.AppId, offset, limit, asc, features.AuditLogRetention)
|
||||
res, err := s.project.ApplicationChanges(ctx, req.ProjectId, req.AppId, sequence, limit, asc, features.AuditLogRetention)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -52,12 +52,12 @@ func (s *Server) ListUsers(ctx context.Context, req *mgmt_pb.ListUsersRequest) (
|
||||
}
|
||||
|
||||
func (s *Server) ListUserChanges(ctx context.Context, req *mgmt_pb.ListUserChangesRequest) (*mgmt_pb.ListUserChangesResponse, error) {
|
||||
offset, limit, asc := object.ListQueryToModel(req.Query)
|
||||
sequence, limit, asc := change_grpc.ChangeQueryToModel(req.Query)
|
||||
features, err := s.features.GetOrgFeatures(ctx, authz.GetCtxData(ctx).OrgID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
res, err := s.user.UserChanges(ctx, req.UserId, offset, limit, asc, features.AuditLogRetention)
|
||||
res, err := s.user.UserChanges(ctx, req.UserId, sequence, limit, asc, features.AuditLogRetention)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -56,9 +56,6 @@ func (q *SearchQuery) LatestSequenceFilter(sequence uint64) *SearchQuery {
|
||||
return q
|
||||
}
|
||||
sortOrder := Operation_Greater
|
||||
if q.Desc {
|
||||
sortOrder = Operation_Less
|
||||
}
|
||||
return q.setFilter(NewFilter(Field_LatestSequence, sequence, sortOrder))
|
||||
}
|
||||
|
||||
|
@ -420,7 +420,7 @@ message GetMyUserResponse {
|
||||
}
|
||||
|
||||
message ListMyUserChangesRequest {
|
||||
zitadel.v1.ListQuery query = 1;
|
||||
zitadel.change.v1.ChangeQuery query = 1;
|
||||
}
|
||||
|
||||
message ListMyUserChangesResponse {
|
||||
|
@ -14,4 +14,10 @@ message Change {
|
||||
string editor_id = 4;
|
||||
string editor_display_name = 5;
|
||||
string resource_owner_id = 6;
|
||||
}
|
||||
|
||||
message ChangeQuery {
|
||||
uint64 sequence = 1;
|
||||
uint32 limit = 2;
|
||||
bool asc = 3;
|
||||
}
|
@ -135,6 +135,7 @@ service ManagementService {
|
||||
rpc ListUserChanges(ListUserChangesRequest) returns (ListUserChangesResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/users/{user_id}/changes/_search"
|
||||
body: "*"
|
||||
};
|
||||
|
||||
option (zitadel.v1.auth_option) = {
|
||||
@ -536,6 +537,7 @@ service ManagementService {
|
||||
rpc ListOrgChanges(ListOrgChangesRequest) returns (ListOrgChangesResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/orgs/me/changes/_search"
|
||||
body: "*"
|
||||
};
|
||||
|
||||
option (zitadel.v1.auth_option) = {
|
||||
@ -1867,7 +1869,7 @@ message ListUsersResponse {
|
||||
}
|
||||
|
||||
message ListUserChangesRequest {
|
||||
zitadel.v1.ListQuery query = 1;
|
||||
zitadel.change.v1.ChangeQuery query = 1;
|
||||
string user_id = 2 [(validate.rules).string = {min_len: 1, max_len: 200}];
|
||||
}
|
||||
|
||||
@ -2265,7 +2267,7 @@ message GetOrgByDomainGlobalRequest {
|
||||
}
|
||||
|
||||
message ListOrgChangesRequest {
|
||||
zitadel.v1.ListQuery query = 1;
|
||||
zitadel.change.v1.ChangeQuery query = 1;
|
||||
}
|
||||
|
||||
message ListOrgChangesResponse {
|
||||
@ -2429,7 +2431,7 @@ message ListGrantedProjectsResponse {
|
||||
}
|
||||
|
||||
message ListProjectChangesRequest {
|
||||
zitadel.v1.ListQuery query = 1;
|
||||
zitadel.change.v1.ChangeQuery query = 1;
|
||||
string project_id = 2 [(validate.rules).string = {min_len: 1, max_len: 200}];
|
||||
}
|
||||
|
||||
@ -2609,7 +2611,7 @@ message ListAppsResponse {
|
||||
}
|
||||
|
||||
message ListAppChangesRequest {
|
||||
zitadel.v1.ListQuery query = 1;
|
||||
zitadel.change.v1.ChangeQuery query = 1;
|
||||
string project_id = 2 [(validate.rules).string = {min_len: 1, max_len: 200}];
|
||||
string app_id = 3 [(validate.rules).string = {min_len: 1, max_len: 200}];
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user