Skip to content

Commit

Permalink
Various Bug fixes (Velocidex#3397)
Browse files Browse the repository at this point in the history
* Source() plugin did not support versions when reading from notebook
cells.
* Add Cell from Hunt regression - hunt GUI was modified
* Adding new secret did not allow adding templates
* ACE default UI elements were not set when user's GUI record was
missing.
  • Loading branch information
scudette authored Apr 6, 2024
1 parent 40c5a22 commit 5c24881
Show file tree
Hide file tree
Showing 27 changed files with 829 additions and 278 deletions.
20 changes: 20 additions & 0 deletions api/mock/api_mock.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

341 changes: 175 additions & 166 deletions api/proto/api.pb.go

Large diffs are not rendered by default.

109 changes: 95 additions & 14 deletions api/proto/api.pb.gw.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions api/proto/api.proto
Original file line number Diff line number Diff line change
Expand Up @@ -551,6 +551,13 @@ service API {
};
}

rpc DeleteSecretDefinition(SecretDefinition) returns (google.protobuf.Empty) {
option (google.api.http) = {
post: "/api/v1/DeleteSecretDefinition",
body: "*",
};
}

rpc GetSecretDefinitions(google.protobuf.Empty) returns (SecretDefinitionList) {
option (google.api.http) = {
get: "/api/v1/GetSecretDefinitions",
Expand Down
36 changes: 36 additions & 0 deletions api/proto/api_grpc.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

35 changes: 35 additions & 0 deletions api/secrets.go
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,41 @@ func (self *ApiServer) DefineSecret(
return &emptypb.Empty{}, Status(self.verbose, err)
}

func (self *ApiServer) DeleteSecretDefinition(
ctx context.Context,
in *api_proto.SecretDefinition) (*emptypb.Empty, error) {

users := services.GetUserManager()
user_record, org_config_obj, err := users.GetUserFromContext(ctx)
if err != nil {
return nil, Status(self.verbose, err)
}
principal := user_record.Name

permissions := acls.SERVER_ADMIN
perm, err := services.CheckAccess(org_config_obj, principal, permissions)
if !perm || err != nil {
return nil, PermissionDenied(err,
"User is not allowed to manage secrets.")
}

secrets, err := services.GetSecretsService(org_config_obj)
if err != nil {
return nil, Status(self.verbose, err)
}

err = secrets.DeleteSecretDefinition(ctx, in)
if err == nil {
services.LogAudit(ctx,
org_config_obj, principal, "User Deleted Secret Type",
ordereddict.NewDict().
Set("principal", principal).
Set("type", in.TypeName))
}

return &emptypb.Empty{}, Status(self.verbose, err)
}

func (self *ApiServer) AddSecret(
ctx context.Context,
in *api_proto.Secret) (*emptypb.Empty, error) {
Expand Down
Loading

0 comments on commit 5c24881

Please sign in to comment.