feat(credentiallibraries): support vault ssh certificates
This commit is contained in:
1 parent
3a78a74571
commit
43f0ba89cf
14 files changed
+2087
-239
No files matched your search
+86
-4
@@ -17,10 +17,7 @@ message CredentialLibrary {
|
||||
string id = 10; // @gotags: `class:"public"`
|
||||
|
||||
// The ID of the Credential Store of which this Credential Library is a part.
|
||||
string credential_store_id = 20 [
|
||||
json_name = "credential_store_id",
|
||||
(controller.custom_options.v1.subtype_source_id) = true
|
||||
]; // @gotags: `class:"public"`
|
||||
string credential_store_id = 20 [json_name = "credential_store_id"]; // @gotags: `class:"public"`
|
||||
|
||||
// Output only. Scope information for this Credential Library.
|
||||
resources.scopes.v1.ScopeInfo scope = 30;
|
||||
@@ -67,6 +64,16 @@ message CredentialLibrary {
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.subtype) = "vault"
|
||||
];
|
||||
VaultSSHCertificateCredentialLibraryAttributes vault_ssh_certificate_credential_library_attributes = 102 [
|
||||
(google.api.field_visibility).restriction = "INTERNAL",
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.subtype) = "vault-ssh-certificate"
|
||||
];
|
||||
VaultCredentialLibraryAttributes vault_generic_credential_library_attributes = 103 [
|
||||
(google.api.field_visibility).restriction = "INTERNAL",
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.subtype) = "vault-generic"
|
||||
];
|
||||
}
|
||||
|
||||
// Output only. The available actions on this resource for this user.
|
||||
@@ -116,3 +123,78 @@ message VaultCredentialLibraryAttributes {
|
||||
}
|
||||
]; // @gotags: `class:"secret"`
|
||||
}
|
||||
|
||||
// The attributes of a vault SSH Certificate Credential Library.
|
||||
message VaultSSHCertificateCredentialLibraryAttributes {
|
||||
// The path in Vault to request credentials from.
|
||||
google.protobuf.StringValue path = 10 [
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.mask_mapping) = {
|
||||
this: "attributes.path"
|
||||
that: "VaultPath"
|
||||
}
|
||||
]; // @gotags: `class:"public"`
|
||||
|
||||
// The username to use when making an SSH connection.
|
||||
google.protobuf.StringValue username = 20 [
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.mask_mapping) = {
|
||||
this: "attributes.username"
|
||||
that: "Username"
|
||||
}
|
||||
]; // @gotags: `class:"sensitive"`
|
||||
|
||||
// The key type to use when generating an SSH private key.
|
||||
google.protobuf.StringValue key_type = 30 [
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.mask_mapping) = {
|
||||
this: "attributes.key_type"
|
||||
that: "KeyType"
|
||||
}
|
||||
]; // @gotags: `class:"public"`
|
||||
|
||||
// The number of bits to use to generate an SSH private key.
|
||||
google.protobuf.UInt32Value key_bits = 40 [
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.mask_mapping) = {
|
||||
this: "attributes.key_bits"
|
||||
that: "KeyBits"
|
||||
}
|
||||
]; // @gotags: `class:"public"`
|
||||
|
||||
// The requested time to live for the certificate.
|
||||
google.protobuf.StringValue ttl = 50 [
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.mask_mapping) = {
|
||||
this: "attributes.ttl"
|
||||
that: "Ttl"
|
||||
}
|
||||
]; // @gotags: `class:"public"`
|
||||
|
||||
// The key id that the created certificate should have.
|
||||
google.protobuf.StringValue key_id = 60 [
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.mask_mapping) = {
|
||||
this: "attributes.key_id"
|
||||
that: "KeyId"
|
||||
}
|
||||
]; // @gotags: `class:"public"`
|
||||
|
||||
// The critical options that the certificate should be signed for.
|
||||
map<string, string> critical_options = 70 [
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.mask_mapping) = {
|
||||
this: "attributes.critical_options"
|
||||
that: "CriticalOptions"
|
||||
}
|
||||
]; // @gotags: `class:"public"`
|
||||
|
||||
// The extensions that the certificate should be signed for.
|
||||
map<string, string> extensions = 80 [
|
||||
(custom_options.v1.generate_sdk_option) = true,
|
||||
(custom_options.v1.mask_mapping) = {
|
||||
this: "attributes.extensions"
|
||||
that: "Extensions"
|
||||
}
|
||||
]; // @gotags: `class:"public"`
|
||||
}
|
||||
Reference in new issue
Block a user