Conception pour la sécurité

Votre stratégie de sécurité de bout en bout dépend évidemment du type d’application distribuée que vous développez. Voici plusieurs suggestions pour traiter la sécurité en ce qui concerne la logique d’application de niveau intermédiaire :

  • Pour plus d’efficacité et de performances, authentifiez-vous aussi près de l’utilisateur que possible. Si votre application implique une architecture de logique à base de données de navigateur à entreprise, envisagez de mapper les clients de navigateur à des identités de domaine, d’exécuter l’application COM+ sous des identités spécifiques à chaque application et de configurer les tables de la couche données pour qu’elles soient accessibles uniquement par une identité d’application particulière. Ce scénario de serveur approuvé est plus évolutif et moins problématique que l’utilisation du SGBD pour l’authentification.
  • Si vous concevez un composant qui sera utilisé dans une application distribuée à l’aide de la sécurité basée sur le rôle, vous pouvez utiliser la fonctionnalité de sécurité COM+ . Cette fonctionnalité vous permet d’appeler des méthodes telles que IObjectContext::IsCallerInRole et IObjectContext::IsSecurityEnabled pour protéger les blocs de code contre les accès non autorisés. Vous pouvez également utiliser le contexte d’appel de sécurité pour obtenir des informations sur les appelants d’un objet.
  • Si vous concevez un composant qui sera utilisé dans une application distribuée sans utiliser la sécurité basée sur le rôle, la sécurité est automatiquement vérifiée uniquement au niveau du processus. Les autorisations d’accès de processus déterminent qui a accès à l’application. Si vous avez besoin d’un contrôle plus précis des paramètres de sécurité au niveau du processus ou de l’interface, utilisez la fonctionnalité de sécurité par programmation fournie par COM.
  • Si un composant utilisant la sécurité par programmation COM+ est exécuté sans être intégré à une application COM+, des exceptions sont levées. Par conséquent, si vous souhaitez qu’un tel composant soit correctement intégré à une application qui ne fait pas partie de l’environnement COM+, vous devez gérer toutes les exceptions de manière appropriée.

Conception pour la disponibilité

Conception pour le déploiement

Conception pour la scalabilité

Sécurité des composants programmatiques