diff --git a/messages/es-ES.json b/messages/es-ES.json index fe684502a..b62accc21 100644 --- a/messages/es-ES.json +++ b/messages/es-ES.json @@ -43,6 +43,8 @@ "inviteLoginUser": "Por favor, asegúrese de que ha iniciado sesión como el usuario correcto.", "inviteErrorNoUser": "Lo sentimos, pero parece que la invitación a la que intentas acceder no es para un usuario que existe.", "inviteCreateUser": "Por favor, cree una cuenta primero.", + "inviteErrorOidcNotAllowed": "Las invitaciones solo pueden ser aceptadas por cuentas internas. Cierra sesión e inicia sesión con tu contraseña para este correo electrónico.", + "inviteLoginInternalOnly": "Las invitaciones requieren una cuenta interna con una contraseña. Crea una cuenta o inicia sesión con tu contraseña.", "goHome": "Ir a casa", "inviteLogInOtherUser": "Iniciar sesión como un usuario diferente", "createAnAccount": "Crear una cuenta", @@ -286,7 +288,21 @@ "noCountryFound": "Ningún país encontrado.", "siteSelectionDescription": "Este sitio proporcionará conectividad al objetivo.", "resourceType": "Tipo de recurso", - "resourceTypeDescription": "Esto controla el protocolo del recurso y cómo se renderizará en el navegador. Esto no se puede cambiar más tarde.", + "resourceTypeDescription": "Esto controla el protocolo del recurso y no se puede cambiar más tarde.", + "resourceTypeSearch": "Buscar tipos de recursos...", + "resourceTypeNotFound": "No se encontró ningún tipo de recurso", + "resourceTypeHttpDescription": "Proxy de tráfico web a través de HTTPS usando un nombre de dominio", + "resourceTypeInferenceDescription": "Dirige las solicitudes de IA a través de proveedores adjuntos", + "resourceTypeSshDescription": "Accede a un servidor SSH desde el navegador", + "resourceTypeRdpDescription": "Accede a un escritorio remoto desde el navegador", + "resourceTypeVncDescription": "Accede a un escritorio VNC desde el navegador", + "resourceTypeTcpDescription": "Proxy de tráfico TCP crudo usando un número de puerto", + "resourceTypeUdpDescription": "Proxy de tráfico UDP crudo usando un número de puerto", + "privateResourceTypeDescription": "Esto controla cómo los clientes acceden al recurso. No se puede cambiar más tarde.", + "privateResourceTypeHostDescription": "Expone un host único en la red del sitio a los clientes conectados", + "privateResourceTypeCidrDescription": "Expón un rango CIDR en la red del sitio para los clientes conectados", + "privateResourceTypeHttpDescription": "Accede a un servicio HTTP o HTTPS a través de un dominio", + "privateResourceTypeSshDescription": "Accede a un servidor SSH desde clientes conectados", "resourceDomainDescription": "El recurso se servirá en este nombre de dominio completamente calificado.", "resourceHTTPSSettings": "Configuración HTTPS", "resourceHTTPSSettingsDescription": "Configurar cómo se accederá al recurso a través de HTTPS", @@ -855,12 +871,16 @@ "authMethodsSave": "Guardar ajustes", "policyAuthStackTitle": "Autenticación", "policyAuthStackDescription": "Controla qué métodos de autenticación son necesarios para acceder a este recurso", + "policyAuthInferenceStackDescription": "Elige qué usuarios y roles pueden autenticarse en este gateway de IA", "policyAuthOrLogicTitle": "Múltiples métodos de autenticación activos", "policyAuthOrLogicBanner": "Los visitantes pueden autenticarse utilizando cualquier método activo a continuación. No necesitan completar todos ellos.", "policyAuthMethodActive": "Activo", "policyAuthMethodOff": "Apagado", "policyAuthSsoTitle": "SSO de Plataforma", "policyAuthSsoDescription": "Requiere iniciar sesión a través del proveedor de identidad de tu organización", + "policyAuthInferenceIdentityKeySignInUrl": "URL de inicio de sesión", + "policyAuthInferenceIdentityKeyHelpNoUrl": "Cada usuario ya tiene una clave API de identidad, por lo que solo necesitas crear claves API virtuales para clientes no usuarios o acceso compartido. Los usuarios pueden recuperar su clave iniciando sesión con su proveedor de identidad en la URL de este recurso, donde se mostrará después del inicio de sesión.", + "policyAuthInferenceIdentityKeyHelp": "Cada usuario ya tiene una clave API de identidad, por lo que solo necesitas crear claves API virtuales para clientes no usuarios o acceso compartido. Los usuarios recuperan su clave aquí después de iniciar sesión con su proveedor de identidad.", "policyAuthSsoSummary": "{idp} · {users} usuarios, {roles} roles", "policyAuthSsoDefaultIdp": "Proveedor por defecto", "policyAuthAddDefaultIdentityProvider": "Añadir Proveedor de Identidad Predeterminado", @@ -1079,6 +1099,8 @@ "accessRoleErrorNewRequired": "Se requiere un nuevo rol", "accessRoleErrorRemove": "Error al eliminar el rol", "accessRoleErrorRemoveDescription": "Ocurrió un error mientras se eliminaba el rol.", + "accessRoleInferenceBudget": "Presupuesto de IA", + "accessRoleInferenceBudgetDescription": "Configura cómo los miembros de este rol restringen el uso de IA según los límites de gasto o de tokens", "accessRoleName": "Nombre del Rol", "accessRoleQuestionRemove": "Estás a punto de eliminar el rol `{name}`. No puedes deshacer esta acción.", "accessRoleRemove": "Quitar rol", @@ -1424,6 +1446,28 @@ "actionDeleteSite": "Eliminar sitio", "actionGetSite": "Obtener sitio", "actionListSites": "Listar sitios", + "actionCreateAiProvider": "Crear Proveedor de IA", + "actionDeleteAiProvider": "Eliminar Proveedor de IA", + "actionGetAiProvider": "Obtener Proveedor de IA", + "actionListAiProviders": "Lista de Proveedores de IA", + "actionUpdateAiProvider": "Actualizar Proveedor de IA", + "actionCreateAiModel": "Crear Modelo de IA", + "actionDeleteAiModel": "Eliminar Modelo de IA", + "actionGetAiModel": "Obtener Modelo de IA", + "actionListAiModels": "Lista de Modelos de IA", + "actionUpdateAiModel": "Actualizar Modelo de IA", + "actionCreateAiBudget": "Crear Presupuesto de IA", + "actionDeleteAiBudget": "Eliminar Presupuesto de IA", + "actionGetAiBudget": "Obtener Presupuesto de IA", + "actionListAiBudgets": "Lista de Presupuestos de IA", + "actionUpdateAiBudget": "Actualizar Presupuesto de IA", + "actionListResourceAiModels": "Lista de Modelos de IA de Recursos", + "actionSetResourceAiModels": "Establecer Modelos de IA de Recursos", + "actionCreateVirtualApiKey": "Crear Clave API Virtual", + "actionDeleteVirtualApiKey": "Eliminar Clave API Virtual", + "actionGetVirtualApiKey": "Obtener Clave API Virtual", + "actionListVirtualApiKeys": "Lista de Claves API Virtuales", + "actionUpdateVirtualApiKey": "Actualizar Clave API Virtual", "actionApplyBlueprint": "Aplicar plano", "actionListBlueprints": "Listar blueprints", "actionGetBlueprint": "Obtener blueprint", @@ -1449,8 +1493,11 @@ "actionSetResourcePincode": "Establecer Pincode del recurso", "actionSetResourceEmailWhitelist": "Establecer lista blanca de correo de recursos", "actionGetResourceEmailWhitelist": "Obtener correo electrónico de recursos", + "actionListResourcePolicies": "Lista de Políticas de Recursos", + "actionCreateResourcePolicy": "Crear Política de Recursos", "actionGetResourcePolicy": "Obtener política de recursos", "actionUpdateResourcePolicy": "Actualizar política de recursos", + "actionDeleteResourcePolicy": "Eliminar Política de Recursos", "actionSetResourcePolicyUsers": "Definir política de recursos para usuarios", "actionSetResourcePolicyRoles": "Definir roles de política de recursos", "actionSetResourcePolicyPassword": "Definir contraseña de política de recursos", @@ -1622,6 +1669,404 @@ "sidebarInvitations": "Invitaciones", "sidebarRoles": "Roles", "sidebarShareableLinks": "Enlaces Compartibles", + "sidebarAiGateway": "Gateway de IA", + "sidebarAiProviders": "Proveedores", + "commandAiProviders": "Proveedores de IA", + "sidebarVirtualApiKeys": "Claves API Virtuales", + "sidebarMyApiKeys": "Tus Claves API", + "sidebarAccount": "Lanzador", + "commandVirtualApiKeys": "Claves API Virtuales", + "virtualApiKeysTitle": "Administrar Claves API Virtuales", + "virtualApiKeysDescription": "Crea y gestiona claves API manuales para el acceso al Gateway público de IA", + "virtualApiKeysTabIdentity": "Claves de Identidad", + "virtualApiKeysTabVirtual": "Claves Virtuales", + "virtualApiKeysIdentitySplashTitle": "Claves de Identidad para Cada Usuario", + "virtualApiKeysIdentitySplashDescription": "Cada usuario ya tiene una clave de identidad Pangolin para esta organización. Es única para su cuenta y los autentica en gateways de IA a los que pueden acceder.", + "virtualApiKeysIdentitySplashExample": "Ejemplo", + "virtualApiKeysIdentitySplashRetrieveTitle": "Cómo los Usuarios Obtienen su Clave", + "virtualApiKeysIdentitySplashRetrieveResource": "Visita una URL de gateway público de IA en el navegador e inicia sesión con su cuenta.", + "virtualApiKeysIdentitySplashRetrievePage": "O ve a mientras estás conectado.", + "virtualApiKeysIdentitySplashManual": "Puedes crear claves API virtuales adicionales en la pestaña de Claves Virtuales. Esas claves pueden estar limitadas a gateways públicos de IA específicos y opcionalmente asociadas a un usuario. Crear una clave concede inmediatamente acceso a los gateways públicos de IA seleccionados.", + "virtualApiKeysIdentitySplashGoToVirtual": "Crear Manualmente una Clave", + "virtualApiKeysEmailIdentity": "Claves de Identidad por Correo Electrónico", + "virtualApiKeysEmailIdentityDescription": "Envía a cada usuario o rol seleccionado su clave de identidad Pangolin.", + "virtualApiKeysEmailIdentitySendAll": "Enviar a todos los usuarios", + "virtualApiKeysEmailIdentitySendAllDescription": "Enviar correo electrónico a cada miembro de la organización que tenga un correo electrónico de cuenta.", + "virtualApiKeysEmailIdentitySelectUsers": "Usuarios", + "virtualApiKeysEmailIdentitySelectRoles": "Roles", + "virtualApiKeysEmailIdentitySubmit": "Enviar Correos Electrónicos", + "virtualApiKeysEmailIdentitySuccess": "Claves de identidad enviadas por correo electrónico", + "virtualApiKeysEmailIdentitySuccessDescription": "Se enviaron {sent} correos electrónicos.", + "virtualApiKeysEmailIdentitySkipped": "{skipped} usuarios se omitieron porque no tienen una dirección de correo electrónico.", + "virtualApiKeysEmailIdentityRecipientsRequired": "Selecciona al menos un usuario o rol, o envía a todos los usuarios.", + "virtualApiKeysEmailIdentityError": "Error al enviar claves de identidad", + "virtualApiKeysEmailIdentityErrorDescription": "No se pudieron enviar por correo electrónico las claves de identidad", + "virtualApiKeysBannerTitle": "Claves de Identidad para Cada Usuario", + "virtualApiKeysBannerDescription": "Cada usuario ya tiene una clave de identidad disponible en {keysUrl}. También puedes generar manualmente claves aquí que conceden acceso directo a gateways públicos de IA.", + "virtualApiKeysBannerButtonText": "Ver Claves de Identidad", + "virtualApiKeys": "Claves API Virtuales", + "virtualApiKeysSearch": "Buscar claves...", + "virtualApiKeysCreate": "Crear Clave API Virtual", + "virtualApiKeysCreateDescription": "Genera una clave manual que pueda llamar a gateways públicos de IA en esta organización", + "virtualApiKeysCreateButton": "Crear Clave", + "virtualApiKeysEmpty": "Aún no hay claves API virtuales", + "virtualApiKeysName": "Nombre", + "virtualApiKeysDescriptionOptional": "Descripción (opcional)", + "virtualApiKeysAssociateUserOptional": "Asociar Usuario (opcional)", + "virtualApiKeysAssociateUserDescription": "Asocia esta clave con un usuario para rastrear el uso. Una vez creada, esta clave concede inmediatamente acceso a los gateways públicos de IA seleccionados. No necesitas asociar un usuario manualmente al recurso. La clave también aparecerá en el perfil del usuario.", + "virtualApiKeysAllResources": "Todos los gateways públicos de IA", + "virtualApiKeysAllResourcesDescription": "Permitir que esta clave acceda a cada gateway público de IA en la organización", + "virtualApiKeysSelectResources": "Gateways Públicos de IA", + "virtualApiKeysSelectResourcesPlaceholder": "Seleccionar recursos", + "virtualApiKeysSelectResourcesDescription": "Elige a qué gateways públicos de IA puede acceder esta clave", + "virtualApiKeysNoResources": "Sin recursos", + "virtualApiKeysSecret": "Clave", + "virtualApiKeysCopyKey": "Copia esta clave. Puedes verla nuevamente más tarde desde la tabla o al editar.", + "virtualApiKeysViewSecret": "Ver Secreto", + "virtualApiKeysViewSecretTitle": "Secreto de la Clave API Virtual", + "virtualApiKeysViewSecretDescription": "Este secreto concede acceso a los gateways públicos de IA asignados a esta clave", + "virtualApiKeysEdit": "Editar Clave API Virtual", + "virtualApiKeysEditDescription": "Actualiza el usuario asociado y el acceso al gateway público de IA para esta clave", + "virtualApiKeysSaveButton": "Guardar Cambios", + "virtualApiKeysSelectResourcesRequired": "Selecciona al menos un gateway público de IA, o habilita todos los gateways públicos de IA", + "virtualApiKeysUpdated": "Clave API virtual actualizada", + "virtualApiKeysUpdatedDescription": "La clave API virtual ha sido actualizada", + "virtualApiKeysErrorUpdate": "Error al actualizar la clave API virtual", + "virtualApiKeysErrorUpdateDescription": "Error al actualizar clave API virtual", + "virtualApiKeysErrorCreate": "Error al crear clave API virtual", + "virtualApiKeysErrorCreateDescription": "Error al crear clave API virtual", + "virtualApiKeysErrorDelete": "Error al eliminar clave API virtual", + "virtualApiKeysErrorDeleteMessage": "Error al eliminar clave API virtual", + "virtualApiKeysDeleted": "Clave API virtual eliminada", + "virtualApiKeysDeletedDescription": "La clave API virtual ha sido eliminada", + "virtualApiKeysDelete": "Eliminar Clave API Virtual", + "virtualApiKeysDeleteConfirm": "Eliminar Clave", + "virtualApiKeysQuestionRemove": "¿Está seguro de que desea eliminar esta clave API virtual?", + "virtualApiKeysMessageRemove": "Los clientes que usen esta clave perderán acceso inmediatamente.", + "virtualApiKeysErrorFetchSecret": "Error al cargar el secreto", + "virtualApiKeysErrorFetchSecretDescription": "Error al cargar el secreto de la clave API virtual", + "virtualApiKeysFilterUnassigned": "No asignado", + "virtualApiKeysInferenceBudget": "Presupuesto", + "virtualApiKeysInferenceBudgetDescription": "Configura cómo esta clave restringe el uso de IA según los límites de gasto o de tokens", + "virtualApiKeysEmailOnGenerate": "Correo electrónico al generar", + "virtualApiKeysEmailThisKey": "Envía este correo electrónico", + "virtualApiKeysEmailOnGenerateDescription": "Envía la clave al usuario asociado y direcciones adicionales después de que se cree", + "virtualApiKeysEmailThisKeyDescription": "Envía la clave actual al usuario asociado y direcciones adicionales", + "virtualApiKeysEmailSmtpRequired": "El correo electrónico no está configurado en este servidor", + "virtualApiKeysEmailSmtpRequiredDescription": "Configure SMTP para enviar claves API virtuales por correo electrónico.", + "virtualApiKeysEmailSendToUser": "Enviar al usuario asociado", + "virtualApiKeysEmailSendToUserDescription": "Envía la clave al correo electrónico de la cuenta del usuario asociado", + "virtualApiKeysEmailSendToUserDisabled": "Asocia un usuario para enviar la clave a ese usuario", + "virtualApiKeysEmailAdditional": "Correos electrónicos adicionales", + "virtualApiKeysEmailAdditionalPlaceholder": "Agrega un correo electrónico y presiona Enter", + "virtualApiKeysEmailRecipientsRequired": "Selecciona el usuario asociado o agrega al menos una dirección de correo electrónico", + "myVirtualApiKeysTitle": "Tus Claves API", + "myVirtualApiKeysDescription": "Ve tu clave de identidad y cualquier clave API virtuales atribuidas a ti en esta organización", + "myVirtualApiKeysResourceTitle": "Tus Claves API para {resourceName}", + "myVirtualApiKeysResourceDescription": "Ve tu clave de identidad y claves API virtuales atribuidas a ti que pueden acceder a {resourceName}", + "myVirtualApiKeysIdentityTitle": "Clave de Identidad", + "myVirtualApiKeysIdentityHeadline": "Tu Clave API Personal", + "myVirtualApiKeysIdentityDescription": "Tu clave personal para esta organización. Es única para tu cuenta y se utiliza para identificarte cuando llamas a recursos del Gateway de IA.", + "myVirtualApiKeysIdentityResourceHeadline": "Tu Clave API Personal para {resourceName}", + "myVirtualApiKeysIdentityResourceDescription": "Tu clave personal para esta organización. Úsala para llamar a {resourceName}.", + "myVirtualApiKeysManualTitle": "Claves Atribuidas", + "myVirtualApiKeysManualDescription": "Claves API virtuales manuales que un administrador ha asociado con tu cuenta", + "myVirtualApiKeysManualResourceDescription": "Claves API virtuales manuales asociadas a tu cuenta que pueden acceder a {resourceName}", + "myVirtualApiKeysManualEmpty": "Aún no hay claves atribuidas", + "myVirtualApiKeysKindUser": "Identidad", + "myVirtualApiKeysKindManual": "Manual", + "myVirtualApiKeysUnnamed": "Clave sin nombre", + "myVirtualApiKeysRevealSecret": "Revelar Secreto", + "myVirtualApiKeysViewSecretDescription": "Este secreto te autentica en los recursos del Gateway de IA", + "aiProvidersTitle": "Proveedores de IA", + "aiProvidersDescription": "Conecta proveedores de modelos para cargas de trabajo de IA en esta organización", + "aiProvidersBannerTitle": "Conecta Proveedores de Modelos", + "aiProvidersBannerDescription": "Los proveedores son los backends de modelo que Pangolin usa para cargas de trabajo de IA. Conecta OpenAI, Anthropic y otros proveedores aquí, luego adjúntalos a gateways públicos de IA para que los usuarios puedan llamar a modelos con acceso consciente de identidad, presupuestos y registros.", + "aiProvidersAdd": "Agregar Proveedor", + "aiProvidersSearch": "Buscar proveedores...", + "aiProvidersEmpty": "Aún no hay proveedores de IA", + "aiProviderCreate": "Crear Proveedor de IA", + "aiProviderCreateDescription": "Agrega un proveedor de modelos para esta organización", + "aiProviderSeeAll": "Ver Todos los Proveedores", + "aiProviderSetting": "Ajustes del Proveedor para {providerName}", + "aiProviderSettingDescription": "Configura este proveedor de IA", + "aiProviderGeneral": "General", + "aiProviderGeneralDescription": "Configuraciones básicas para este proveedor", + "aiProviderConfiguration": "Configuración", + "aiProviderConfigurationDescription": "Enrutamiento de red y autenticación para este proveedor", + "aiProviderNetworkSettings": "Configuraciones de Red", + "aiProviderNetworkSettingsDescription": "Elige cómo llega el tráfico a este proveedor", + "aiProviderAuthSettings": "Autenticación", + "aiProviderAuthSettingsDescription": "Configura cómo este proveedor autentica solicitudes a su URL upstream", + "aiProviderBudgetSettings": "Presupuesto", + "aiProviderBudgetSettingsDescription": "Configura cómo este proveedor restringe el uso basado en los límites de gasto o de tokens", + "aiBudgetAdd": "Agregar Presupuesto", + "aiBudgetEmpty": "Aún no hay presupuestos configurados. Haz clic en Agregar Presupuesto para establecer un límite de gasto o de tokens.", + "aiBudgetUnit": "Tipo de Gasto", + "aiBudgetPeriod": "Período de Restablecimiento", + "aiBudgetAmount": "Gasto Máximo", + "aiBudgetAmountPlaceholder": "Gasto máximo", + "aiBudgetPeriodHourly": "Por hora", + "aiBudgetPeriodDaily": "Diario", + "aiBudgetPeriodWeekly": "Semanal", + "aiBudgetPeriodMonthly": "Mensual", + "aiBudgetPeriodYearly": "Anual", + "aiBudgetPeriodLifetime": "De por vida", + "aiBudgetUnitUsd": "USD", + "aiBudgetUnitTokens": "Tokens", + "aiBudgetConflictError": "Ya existe un presupuesto para este período de restablecimiento y tipo de gasto", + "aiBudgetInvalidAmountError": "Ingresa un gasto máximo mayor a 0", + "aiBudgetUpdated": "Presupuestos actualizados", + "aiBudgetErrorSave": "Error al actualizar presupuestos", + "aiProviderType": "Tipo de Proveedor", + "aiProviderTypeSearch": "Buscar proveedores...", + "aiProviderTypeNotFound": "No se encontró tipo de proveedor", + "aiProviderTypeOpenai": "OpenAI", + "aiProviderTypeAnthropic": "Anthropic", + "aiProviderTypeGoogleGemini": "Google Gemini", + "aiProviderTypeVertexAi": "Vertex AI", + "aiProviderTypeBedrock": "Amazon Bedrock", + "aiProviderTypeMicrosoftFoundry": "Microsoft Foundry", + "aiProviderTypeOpenRouter": "OpenRouter", + "aiProviderTypeVercelAiGateway": "Vercel AI Gateway", + "aiProviderTypeCustom": "Personalizado", + "aiProviderTypeOpenaiDescription": "API de OpenAI", + "aiProviderTypeAnthropicDescription": "API de Anthropic", + "aiProviderTypeGoogleGeminiDescription": "API de Google Gemini", + "aiProviderTypeVertexAiDescription": "API de Vertex AI de Google", + "aiProviderTypeBedrockDescription": "API de Amazon Bedrock Runtime", + "aiProviderTypeMicrosoftFoundryDescription": "API de Microsoft Foundry", + "aiProviderTypeOpenRouterDescription": "API de OpenRouter", + "aiProviderTypeVercelAiGatewayDescription": "API de Vercel AI Gateway", + "aiProviderTypeCustomDescription": "Lleve su propio endpoint o enrutamiento a través de objetivos del sitio", + "aiProviderUpstreamUrl": "URL de upstream", + "aiProviderUpstreamUrlDescription": "URL base para la API del proveedor", + "aiProviderUpstreamUrlOptionalDescription": "Dejar en blanco para usar el URL de upstream predeterminado para este proveedor", + "aiProviderEffectiveUpstreamUrl": "URL de upstream efectivo", + "aiProviderApiKey": "Clave API", + "aiProviderApiKeyDescription": "Clave API usada para autenticar solicitudes a este proveedor", + "aiProviderCustomHeadersDescription": "Cabeceras enviadas en cada solicitud a este proveedor. Nueva línea separada: Nombre-Cabecera: valor", + "aiProviderApiKeyLastChars": "Clave API", + "aiProviderAuthType": "Tipo de autenticación", + "aiProviderAuthTypeSearch": "Buscar tipos de autenticación...", + "aiProviderAuthTypeNotFound": "No se encontró el tipo de autenticación", + "aiProviderAuthTypeBearer": "Portador", + "aiProviderAuthTypeBearerDescription": "Autorización: clave portador. Usado por OpenAI y la mayoría de los proveedores", + "aiProviderAuthTypeXApiKey": "x-api-key", + "aiProviderAuthTypeXApiKeyDescription": "Encabezado x-api-key. Usado por Anthropic", + "aiProviderAuthTypeXGoogApiKey": "x-goog-api-key", + "aiProviderAuthTypeXGoogApiKeyDescription": "Encabezado x-goog-api-key. Usado por Google Gemini", + "aiProviderAuthTypeHec": "Splunk HEC", + "aiProviderAuthTypeHecDescription": "Autorización: Clave Splunk. Usado por el recolector de eventos HTTP Splunk", + "aiProviderAuthTypeCfAigAuthorization": "Gateway de IA de Cloudflare", + "aiProviderAuthTypeCfAigAuthorizationDescription": "cf-aig-authorization: Clave Bearer. Usado por el Gateway de IA de Cloudflare", + "aiProviderAuthTypeNone": "Sin autenticación", + "aiProviderAuthTypePassthrough": "Paso a través", + "aiProviderAuthTypeDescription": "Cómo autentica solicitudes la API upstream", + "aiProviderAuthTypePassthroughDescription": "Reenviar las cabeceras de clave API del solicitante al upstream", + "aiProviderAuthTypeNoneDescription": "No enviar cabeceras de autenticación al upstream", + "aiProviderRoutingMode": "Modo de enrutamiento", + "aiProviderRoutingModeDescription": "Enviar tráfico a una URL de upstream o a objetivos HTTP en sus sitios", + "aiProviderRoutingModeUrl": "URL de upstream", + "aiProviderRoutingModeUrlDescription": "Llamar a una URL base de API pública o privada", + "aiProviderRoutingModeTarget": "Objetivos de sitio", + "aiProviderRoutingModeTargetDescription": "Ruta a través de objetivos en sus sitios", + "aiProviderRoutingModeTargetNote": "Después de crear este proveedor, configure objetivos de sitio en la pestaña de Configuración de Red.", + "aiProviderTargetNoOne": "Este proveedor no tiene objetivos. Agregue un objetivo para enrutar solicitudes a través de sus sitios.", + "aiProviderSkipTlsVerification": "Omitir verificación de TLS", + "aiProviderSkipTlsVerificationDescription": "Deshabilitar la verificación del certificado TLS para la conexión de upstream", + "aiProviderBudget": "Presupuesto", + "aiProviderBudgetDescription": "Presupuesto de gastos opcional o de token para este proveedor", + "aiProviderBudgetAmount": "Cantidad de presupuesto", + "aiProviderBudgetUnit": "Unidad de presupuesto", + "aiProviderBudgetUnitUsd": "USD", + "aiProviderBudgetUnitTokens": "Tokens", + "aiProviderEnabled": "Activado", + "aiProviderEnabledDescription": "Desactivar completamente este proveedor en todos los recursos", + "aiProviderErrorCreate": "Error al crear el proveedor de IA", + "aiProviderErrorUpdate": "Error al actualizar el proveedor de IA", + "aiProviderErrorDelete": "Error al eliminar el proveedor de IA", + "aiProviderErrorLoad": "Error al cargar el proveedor de IA", + "aiProviderErrorUpstreamUrlInvalid": "Introduce una URL de upstream válida", + "aiProviderErrorUpstreamUrlRequired": "Se requiere URL de upstream para este proveedor", + "aiProviderErrorAuthTypeRequired": "Se requiere tipo de autenticación", + "aiProviderErrorApiKeyRequired": "Se requiere clave API", + "aiProviderErrorRoutingModeTarget": "El enrutamiento de objetivos del sitio solo está disponible para proveedores personalizados", + "aiProviderErrorCapabilitiesRequired": "Seleccione al menos una capacidad de API", + "aiProviderCapabilities": "Capacidades de la API", + "aiProviderCapabilitiesDescription": "Seleccione qué formatos de API puede manejar este proveedor. Los proveedores conocidos comienzan con valores predeterminados recomendados.", + "aiProviderCapabilitiesCustomDescription": "Seleccione qué formatos de API puede manejar este proveedor personalizado", + "aiProviderCapabilitiesSelect": "Seleccionar capacidades", + "aiProviderCapabilitiesEmpty": "No se encontraron capacidades", + "aiProviderCapabilitiesSearch": "Buscar capacidades...", + "aiCapabilityOpenaiChat": "OpenAI Chat Completions", + "aiCapabilityOpenaiChatDescription": "Admite /v1/chat/completions", + "aiCapabilityOpenaiResponses": "Respuestas de OpenAI", + "aiCapabilityOpenaiResponsesDescription": "Admite /v1/responses", + "aiCapabilityAnthropicMessages": "Mensajes Antropicos", + "aiCapabilityAnthropicMessagesDescription": "Admite /v1/messages", + "aiCapabilityGeminiGenerateContent": "Generar contenido Gemini", + "aiCapabilityGeminiGenerateContentDescription": "Admite la API directa de Gemini", + "aiCapabilityBedrockModelInvoke": "Invocar modelo de Bedrock", + "aiCapabilityBedrockModelInvokeDescription": "Admite Amazon Bedrock InvokeModel", + "aiCapabilityGoogleGenerateContent": "Generar contenido con Vertex", + "aiCapabilityGoogleGenerateContentDescription": "Admite el formato Gemini de Vertex AI", + "aiCapabilityGoogleRawPredict": "Predicción directa de Vertex", + "aiCapabilityGoogleRawPredictDescription": "Admite Vertex AI rawPredict para modelos Antropic", + "aiCapabilityBedrockConverse": "Convoque en Bedrock", + "aiCapabilityBedrockConverseDescription": "Admite la API de Amazon Bedrock Converse", + "aiProviderCreated": "Proveedor de IA creado", + "aiProviderUpdated": "Proveedor de IA actualizado", + "aiProviderDeleted": "Proveedor de IA eliminado", + "aiProviderDelete": "Eliminar proveedor", + "aiProviderDeleteConfirm": "Eliminar proveedor", + "aiProviderQuestionRemove": "¿Está seguro de que desea eliminar este proveedor de IA?", + "aiProviderMessageRemove": "Esto eliminará permanentemente el proveedor y sus modelos y objetivos. Esto no se puede deshacer.", + "aiProviderErrorNoUpdate": "El proveedor de IA no está disponible para actualizar", + "aiProviderModels": "Modelos", + "aiProviderModelsDescription": "Definir las listas de permitidos y bloqueados para este proveedor. Las solicitudes deben coincidir con una entrada permitida y no deben coincidir con una entrada bloqueada.", + "aiProviderCreateModelsDescription": "Elija qué modelos puede servir este proveedor. Una lista permitida vacía niega todo el tráfico. Puede agregar o cambiar modelos más tarde.", + "aiProviderModelsPlaceholder": "Buscar modelos o escribir una clave personalizada", + "aiProviderModelsAllow": "Lista de Permitidos", + "aiProviderModelsAllowDescription": "Modelos que pueden utilizarse a través de este proveedor. Vacío significa negar todos.", + "aiProviderModelsAllowPlaceholder": "Ingrese la clave del modelo", + "aiProviderModelsAllowEmpty": "No se han agregado modelos aún.", + "aiProviderModelsBlock": "Lista de Bloqueados", + "aiProviderModelsBlockDescription": "Modelos para denegar incluso si coinciden con una entrada permitida.", + "aiProviderModelsBlockPlaceholder": "Ingrese la clave del modelo", + "aiProviderModelsBlockEmpty": "No se han agregado modelos aún.", + "aiProviderModelsAdd": "Agregar Modelos", + "aiProviderModelsClearAll": "Borrar todo", + "aiProviderModelsAddCustom": "Agregar \"{key}\"", + "aiProviderModelsAddCustomHint": "Presione Enter para agregar esta clave de modelo personalizada.", + "aiProviderModelsAddBulk": "Agregar {count} claves personalizadas.", + "aiProviderModelsAddBulkHint": "Presiona Enter para agregar {count} claves personalizadas.", + "aiProviderModelsAddOne": "Agregar {key} ahora", + "aiProviderModelsAddSelected": "Agregar seleccionado", + "aiProviderModelsSelectedCount": "{count} seleccionados", + "aiProviderModelsSelectAll": "Seleccionar todo", + "aiProviderModelsClearSelected": "Limpiar", + "aiProviderModelsBulkHint": "Seleccione modelos conocidos o escriba una clave personalizada.", + "aiProviderModelsCatalogEmpty": "No hay modelos de catálogo coincidentes.", + "aiProviderModelsCatalogHeading": "Modelos conocidos", + "aiProviderModelsAllLabel": "Todos los modelos", + "aiProviderModelsAllPatternHint": "Comodín: *", + "aiProviderModelsAddAllAllow": "Permitir todos los modelos", + "aiProviderModelsAddAllBlock": "Bloquear todos los modelos", + "aiProviderModelsAddAllDescription": "Utiliza el comodín * para que cada clave de modelo coincida.", + "aiProviderModelsViewMore": "Ver más ({count})", + "aiProviderModelsViewLess": "Ver menos", + "aiProviderModelsRemove": "Eliminar modelo", + "aiProviderModelsEditHint": "Haga clic para editar la configuración del modelo", + "aiProviderModelsSourceCatalog": "Modelo de catálogo conocido", + "aiProviderModelsSourceCustom": "Clave de modelo personalizada", + "aiProviderModelsSourcePattern": "Patrón de comodín", + "aiProviderModelsSourceAll": "Coincide con cada clave de modelo", + "aiProviderModelsBudgetConfigured": "Presupuesto configurado", + "aiProviderModelsEditTitle": "Editar modelo", + "aiProviderModelsEditDescription": "Actualizar la clave del modelo o configurar su presupuesto.", + "aiProviderModelsBudgetTab": "Presupuesto", + "aiProviderModelsKeyLabel": "Clave del modelo", + "aiProviderModelsKeyRequired": "Ingrese una clave de modelo", + "aiProviderModelsKeyDuplicate": "Esta clave de modelo ya está en una lista", + "aiProviderModelsOverlapError": "Estos patrones no pueden estar en ambas listas: {keys}", + "aiProviderModelsUpdated": "Modelos actualizados", + "aiProviderModelsErrorUpdate": "No se pudo actualizar los modelos", + "aiResourceProviders": "Proveedores", + "aiResourceProvidersDescription": "Elija qué proveedores de IA puede usar este portal de IA", + "aiResourceProvidersHelp": "Adjunte proveedores y elija heredar (usar las listas de cada proveedor) o seleccionar (elija una lista de permitidos para este recurso). No se permiten patrones de permisos que entren en conflicto entre proveedores adjuntos.", + "aiResourceProvidersSelect": "Seleccionar proveedores", + "aiResourceProvidersEmpty": "No se encontraron proveedores de IA", + "aiResourceProvidersNoneAttached": "No se han adjuntado proveedores aún.", + "aiResourceProvidersAdd": "Agregar proveedor", + "aiResourceProvidersRemove": "Eliminar proveedor", + "aiResourceProviderToggleEnabled": "Habilitar o deshabilitar este proveedor en el recurso", + "aiResourceProviderDisabled": "Deshabilitado", + "aiResourceProvidersUpdated": "Proveedores actualizados", + "aiResourceProvidersErrorUpdate": "Fallo al actualizar proveedores", + "aiResourceProviderEditDescription": "Elija cómo se exponen los modelos de este proveedor en este recurso.", + "viewProviderSettings": "Ver configuración del proveedor", + "aiResourceProviderMode": "Modo de acceso", + "aiResourceProviderModeInherit": "Heredar", + "aiResourceProviderModeSelect": "Seleccionar", + "aiResourceProviderModeSelectSummary": "Seleccionar · {count} modelos", + "aiResourceProviderModeInheritHelp": "Use las listas de permitidos y bloqueados de este proveedor según lo configurado en el proveedor.", + "aiResourceProviderModeSelectHelp": "Elija un subconjunto de modelos de la lista de permitidos de este proveedor para este recurso.", + "aiResourceProviderAllowModels": "Lista de permitidos", + "aiResourceProviderAllowModelsSelect": "Seleccionar modelos", + "aiResourceProviderAllowModelsSearch": "Buscar modelos...", + "aiResourceProviderAllowModelsEmpty": "No se encontraron modelos", + "aiResourceProviderAllowModelsHelp": "Solo se pueden seleccionar modelos de la lista de permitidos de este proveedor.", + "aiResourceAliasRequired": "Alias es necesario para portales de IA", + "aiResourceDomainConfiguration": "Configuración del dominio", + "aiResourceDomainConfigurationDescription": "Elija el dominio que los clientes usarán para llegar a este portal de IA.", + "aiUsageAnalyticsTitle": "Analítica de uso de IA", + "aiUsageAnalyticsDescription": "Analizar el costo del portal de IA, uso de token y actividad a través de proveedores, recursos, roles y usuarios", + "aiUsageTabOverview": "Resumen", + "aiUsageTabProviders": "Proveedores", + "aiUsageTabResources": "Recursos", + "aiUsageFilterProvider": "Proveedor", + "aiUsageFilterModel": "Modelo", + "aiUsageFilterResource": "Recurso", + "aiUsageFilterRole": "Rol", + "aiUsageFilterUser": "Usuario", + "aiUsageFilterAllProviders": "Todos los proveedores", + "aiUsageFilterAllModels": "Todos los modelos", + "aiUsageFilterAllResources": "Todos los recursos", + "aiUsageFilterAllRoles": "Todos los roles", + "aiUsageFilterAllUsers": "Todos los usuarios", + "aiUsageFilterSearch": "Buscar...", + "aiUsageFilterNotFound": "No se encontraron opciones", + "aiUsageResetFilters": "Restablecer filtros", + "aiUsageRefresh": "Actualizar", + "aiUsageTokenTypePrompt": "Indicio", + "aiUsageTokenTypeCacheRead": "Lectura de caché", + "aiUsageTokenTypeCacheWrite": "Escritura de caché", + "aiUsageTokenTypeCompletion": "Completitud", + "aiUsageTokenTypeReasoning": "Razonamiento", + "aiUsageRequests": "Solicitudes", + "aiUsageCost": "Costo", + "aiUsageTokens": "Tokens", + "aiUsageOther": "Otro", + "aiUsageTotalRequests": "Solicitudes Totales", + "aiUsageTotalTokens": "Tokens Totales", + "aiUsageTotalCost": "Costo Total", + "aiUsageEstimated": "Estimado", + "aiUsageRequestVolume": "Volumen de Solicitudes", + "aiUsageTokenUsage": "Uso de Tokens", + "aiUsageModelCost": "Costo del Modelo", + "aiUsageModelTokens": "Tokens del Modelo", + "aiUsageTopModels": "Modelos Principales", + "aiUsageTopProviders": "Proveedores Principales", + "aiUsageProviderCost": "Costo del Proveedor", + "aiUsageProviderTokenUsage": "Uso de Tokens del Proveedor", + "aiUsageTopResources": "Recursos Principales", + "aiUsageResourceCost": "Costo del Recurso", + "aiUsageResourceTokenUsage": "Uso de Tokens del Recurso", + "aiUsageResourceTypePublic": "Recurso Público", + "aiUsageResourceTypeSite": "Recurso Privado", + "aiUsageNoResource": "Sin recurso", + "aiUsageRolesTab": "Roles", + "aiUsageUsersTab": "Usuarios", + "aiUsageTopRoles": "Roles Principales", + "aiUsageRoleCost": "Costo del Rol", + "aiUsageRoleTokenUsage": "Uso de Tokens del Rol", + "aiUsageTopUsers": "Usuarios principales", + "aiUsageUserCost": "Costo del Usuario", + "aiUsageUserTokenUsage": "Uso de Tokens del Usuario", + "aiUsageUnknownUser": "Usuario desconocido", + "aiUsageVirtualApiKeysTab": "Claves API Virtuales", + "aiUsageFilterVirtualApiKey": "Clave API Virtual", + "aiUsageFilterAllVirtualApiKeys": "Todas las Claves API Virtuales", + "aiUsageTopVirtualApiKeys": "Claves API Virtuales Principales", + "aiUsageVirtualApiKeyCost": "Costo de la Clave API Virtual", + "aiUsageVirtualApiKeyTokenUsage": "Uso de Tokens de la Clave API Virtual", + "aiUsageUnknownVirtualApiKey": "Sin clave API virtual", + "aiUsageUnnamedVirtualApiKey": "Clave sin nombre", + "aiUsageLoading": "Cargando...", + "aiUsageNoData": "Sin información", + "resourceBudgetSettings": "Presupuesto", + "resourceBudgetSettingsDescription": "Configure cómo este portal de IA restringe el uso en función de los límites de gasto o tokens", "sidebarApiKeys": "Claves API", "sidebarProvisioning": "Aprovisionamiento", "sidebarSettings": "Ajustes", @@ -2193,6 +2638,8 @@ "subnetPlaceholder": "Subred", "addressDescription": "La dirección interna del cliente. Debe estar dentro de la subred de la organización.", "selectSites": "Seleccionar sitios", + "selectResources": "Seleccionar recursos", + "multiResourcesSelectorResourcesCount": "{count, plural, one {# recurso} other {# recursos}}", "selectLabels": "Seleccionar etiquetas", "sitesDescription": "El cliente tendrá conectividad con los sitios seleccionados", "clientInstallOlm": "Instalar Olm", @@ -2245,10 +2692,11 @@ "timeIsInSeconds": "El tiempo está en segundos", "requireDeviceApproval": "Requiere aprobaciones del dispositivo", "requireDeviceApprovalDescription": "Los usuarios con este rol necesitan nuevos dispositivos aprobados por un administrador antes de poder conectarse y acceder a los recursos.", - "sshSettings": "Configuración SSH", + "sshSettings": "SSH", + "inferenceSettings": "Portal de IA", "sshAccess": "Acceso SSH", - "rdpSettings": "Configuración RDP", - "vncSettings": "Configuración VNC", + "rdpSettings": "RDP", + "vncSettings": "VNC", "sshServer": "Servidor SSH", "rdpServer": "Servidor RDP", "vncServer": "Servidor VNC", @@ -2401,6 +2849,7 @@ "editInternalResourceDialogModeCidr": "CIDR", "editInternalResourceDialogModeHttp": "HTTP", "editInternalResourceDialogModeHttps": "HTTPS", + "editInternalResourceDialogModeInference": "Portal de IA", "editInternalResourceDialogModeSsh": "SSH", "editInternalResourceDialogScheme": "Esquema", "editInternalResourceDialogEnableSsl": "Activar TLS", @@ -2421,8 +2870,8 @@ "privateResourceAllowIcmpPing": "Permitir ping ICMP", "privateResourceNetworkAccess": "Acceso de red", "privateResourceNetworkAccessDescription": "Controlar el acceso a puertos TCP/UDP y si se permite ping ICMP para este recurso.", - "hostSettings": "Configuraciones del anfitrión", - "cidrSettings": "Configuraciones CIDR", + "hostSettings": "Host", + "cidrSettings": "CIDR", "createInternalResourceDialogResourceProperties": "Propiedades del recurso", "createInternalResourceDialogName": "Nombre", "createInternalResourceDialogSite": "Sitio", @@ -2460,6 +2909,7 @@ "createInternalResourceDialogModeHttp": "HTTP", "createInternalResourceDialogModeHttps": "HTTPS", "createInternalResourceDialogModeSsh": "SSH", + "createInternalResourceDialogModeInference": "Portal de IA", "scheme": "Esquema", "createInternalResourceDialogScheme": "Esquema", "createInternalResourceDialogEnableSsl": "Activar TLS", @@ -3051,6 +3501,7 @@ "validPassword": "Contraseña válida", "validEmail": "Valid email", "validSSO": "Valid SSO", + "validVirtualAPIKey": "Clave API Virtual Válida", "view": "Ver", "configManaged": "Configuración Gestionada", "connectedClient": "Cliente conectado", @@ -3072,6 +3523,38 @@ "logRetention": "Retención de Log", "logRetentionDescription": "Administrar cuánto tiempo se conservan los diferentes tipos de registros para esta organización o desactivarlos", "requestLogsDescription": "Ver registros de solicitudes detallados para los recursos de esta organización", + "aiSessionLogs": "Registros de Sesiones del Portal de IA", + "aiSessionLogsDescription": "Ver transcripciones de solicitud y respuesta para solicitudes del portal de IA en esta organización", + "sidebarLogsAi": "Registros de Sesiones", + "commandLogsAi": "Registros de Sesiones", + "sidebarLogsAiUsage": "Analítica de Uso", + "commandLogsAiUsage": "Analítica de Uso", + "provider": "Proveedor", + "capability": "Capacidad", + "model": "Modelo", + "virtualApiKey": "Clave API Virtual", + "noVirtualApiKey": "Sin clave API virtual", + "stream": "Flujo", + "streaming": "Flujo de eventos", + "nonStreaming": "No-flujo", + "statusCode": "Código de estado", + "aiSessionId": "ID de Sesión", + "aiSessionRequest": "Solicitud", + "aiSessionResponse": "Respuesta", + "aiSessionNoData": "Sin datos capturados", + "aiSessionCouldNotParse": "(sin procesar, no se pudo analizar la transcripción)", + "aiSessionLogTruncated": "Esta sesión fue truncada antes del almacenamiento y puede estar incompleta.", + "aiSessionViewRaw": "Ver JSON sin procesar", + "aiSessionViewChat": "Ver Chat", + "cost": "Costo", + "estimated": "Estimado", + "tokenUsage": "Uso de Tokens", + "promptTokens": "Tokens de Indicio", + "cacheReadTokens": "Tokens de Lectura de Caché", + "cacheWriteTokens": "Tokens de Escritura de Caché", + "completionTokens": "Tokens de Completitud", + "reasoningTokens": "Tokens de Razonamiento", + "totalTokens": "Total de Tokens", "requestAnalyticsDescription": "Ver análisis de solicitudes detalladas de recursos en esta organización", "logRetentionRequestLabel": "Retención de Registro de Solicitud HTTP", "logRetentionRequestDescription": "Cuánto tiempo conservar los registros de solicitudes", @@ -3081,6 +3564,8 @@ "logRetentionActionDescription": "Cuánto tiempo retener los registros de acción", "logRetentionConnectionLabel": "Retención de Registro de Conexión", "logRetentionConnectionDescription": "Cuánto tiempo conservar los registros de conexión", + "logRetentionAISessionsLabel": "Retención de Registro de Sesiones del Portal de IA", + "logRetentionAISessionsDescription": "Cuánto tiempo retener los registros de sesión de solicitud/respuesta del portal de IA", "logRetentionDisabled": "Deshabilitado", "logRetention3Days": "3 días", "logRetention7Days": "7 días", @@ -3098,8 +3583,8 @@ "sourceAddress": "Dirección de origen", "destinationAddress": "Dirección de destino", "duration": "Duración", - "licenseRequiredToUse": "Se requiere una licencia Enterprise Edition o Pangolin Cloud para usar esta función. Reserve una demostración gratuita o una prueba POC para saber más.", - "ossEnterpriseEditionRequired": "La Enterprise Edition es necesaria para utilizar esta función. Esta función también está disponible en Pangolin Cloud. Reserva una demostración gratuita o prueba POC para saber más.", + "licenseRequiredToUse": "Se requiere una licencia para la Edición Empresarial. Reserve una demostración o prueba", + "ossEnterpriseEditionRequired": "Se requiere una licencia para la Edición Empresarial. Reserve una demostración o prueba", "certResolver": "Resolver certificado", "certResolverDescription": "Seleccione la resolución de certificados a utilizar para este recurso.", "selectCertResolver": "Seleccionar Resolver Certificado", @@ -3297,9 +3782,9 @@ "internalResourceFormMultiSiteRoutingHelp": "Seleccionar múltiples sitios habilita el enrutamiento resistente y la conmutación por error para alta disponibilidad.", "internalResourceFormMultiSiteRoutingHelpLearnMore": "Más información", "editInternalResourceDialogPortRestrictionsDescription": "Restringir el acceso a puertos TCP/UDP específicos o permitir/bloquear todos los puertos.", - "createInternalResourceDialogHttpConfiguration": "Configuración HTTP", + "createInternalResourceDialogHttpConfiguration": "Configuración del dominio", "createInternalResourceDialogHttpConfigurationDescription": "Elija el dominio que los clientes usarán para alcanzar este recurso a través de HTTP o HTTPS.", - "editInternalResourceDialogHttpConfiguration": "Configuración HTTP", + "editInternalResourceDialogHttpConfiguration": "Configuración del dominio", "editInternalResourceDialogHttpConfigurationDescription": "Elija el dominio que los clientes usarán para alcanzar este recurso a través de HTTP o HTTPS.", "editInternalResourceDialogTcp": "TCP", "editInternalResourceDialogUdp": "UDP", @@ -3735,7 +4220,18 @@ "resourceLauncherTcp": "TCP", "resourceLauncherUdp": "UDP", "resourceLauncherUnlabeled": "Sin Etiqueta", + "resourceLauncherAiGateway": "Portal de IA", "resourceLauncherNoSite": "Sin Sitio", + "resourceLauncherAvailableModels": "Modelos Disponibles", + "resourceLauncherAvailableModelsDescription": "Modelos que puede usar con este portal de IA.", + "resourceLauncherAvailableModelsEmpty": "No hay modelos disponibles para este recurso.", + "resourceLauncherAvailableModelsError": "No se pudieron cargar los modelos disponibles.", + "resourceLauncherApiKeys": "Claves API", + "resourceLauncherApiKeysDescription": "Use su clave de identidad o una clave atribuida para autenticarse con este recurso.", + "resourceLauncherApiKeysIdentity": "Clave de Identidad", + "resourceLauncherApiKeysManual": "Claves Atribuidas", + "resourceLauncherApiKeysEmpty": "No hay claves API disponibles para este recurso.", + "resourceLauncherApiKeysError": "No se pudieron cargar las claves API.", "resourceLauncherNoResourcesInGroup": "No hay recursos en este grupo", "resourceLauncherEmptyStateTitle": "No hay Recursos Disponibles", "resourceLauncherEmptyStateDescription": "Todavía no tienes acceso a ningún recurso. Contacta a tu administrador para solicitar acceso.", @@ -3762,9 +4258,9 @@ "resourceLauncherViewDeleteFailedDescription": "No se pudo eliminar la vista del lanzador. Por favor, intenta de nuevo.", "memberPortalPrevious": "Anterior", "memberPortalNext": "Siguiente", - "httpSettings": "Configuración HTTP", - "tcpSettings": "Configuración TCP", - "udpSettings": "Configuración UDP", + "httpSettings": "HTTP", + "tcpSettings": "TCP", + "udpSettings": "UDP", "sshTitle": "SSH", "sshConnectingDescription": "Estableciendo una conexión segura…", "sshConnecting": "Conectando…",