Files
threshold/internal/proto/local/testing/event/v1/event.proto
T
Jim 5f46207e76 Events: add redact/encrypt node for audit events to Eventer (#1490)
* feat (events): Add new options needed for AuditConfig

WithAuditWrapper and WithFilterOperations all for optional paramters
when creating AuditConfig types.

* refactor (event): Change EventerConfig.Sinks to a ptr

We need to modify the SinkConfig.AuditConfig during the NewEventer factory, so we have to use a ptr not a ref.

* feat (events): Add audit configuration types

* feat (events): add audit config to sink configuration.

* feat (events): add redact/encrypt node for audit events to Eventer

Integrate the encrypt.Filter node from the eventlogger into the
event.Eventer, so audit events can be redacted/encrypted based
on data classifications.

* test (events) Add test protobufs for events

Add test protobufs along with a test service for testing
the audit event encrypt node
2021-08-30 19:02:48 -04:00

48 lines
2.0 KiB
Protocol Buffer

syntax = "proto3";
package testing.event.v1;
option go_package = "github.com/hashicorp/boundary/internal/gen/testing/event;event";
import "google/protobuf/struct.proto";
import "protoc-gen-openapiv2/options/annotations.proto";
import "google/api/annotations.proto";
service TestAuthMethodService {
// TestAuthenticate validates credentials provided and returns an Auth Token.
// Deprecated: use AuthenticateLogin instead.
rpc TestAuthenticate(TestAuthenticateRequest) returns (TestAuthenticateResponse) {
option (google.api.http) = {
post: "/v1/auth-methods/{auth_method_id}:authenticate"
body: "*"
};
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
summary: "Authenticate a user to an scope and retrieve an authentication token."
};
}
}
message TestAuthenticateRequest {
// The ID of the Auth Method in the system that should be used for authentication.
// @inject_tag: `class:"public"`
string auth_method_id = 1 [json_name = "auth_method_id"];
// This can be "cookie" or "token". If not provided, "token" will be used. "cookie" activates a split-cookie method where the token is split partially between http-only and regular cookies in order
// to keep it safe from rogue JS in the browser.
// @inject_tag: `class:"public"`
string token_type = 2 [json_name = "token_type"];
// Attributes are passed to the Auth Method; the valid keys and values depend on the type of Auth Method as well as the command.
google.protobuf.Struct attributes = 4 [json_name = "attributes"];
// The command to perform.
// @inject_tag: `class:"public"`
string command = 5 [json_name = "command"];
}
message TestAuthenticateResponse {
reserved 1, 2; // Old item and token_type
reserved "item", "token_type";
// Valid keys and values depend on the type of Auth Method as well as the command.
google.protobuf.Struct attributes = 4 [json_name = "attributes"];
// The command that was performed.
// @inject_tag: `class:"public"`
string command = 5 [json_name = "command"];
}