This adds support for encrypted SSH keys via passphrase. Co-authored-by: Louis Ruch <louisruch@gmail.com> Co-authored-by: Michael Gaffney <mgaffney@users.noreply.github.com>
38 lines
1.0 KiB
Protocol Buffer
38 lines
1.0 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package controller.servers.services.v1;
|
|
|
|
option go_package = "github.com/hashicorp/boundary/internal/gen/controller/servers/services;services";
|
|
|
|
message Credential {
|
|
reserved 1;
|
|
reserved "user_password";
|
|
|
|
oneof credential {
|
|
UsernamePassword username_password = 2;
|
|
SshPrivateKey ssh_private_key = 3;
|
|
}
|
|
}
|
|
|
|
// UsernamePassword is a credential containing a username and a password.
|
|
message UsernamePassword {
|
|
// The username of the credential
|
|
string username = 10; // @gotags: `class:"public"`
|
|
|
|
// The password of the credential
|
|
string password = 20; // @gotags: `class:"secret"`
|
|
}
|
|
|
|
// SshPrivateKey is a credential containing a username a private key and an optional
|
|
// private key passphrase.
|
|
message SshPrivateKey {
|
|
// The username of the credential
|
|
string username = 10; // @gotags: `class:"public"`
|
|
|
|
// The private key of the credential
|
|
string private_key = 20; // @gotags: `class:"secret"`
|
|
|
|
// The optional passphrase of the private_key
|
|
string private_key_passphrase = 30; // @gotags: `class:"secret"`
|
|
}
|