You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

63 lines
1.4 KiB

syntax = "proto3";
package messaging_pb;
option go_package = "github.com/seaweedfs/seaweedfs/weed/pb/s3_pb";
option java_package = "seaweedfs.client";
option java_outer_classname = "S3Proto";
//////////////////////////////////////////////////
service SeaweedS3 {
rpc Configure (S3ConfigureRequest) returns (S3ConfigureResponse) {
}
}
//////////////////////////////////////////////////
message S3ConfigureRequest {
bytes s3_configuration_file_content = 1;
}
message S3ConfigureResponse {
}
message S3CircuitBreakerConfig {
S3CircuitBreakerOptions global=1;
map<string, S3CircuitBreakerOptions> buckets= 2;
}
message S3CircuitBreakerOptions {
bool enabled=1;
map<string, int64> actions = 2;
}
//////////////////////////////////////////////////
// Bucket Metadata
message CORSRule {
repeated string allowed_headers = 1;
repeated string allowed_methods = 2;
repeated string allowed_origins = 3;
repeated string expose_headers = 4;
int32 max_age_seconds = 5;
string id = 6;
}
message CORSConfiguration {
repeated CORSRule cors_rules = 1;
}
message BucketMetadata {
map<string, string> tags = 1;
CORSConfiguration cors = 2;
EncryptionConfiguration encryption = 3;
}
message EncryptionConfiguration {
string sse_algorithm = 1; // "AES256" or "aws:kms"
string kms_key_id = 2; // KMS key ID (optional for aws:kms)
bool bucket_key_enabled = 3; // S3 Bucket Keys optimization
}