Guardar en la database de SQL Server desde WPF

Tengo una database SQL Server alojada en Azure. Necesito escribir datos de varios usuarios de PC que están usando la aplicación WPF en esta database.

Asumiendo que la aplicación WPF es utilizada por múltiples usuarios, ¿es seguro save la cadena de connection en el file app.config ? ¿Cuáles son las mejores prácticas para save datos de una aplicación de Windows en una database compartida?

Me temo que los usuarios pueden manipular datos mediante la utilización de la cadena de connection almacenada en app.config .

Asumiendo que la aplicación WPF es utilizada por múltiples usuarios, ¿es seguro save la cadena de connection en el file app.config?

En mi humilde opinión, nunca es seguro almacenar cadena de connection en text sin formatting. Tiene toda la razón de que los usuarios pueden conectarse a la database fuera de su aplicación y causar daños graves a su database.

Algunas cosas que me vienen a la mente son:

  • Encripte la cadena de connection y utilícela en lugar de almacenar la cadena de connection desencriptada.
  • Utilice el control de acceso basado en Azure AD . Recientemente, el equipo de Azure anunció la disponibilidad de conectarse a una database SQL utilizando las cnetworkingenciales de Azure AD. De esta manera puede autenticar a los usuarios antes de que se conecten a su database. Puede leer más sobre esto aquí: https://azure.microsoft.com/en-in/documentation/articles/sql-database-aad-authentication/ .

También puede encontrar útil el siguiente artículo para proteger su Base de datos SQL de Azure: https://azure.microsoft.com/en-us/documentation/articles/sql-database-security-guidelines/ .