diff --git a/frontend/src/hooks/api/dynamicSecret/types.ts b/frontend/src/hooks/api/dynamicSecret/types.ts
index 7076ea929..db852c333 100644
--- a/frontend/src/hooks/api/dynamicSecret/types.ts
+++ b/frontend/src/hooks/api/dynamicSecret/types.ts
@@ -21,7 +21,8 @@ export enum DynamicSecretProviders {
AwsIam = "aws-iam",
Redis = "redis",
AwsElastiCache = "aws-elasticache",
- MongoAtlas = "mongo-db-atlas"
+ MongoAtlas = "mongo-db-atlas",
+ ElasticSearch = "elastic-search"
}
export enum SqlProviders {
@@ -97,9 +98,9 @@ export type TDynamicSecretProvider =
creationStatement: string;
revocationStatement: string;
ca?: string | undefined;
- }
+ };
}
-|{
+ | {
type: DynamicSecretProviders.MongoAtlas;
inputs: {
adminPublicKey: string;
@@ -115,6 +116,28 @@ export type TDynamicSecretProvider =
type: string;
}[];
};
+ }
+ | {
+ type: DynamicSecretProviders.ElasticSearch;
+ inputs: {
+ host: string;
+ port: number;
+ creationStatement: string;
+ revocationStatement: string;
+ ca?: string | undefined;
+
+ auth:
+ | {
+ type: "user";
+ username: string;
+ password: string;
+ }
+ | {
+ type: "api-key";
+ apiKey: string;
+ apiKeyId: string;
+ };
+ };
};
export type TCreateDynamicSecretDTO = {
diff --git a/frontend/src/views/SecretMainPage/components/ActionBar/CreateDynamicSecretForm/CreateDynamicSecretForm.tsx b/frontend/src/views/SecretMainPage/components/ActionBar/CreateDynamicSecretForm/CreateDynamicSecretForm.tsx
index 52b3170a2..71b25e63c 100644
--- a/frontend/src/views/SecretMainPage/components/ActionBar/CreateDynamicSecretForm/CreateDynamicSecretForm.tsx
+++ b/frontend/src/views/SecretMainPage/components/ActionBar/CreateDynamicSecretForm/CreateDynamicSecretForm.tsx
@@ -1,5 +1,6 @@
import { useState } from "react";
-import { SiApachecassandra,SiMongodb } from "react-icons/si";
+import { DiRedis } from "react-icons/di";
+import { SiApachecassandra, SiElasticsearch, SiMongodb } from "react-icons/si";
import { faAws } from "@fortawesome/free-brands-svg-icons";
import { faDatabase } from "@fortawesome/free-solid-svg-icons";
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
@@ -11,6 +12,7 @@ import { DynamicSecretProviders } from "@app/hooks/api/dynamicSecret/types";
import { AwsElastiCacheInputForm } from "./AwsElastiCacheInputForm";
import { AwsIamInputForm } from "./AwsIamInputForm";
import { CassandraInputForm } from "./CassandraInputForm";
+import { ElasticSearchInputForm } from "./ElasticSearchInputForm";
import { MongoAtlasInputForm } from "./MongoAtlasInputForm";
import { RedisInputForm } from "./RedisInputForm";
import { SqlDatabaseInputForm } from "./SqlDatabaseInputForm";
@@ -40,12 +42,12 @@ const DYNAMIC_SECRET_LIST = [
title: "Cassandra"
},
{
- icon: