Seguridad de Azure Cognitive Services

La seguridad se debe considerar una de las máximas prioridades cuando se desarrolla cualquier aplicación. Con la aparición de las aplicaciones habilitadas para la inteligencia artificial, la seguridad cobra aún mayor importancia. En este artículo se describen varios aspectos de la seguridad de Azure Cognitive Services, como el uso de la seguridad de la capa de transporte, la autenticación, la configuración segura de los datos confidenciales y la Caja de seguridad del cliente para el acceso a los datos de los clientes.

Seguridad de la capa de transporte (TLS)

Todos los puntos de conexión de Cognitive Services expuestos a través de HTTP aplican TLS 1.2. Con un protocolo de seguridad aplicado, los consumidores que intentan llamar a un punto de conexión de Cognitive Services deben cumplir estas directrices:

  • El sistema operativo (SO) del cliente debe admitir TLS 1.2
  • El lenguaje (y la plataforma) que se usa para hacer la llamada HTTP tiene que especificar TLS 1.2 como parte de la solicitud
    • En función del lenguaje y la plataforma, la especificación de TLS se realiza de forma implícita o explícita

En el caso de los usuarios de .NET, tenga en cuenta los procedimientos recomendados de Seguridad de la capa de transporte .

Authentication

Cuando se habla de autenticación, hay varias ideas equivocadas que son habituales. La autenticación y la autorización suelen confundirse. La identidad es también un componente importante de la seguridad. Una identidad es una colección de información sobre una entidad de seguridad. Los proveedores de identidades (IdP) proporcionan identidades a los servicios de autenticación. La autenticación es el acto de comprobar la identidad de un usuario. La autorización es la especificación de los privilegios y derechos de acceso a los recursos de una identidad determinada. Varias de las ofertas de Cognitive Services incluyen el control de acceso basado en roles de Azure (Azure RBAC). Azure RBAC se puede usar para simplificar una parte del ceremonial implicado en la administración manual de entidades de seguridad. Para obtener más detalles, consulte Control de acceso basado en roles de Azure para recursos de Azure.

Para más información sobre la autenticación con claves de suscripción, tokens de acceso y Azure Active Directory (AAD), consulte Autenticación de solicitudes en Azure Cognitive Services.

Configuración de las variables de entorno y de la aplicación

Las variables de entorno son pares nombre-valor que se almacenan en un entorno específico. Son una alternativa más segura al uso de valores codificados de forma rígida para datos confidenciales. Los valores codificados de forma rígida no son seguros y deben evitarse.

Precaución

No use valores codificados de forma rígida para datos confidenciales, ya que representa una importante vulnerabilidad de la seguridad.

Nota

Aunque las variables de entorno se almacenan en texto sin formato, están aisladas en un entorno. Si un entorno está en peligro, también lo están sus variables.

Establecimiento de una variable de entorno

Para establecer las variables de entorno, use uno de los siguientes comandos (donde ENVIRONMENT_VARIABLE_KEY es la clave con nombre y value es el valor almacenado en la variable de entorno).

Cree y asigne una variable de entorno persistente según el valor.

:: Assigns the env var to the value
setx ENVIRONMENT_VARIABLE_KEY="value"

En una nueva instancia del símbolo del sistema, lea la variable de entorno.

:: Prints the env var value
echo %ENVIRONMENT_VARIABLE_KEY%

Sugerencia

Después de establecer una variable de entorno, reinicie su entorno de desarrollo integrado (IDE) para asegurarse de que las variables de entorno recién agregadas están disponibles.

Obtención de una variable de entorno

Para obtener una variable de entorno, se debe leer en memoria. En función del lenguaje que se utilice, plantéese la posibilidad de usar los siguientes fragmentos de código. Estos fragmentos de código muestran cómo obtener una variable de entorno dada la clave ENVIRONMENT_VARIABLE_KEY y asignarla a una variable denominada value.

Para obtener más información, vea Environment.GetEnvironmentVariable .

using static System.Environment;

class Program
{
    static void Main()
    {
        // Get the named env var, and assign it to the value variable
        var value =
            GetEnvironmentVariable(
                "ENVIRONMENT_VARIABLE_KEY");
    }
}

Caja de seguridad del cliente

La Caja de seguridad del cliente de Microsoft Azure proporciona una interfaz para los clientes y así permitirles revisar y aprobar o rechazar las solicitudes de acceso de datos de cliente. Se utiliza en casos donde un ingeniero de Microsoft necesita obtener acceso a los datos del cliente durante una solicitud de soporte técnico. En este artículo se indica la manera de iniciar, seguir y almacenar las solicitudes de la Caja de seguridad del cliente para realizar revisiones y auditorías posteriores; consulte Caja de seguridad del cliente.

La Caja de seguridad del cliente está disponible para este servicio:

  • Traductor
  • Reconocimiento del lenguaje conversacional
  • Clasificación de texto personalizada
  • Reconocimiento de entidades con nombre personalizado
  • Flujo de trabajo de orquestación

En cuanto a los siguientes servicios, los ingenieros de Microsoft no obtendrán acceso a los datos de clientes del nivel E0:

  • Language Understanding
  • Caras
  • Content Moderator
  • Personalizer

Para solicitar la capacidad de usar la SKU de E0, rellene y envíe este formulario de solicitud. Tardará de 3 a 5 días hábiles aproximadamente en recibir una respuesta sobre el estado de la solicitud. En función de la demanda, es posible que se coloque en una cola y se apruebe a medida que haya espacio disponible. Una vez aprobado el uso de E0 SKU con LUIS, deberá crear un nuevo recurso desde Azure Portal y seleccionar E0 como el plan de tarifa. Los usuarios no podrán realizar la actualización de F0 a la nueva SKU de E0.

El servicio de voz no admite actualmente la Caja de seguridad del cliente. Sin embargo, los datos del cliente se pueden almacenar con Traiga su propio almacenamiento (BYOS), lo que le permite lograr controles de datos similares para la Caja de seguridad del cliente. Tenga en cuenta que los datos del servicio de voz permanecen y se procesan en la región en la que se creó el recurso de voz. Esto se aplica a los datos en reposo y a los datos en tránsito. Cuando se usan características de personalización, como el Habla personalizada y la Voz personalizada, todos los datos del cliente se transfieren, almacenan y procesan en la misma región donde residen el recurso de BYOS (si se usa) y el servicio de voz.

Importante

Microsoft no usa los datos del cliente para mejorar sus modelos de voz. Además, si el registro de puntos de conexión está deshabilitado y no se usa ninguna personalización, no se almacenan los datos de clientes.

Pasos siguientes