mirror of
https://github.com/prowler-cloud/prowler.git
synced 2025-12-19 05:17:47 +00:00
107 lines
3.8 KiB
TypeScript
107 lines
3.8 KiB
TypeScript
/**
|
|
* Centralized credential field names to avoid hardcoded strings
|
|
* and provide type safety across the application
|
|
*/
|
|
|
|
// Provider credential field names
|
|
export const ProviderCredentialFields = {
|
|
CREDENTIALS_TYPE: "credentials_type",
|
|
CREDENTIALS_TYPE_AWS: "aws-sdk-default",
|
|
CREDENTIALS_TYPE_ACCESS_SECRET_KEY: "access-secret-key",
|
|
|
|
// Base fields for all providers
|
|
PROVIDER_ID: "providerId",
|
|
PROVIDER_TYPE: "providerType",
|
|
PROVIDER_ALIAS: "providerAlias",
|
|
PROVIDER_UID: "providerUid",
|
|
|
|
// AWS fields
|
|
AWS_ACCESS_KEY_ID: "aws_access_key_id",
|
|
AWS_SECRET_ACCESS_KEY: "aws_secret_access_key",
|
|
AWS_SESSION_TOKEN: "aws_session_token",
|
|
ROLE_ARN: "role_arn",
|
|
EXTERNAL_ID: "external_id",
|
|
SESSION_DURATION: "session_duration",
|
|
ROLE_SESSION_NAME: "role_session_name",
|
|
|
|
// Azure/M365 fields
|
|
CLIENT_ID: "client_id",
|
|
CLIENT_SECRET: "client_secret",
|
|
TENANT_ID: "tenant_id",
|
|
USER: "user",
|
|
PASSWORD: "password",
|
|
CERTIFICATE_CONTENT: "certificate_content",
|
|
|
|
// GCP fields
|
|
REFRESH_TOKEN: "refresh_token",
|
|
SERVICE_ACCOUNT_KEY: "service_account_key",
|
|
|
|
// Kubernetes fields
|
|
KUBECONFIG_CONTENT: "kubeconfig_content",
|
|
|
|
// GitHub fields
|
|
PERSONAL_ACCESS_TOKEN: "personal_access_token",
|
|
OAUTH_APP_TOKEN: "oauth_app_token",
|
|
GITHUB_APP_ID: "github_app_id",
|
|
GITHUB_APP_KEY: "github_app_key_content",
|
|
|
|
// MongoDB Atlas fields
|
|
ATLAS_PUBLIC_KEY: "atlas_public_key",
|
|
ATLAS_PRIVATE_KEY: "atlas_private_key",
|
|
|
|
// IaC fields
|
|
REPOSITORY_URL: "repository_url",
|
|
ACCESS_TOKEN: "access_token",
|
|
|
|
// OCI fields
|
|
OCI_USER: "user",
|
|
OCI_FINGERPRINT: "fingerprint",
|
|
OCI_KEY_FILE: "key_file",
|
|
OCI_KEY_CONTENT: "key_content",
|
|
OCI_TENANCY: "tenancy",
|
|
OCI_REGION: "region",
|
|
OCI_PASS_PHRASE: "pass_phrase",
|
|
} as const;
|
|
|
|
// Type for credential field values
|
|
export type ProviderCredentialField =
|
|
(typeof ProviderCredentialFields)[keyof typeof ProviderCredentialFields];
|
|
|
|
// API error pointer paths
|
|
export const ErrorPointers = {
|
|
// Secret fields
|
|
AWS_ACCESS_KEY_ID: "/data/attributes/secret/aws_access_key_id",
|
|
AWS_SECRET_ACCESS_KEY: "/data/attributes/secret/aws_secret_access_key",
|
|
AWS_SESSION_TOKEN: "/data/attributes/secret/aws_session_token",
|
|
CLIENT_ID: "/data/attributes/secret/client_id",
|
|
CLIENT_SECRET: "/data/attributes/secret/client_secret",
|
|
USER: "/data/attributes/secret/user",
|
|
PASSWORD: "/data/attributes/secret/password",
|
|
TENANT_ID: "/data/attributes/secret/tenant_id",
|
|
KUBECONFIG_CONTENT: "/data/attributes/secret/kubeconfig_content",
|
|
REFRESH_TOKEN: "/data/attributes/secret/refresh_token",
|
|
ROLE_ARN: "/data/attributes/secret/role_arn",
|
|
EXTERNAL_ID: "/data/attributes/secret/external_id",
|
|
SESSION_DURATION: "/data/attributes/secret/session_duration",
|
|
ROLE_SESSION_NAME: "/data/attributes/secret/role_session_name",
|
|
SERVICE_ACCOUNT_KEY: "/data/attributes/secret/service_account_key",
|
|
PERSONAL_ACCESS_TOKEN: "/data/attributes/secret/personal_access_token",
|
|
OAUTH_APP_TOKEN: "/data/attributes/secret/oauth_app_token",
|
|
GITHUB_APP_ID: "/data/attributes/secret/github_app_id",
|
|
GITHUB_APP_KEY: "/data/attributes/secret/github_app_key_content",
|
|
REPOSITORY_URL: "/data/attributes/secret/repository_url",
|
|
ACCESS_TOKEN: "/data/attributes/secret/access_token",
|
|
CERTIFICATE_CONTENT: "/data/attributes/secret/certificate_content",
|
|
OCI_USER: "/data/attributes/secret/user",
|
|
OCI_FINGERPRINT: "/data/attributes/secret/fingerprint",
|
|
OCI_KEY_FILE: "/data/attributes/secret/key_file",
|
|
OCI_KEY_CONTENT: "/data/attributes/secret/key_content",
|
|
OCI_TENANCY: "/data/attributes/secret/tenancy",
|
|
OCI_REGION: "/data/attributes/secret/region",
|
|
OCI_PASS_PHRASE: "/data/attributes/secret/pass_phrase",
|
|
ATLAS_PUBLIC_KEY: "/data/attributes/secret/atlas_public_key",
|
|
ATLAS_PRIVATE_KEY: "/data/attributes/secret/atlas_private_key",
|
|
} as const;
|
|
|
|
export type ErrorPointer = (typeof ErrorPointers)[keyof typeof ErrorPointers];
|