Files
threshold/internal/proto/controller/servers/services/v1/credential.proto
T
429247f407 [COMPLIANCE] Update Copyright Headers (#6282)
* [COMPLIANCE] Update Copyright and License Headers

* chore: make gen to generate files with copyright headers

* chore: update missed copyright headers

---------

Co-authored-by: hashicorp-copywrite[bot] <110428419+hashicorp-copywrite[bot]@users.noreply.github.com>
Co-authored-by: Justin Nguyen <justin.nguyen@hashicorp.com>
2026-01-28 11:05:07 -06:00

68 lines
2.0 KiB
Protocol Buffer

// Copyright IBM Corp. 2020, 2025
// SPDX-License-Identifier: BUSL-1.1
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;
SshCertificate ssh_certificate = 4;
UsernamePasswordDomain username_password_domain = 5;
}
}
// UsernamePassword is a credential containing a username and a password.
message UsernamePassword {
// The username of the credential
string username = 10; // @gotags: `class:"sensitive"`
// The password of the credential
string password = 20; // @gotags: `class:"secret"`
}
// UsernamePasswordDomain is a credential containing a username, password, and domain.
message UsernamePasswordDomain {
// The username of the credential
string username = 10; // @gotags: `class:"sensitive"`
// The password of the credential
string password = 20; // @gotags: `class:"secret"`
// The domain of the credential
string domain = 30; // @gotags: `class:"public"`
}
// 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"`
}
// SshCertificate is a credential containing a username, private key, and
// client certificate.
message SshCertificate {
// 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 client certificate signed by a CA to establish trust of the private key.
string certificate = 30; // @gotags: `class:"public"`
}