Quel est le meilleur moyen de sécuriser les services de données ADO.NET? Quelqu'un at-il utilisé ceci dans la production, si oui, quelles options de sécurité avez-vous utilisées?Déploiement du service de données ADO.NET
Répondre
Voici un blog entry qui explique en détail comment sécuriser un service de données ADO .NET.
Voulez-vous dire des types de requêtes individuels sécurisés ou l'ensemble du service? Si le service entier, vous pouvez utiliser les méthodes de sécurisation IIS standard, telles que l'authentification Windows. Dans un environnement Windows contrôlé, lorsqu'un service Web utilise les services, vous pouvez définir un ID de domaine unique pour être l'utilisateur autorisé entre les zones. Utilisez SSL bien sûr pour sécuriser le cryptage des données.
@tbreffni affiche une bonne entrée de blog. En plus de cela, dans votre service de données ado.net, vous définissez des règles d'accès aux entités pour contrôler la manière dont l'accès est fourni aux différentes entités du modèle de données d'entité sous-jacent.
En supposant que vous avez le code comme suit:
public class Northwind : DataService<NorthwindEntities>
{
public static void InitializeService(IDataServiceConfiguration
config)
{
config.SetEntitySetAccessRule("*", EntitySetRights.All);
}
}
la méthode SetEntitySetAccessRule vous permet de référencer l'ensemble du modèle de l'entité ou tout simplement un ensemble d'entité spécifique et définir des autorisations en fonction de l'énumération EntitySetRights. Les valeurs suivantes figurent dans l'énumération:
Aucun Refuse tous les droits d'accès aux données.
ReadSingle Autorisation de lecture d'éléments de données uniques.
ReadMultiple Autorisation de lecture des ensembles de données.
WriteAppend Autorisation de créer de nouveaux éléments de données dans des ensembles de données.
WriteReplace Autorisation de remplacement des données.
WriteDelete Autorisation de suppression des éléments de données des ensembles de données.
WriteMerge Autorisation de fusionner des données.
AllRead Autorisation de lecture des données.
AllWrite Autorisation d'écriture de données.
Tous Autorisation de créer, lire, mettre à jour et supprimer des données. Une procédure pas à pas pour utiliser les services Microsoft ADO.NET parcourt ce processus here. L'énumération EntitySetRights est documentée here.