process.proto 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. // Copyright 2022 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.cloud.securitycenter.v1;
  16. import "google/cloud/securitycenter/v1/file.proto";
  17. option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
  18. option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
  19. option java_multiple_files = true;
  20. option java_outer_classname = "ProcessProto";
  21. option java_package = "com.google.cloud.securitycenter.v1";
  22. option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
  23. option ruby_package = "Google::Cloud::SecurityCenter::V1";
  24. // Represents an operating system process.
  25. message Process {
  26. // The process name visible in utilities like `top` and `ps`; it can
  27. // be accessed via `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.
  28. string name = 12;
  29. // File information for the process executable.
  30. File binary = 3;
  31. // File information for libraries loaded by the process.
  32. repeated File libraries = 4;
  33. // When the process represents the invocation of a script,
  34. // `binary` provides information about the interpreter while `script`
  35. // provides information about the script file provided to the
  36. // interpreter.
  37. File script = 5;
  38. // Process arguments as JSON encoded strings.
  39. repeated string args = 6;
  40. // True if `args` is incomplete.
  41. bool arguments_truncated = 7;
  42. // Process environment variables.
  43. repeated EnvironmentVariable env_variables = 8;
  44. // True if `env_variables` is incomplete.
  45. bool env_variables_truncated = 9;
  46. // The process id.
  47. int64 pid = 10;
  48. // The parent process id.
  49. int64 parent_pid = 11;
  50. }
  51. // EnvironmentVariable is a name-value pair to store environment variables for
  52. // Process.
  53. message EnvironmentVariable {
  54. // Environment variable name as a JSON encoded string.
  55. string name = 1;
  56. // Environment variable value as a JSON encoded string.
  57. string val = 2;
  58. }