mirror of
https://github.com/hashicorp/vault.git
synced 2025-08-22 15:11:07 +02:00
* add testing before model changes * add enterprise self_managed attr, update tests * add postgres params * add changelog * update test * cleanup filter function * fix nits
348 lines
9.3 KiB
TypeScript
348 lines
9.3 KiB
TypeScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: BUSL-1.1
|
|
*/
|
|
|
|
// If we refactor the database/connection model we can move this const to a util and use it in a form component.
|
|
// The ideal (future) scenario is the API provides this and we don't have to manually write the schema :)
|
|
export const EXPECTED_FIELDS = {
|
|
'elasticsearch-database-plugin': {
|
|
default: [
|
|
'url',
|
|
'username',
|
|
'password',
|
|
'ca_cert',
|
|
'ca_path',
|
|
'client_cert',
|
|
'client_key',
|
|
'tls_server_name',
|
|
'insecure',
|
|
'username_template',
|
|
],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'password_policy',
|
|
'url',
|
|
'ca_cert',
|
|
'ca_path',
|
|
'client_cert',
|
|
'client_key',
|
|
'tls_server_name',
|
|
'insecure',
|
|
'username_template',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'verify_connection', 'password_policy'],
|
|
pluginFieldGroups: undefined,
|
|
statementFields: [],
|
|
},
|
|
'mongodb-database-plugin': {
|
|
default: ['username', 'password', 'write_concern', 'username_template'],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'connection_url',
|
|
'password_policy',
|
|
'write_concern',
|
|
'username_template',
|
|
'tls',
|
|
'tls_ca',
|
|
'root_rotation_statements',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'connection_url', 'verify_connection', 'password_policy'],
|
|
pluginFieldGroups: ['username', 'password', 'write_concern', 'username_template'],
|
|
statementFields: [
|
|
{
|
|
name: 'root_rotation_statements',
|
|
options: {
|
|
defaultShown: 'Default',
|
|
editType: 'stringArray',
|
|
subText:
|
|
"The database statements to be executed to rotate the root user's credentials. If nothing is entered, Vault will use a reasonable default.",
|
|
},
|
|
type: undefined,
|
|
},
|
|
],
|
|
'TLS options': ['tls', 'tls_ca'],
|
|
},
|
|
'mssql-database-plugin': {
|
|
default: [
|
|
'username',
|
|
'password',
|
|
'username_template',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'connection_url',
|
|
'password_policy',
|
|
'username_template',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'root_rotation_statements',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'connection_url', 'verify_connection', 'password_policy'],
|
|
statementFields: [
|
|
{
|
|
name: 'root_rotation_statements',
|
|
options: {
|
|
defaultShown: 'Default',
|
|
editType: 'stringArray',
|
|
subText:
|
|
"The database statements to be executed to rotate the root user's credentials. If nothing is entered, Vault will use a reasonable default.",
|
|
},
|
|
type: undefined,
|
|
},
|
|
],
|
|
},
|
|
'mysql-aurora-database-plugin': {
|
|
default: [
|
|
'connection_url',
|
|
'username',
|
|
'password',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'password_policy',
|
|
'connection_url',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
'tls',
|
|
'tls_ca',
|
|
'root_rotation_statements',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'verify_connection', 'password_policy'],
|
|
statementFields: [
|
|
{
|
|
name: 'root_rotation_statements',
|
|
options: {
|
|
defaultShown: 'Default',
|
|
editType: 'stringArray',
|
|
subText:
|
|
"The database statements to be executed to rotate the root user's credentials. If nothing is entered, Vault will use a reasonable default.",
|
|
},
|
|
type: undefined,
|
|
},
|
|
],
|
|
'TLS options': ['tls', 'tls_ca'],
|
|
},
|
|
'mysql-legacy-database-plugin': {
|
|
default: [
|
|
'connection_url',
|
|
'username',
|
|
'password',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'password_policy',
|
|
'connection_url',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
'tls',
|
|
'tls_ca',
|
|
'root_rotation_statements',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'verify_connection', 'password_policy'],
|
|
statementFields: [
|
|
{
|
|
name: 'root_rotation_statements',
|
|
options: {
|
|
defaultShown: 'Default',
|
|
editType: 'stringArray',
|
|
subText:
|
|
"The database statements to be executed to rotate the root user's credentials. If nothing is entered, Vault will use a reasonable default.",
|
|
},
|
|
type: undefined,
|
|
},
|
|
],
|
|
'TLS options': ['tls', 'tls_ca'],
|
|
},
|
|
'mysql-database-plugin': {
|
|
default: [
|
|
'connection_url',
|
|
'username',
|
|
'password',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'password_policy',
|
|
'connection_url',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
'tls',
|
|
'tls_ca',
|
|
'root_rotation_statements',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'verify_connection', 'password_policy'],
|
|
statementFields: [
|
|
{
|
|
name: 'root_rotation_statements',
|
|
options: {
|
|
defaultShown: 'Default',
|
|
editType: 'stringArray',
|
|
subText:
|
|
"The database statements to be executed to rotate the root user's credentials. If nothing is entered, Vault will use a reasonable default.",
|
|
},
|
|
type: undefined,
|
|
},
|
|
],
|
|
'TLS options': ['tls', 'tls_ca'],
|
|
},
|
|
'mysql-rds-database-plugin': {
|
|
default: [
|
|
'connection_url',
|
|
'username',
|
|
'password',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'password_policy',
|
|
'connection_url',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
'tls',
|
|
'tls_ca',
|
|
'root_rotation_statements',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'verify_connection', 'password_policy'],
|
|
statementFields: [
|
|
{
|
|
name: 'root_rotation_statements',
|
|
options: {
|
|
defaultShown: 'Default',
|
|
editType: 'stringArray',
|
|
subText:
|
|
"The database statements to be executed to rotate the root user's credentials. If nothing is entered, Vault will use a reasonable default.",
|
|
},
|
|
type: undefined,
|
|
},
|
|
],
|
|
'TLS options': ['tls', 'tls_ca'],
|
|
},
|
|
'vault-plugin-database-oracle': {
|
|
default: [
|
|
'connection_url',
|
|
'username',
|
|
'password',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'password_policy',
|
|
'connection_url',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'username_template',
|
|
'root_rotation_statements',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'verify_connection', 'password_policy'],
|
|
statementFields: [
|
|
{
|
|
name: 'root_rotation_statements',
|
|
options: {
|
|
defaultShown: 'Default',
|
|
editType: 'stringArray',
|
|
subText:
|
|
"The database statements to be executed to rotate the root user's credentials. If nothing is entered, Vault will use a reasonable default.",
|
|
},
|
|
type: undefined,
|
|
},
|
|
],
|
|
},
|
|
'postgresql-database-plugin': {
|
|
default: [
|
|
'connection_url',
|
|
'username',
|
|
'password',
|
|
'password_authentication',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'auth_type',
|
|
'service_account_json',
|
|
'use_private_ip',
|
|
'username_template',
|
|
'disable_escaping',
|
|
],
|
|
showAttrs: [
|
|
'plugin_name',
|
|
'name',
|
|
'password_policy',
|
|
'connection_url',
|
|
'password_authentication',
|
|
'max_open_connections',
|
|
'max_idle_connections',
|
|
'max_connection_lifetime',
|
|
'auth_type',
|
|
'service_account_json',
|
|
'use_private_ip',
|
|
'username_template',
|
|
'disable_escaping',
|
|
'root_rotation_statements',
|
|
'private_key',
|
|
'tls_ca',
|
|
'tls_certificate',
|
|
'allowed_roles',
|
|
],
|
|
fieldAttrs: ['plugin_name', 'name', 'verify_connection', 'password_policy'],
|
|
statementFields: [
|
|
{
|
|
name: 'root_rotation_statements',
|
|
options: {
|
|
defaultShown: 'Default',
|
|
editType: 'stringArray',
|
|
subText:
|
|
"The database statements to be executed to rotate the root user's credentials. If nothing is entered, Vault will use a reasonable default.",
|
|
},
|
|
type: undefined,
|
|
},
|
|
],
|
|
enterpriseOnly: 'self_managed',
|
|
},
|
|
};
|