Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

Comment : activer l'authentification dans une application cliente Silverlight

Dans LightSwitch, vous pouvez rendre votre application plus sécurisée en empêchant les utilisateurs non autorisés de lire, modifier ou supprimer des données. Si vous implémentez l'authentification et l'autorisation, les utilisateurs doivent prouver leur identité pour pouvoir accéder à l'application.

Remarque Remarque

Le processus de définition des autorisations diffère pour les clients Silverlight – consultez Comment : activer l'authentification dans une application cliente HTML. Les applications LightSwitch qui ont été activées pour SharePoint utilisent l'authentification SharePoint pour le contrôle d'accès.

Si vous avez de nombreux utilisateurs, vous pouvez également gérer plus facilement l'accès en créant des rôles d'utilisateur disposant de divers niveaux d'accès à des écrans et données spécifiques, puis en assignant à chaque utilisateur le rôle approprié.

Par exemple, une application de gestion des salaires peut autoriser les employés à afficher, mais pas modifier, les informations relatives aux salaires. Toutefois, un superviseur de paie peut obtenir l'autorisation d'afficher et de modifier les informations relatives aux employés. Le rôle Employé serait assigné aux employés et le rôle Superviseur serait assigné au superviseur.

Vous pouvez également administrer les autorisations plus facilement en ajoutant des utilisateurs aux groupes de sécurité d'Active Directory et en assignant des autorisations à ces groupes. Étant donné que l'appartenance et les autorisations sont héritées, vous pouvez accorder et refuser des autorisations non seulement à un groupe mais également à tous ses sous-groupes en apportant une seule modification. Par exemple, vous pouvez ajouter Bob au groupe Sales dans Active Directory. Si Sales est un sous-groupe de Marketing, les autorisations que vous accordez à Marketing sont également accordées à Bob.

La première étape pour la sécurisation de votre application consiste à activer l'authentification. Vous pouvez utiliser l'authentification par formulaire ou l'authentification Windows. L'authentification par formulaire est gérée par l'application elle-même. Un utilisateur doit fournir un nom d'utilisateur et un mot de passe pour accéder à l'application. Dans le cadre de l'authentification Windows, les informations d'identification utilisées pour l'ouverture de session sur l'ordinateur où l'application est exécutée permettent d'authentifier l'utilisateur de cette application. En outre, aucun nom d'utilisateur ou mot de passe supplémentaire n'est requis. Dans les deux cas, un administrateur d'application gère une liste d'utilisateurs autorisés ; dans le cadre de l'authentification par formulaire, l'administrateur gère également les mots de passe chiffrés.

Pour activer l'authentification

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel du nœud Propriétés, puis choisissez Ouvrir.

  2. Dans le Concepteur d'application, choisissez l'onglet Contrôle d'accès.

  3. Dans la liste Sélectionnez le type d'authentification à utiliser :, choisissez Utiliser l'authentification Windows ou Utiliser l'authentification par formulaire.

    Si vous avez choisi Utiliser l'authentification Windows, choisissez la case d'option Autoriser uniquement les utilisateurs spécifiés dans l'écran Utilisateurs de votre application ou la case d'option Autoriser tous les utilisateurs Windows authentifiés.

    L'application demandera désormais aux utilisateurs qui souhaitent accéder à cette dernière de fournir des informations d'identification.

Pour désactiver l'authentification

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel du nœud Propriétés, puis choisissez Ouvrir.

  2. Dans le Concepteur d'application, choisissez l'onglet Contrôle d'accès.

  3. Dans la liste Sélectionnez le type d'authentification à utiliser :, choisissez Ne pas activer l'authentification.

    L'application ne demandera pas aux utilisateurs qui souhaitent accéder à cette dernière de fournir des informations d'identification. En outre, les utilisateurs peuvent accéder à toutes les parties de l'application.

La prochaine étape pour la sécurisation de votre application consiste à créer des autorisations. Vous pouvez définir des autorisations pour les écrans, les commandes, les entités de données et les requêtes. En premier lieu, définissez un objet d'autorisation dans le Concepteur d'application. Vous pouvez ensuite référencer l'objet dans le code, dans l'une des méthodes Can, notamment CanRun<ScreenName> ou <QueryName>_CanExecute. En règle générale, le code de ces méthodes vérifie si l'utilisateur ou le rôle actuel possède l'autorisation appropriée, puis il affiche le formulaire ou exécute la requête uniquement si l'autorisation est validée.

Pour tester votre code, exécutez l'application à la fois en tant qu'utilisateur qui possède l'autorisation et en tant qu'utilisateur qui ne la possède pas. En définissant des autorisations de débogage, vous pouvez emprunter l'identité d'un utilisateur lorsque vous testez ou déboguez l'application.

Pour créer une autorisation

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel du nœud Propriétés, puis choisissez Ouvrir.

  2. Dans le Concepteur d'application, choisissez l'onglet Contrôle d'accès.

  3. Dans la grille Définir les autorisations ou sélectionner les autorisations à utiliser pour le débogage, dans la colonne Nom, choisissez <Ajouter une nouvelle autorisation>, puis entrez un nom de programmation pour l'autorisation.

    Le nom doit commencer par un caractère alphabétique. En outre, il ne peut contenir que des caractères alphabétiques ou numériques, ou des traits de soulignement.

  4. Dans la colonne Nom complet, entrez le nom de l'autorisation tel que vous souhaitez qu'il s'affiche dans l'écran que l'administrateur d'application utilisera pour assigner des rôles.

  5. Dans la colonne Description, entrez une description de l'autorisation.

Pour écrire du code permettant de définir des autorisations pour un écran

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel d'un nœud d'écran, puis choisissez Ouvrir.

    Le Concepteur d'écran s'ouvre pour cet écran.

  2. Dans la liste Écrire le code, choisissez CanRunScreenName, où ScreenName est le nom de l'écran sélectionné.

  3. Dans l'Éditeur de code, entrez le code suivant dans la méthode CanRunScreenName :

    if (Application.User.HasPermission(Permissions.Can_View_Products)) 
    {
        result = true;
    } 
    else 
    {
        result = false;
    }
    
    

    Ce code sera évalué à chaque démarrage de l'application.

    RemarqueRemarque

    Notez que l'exemple de code recherche une autorisation nommée Can_View_Products. Remplacez le nom d'une autorisation que vous avez définie dans votre application.

Pour écrire du code permettant de définir des autorisations pour une commande

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel d'un nœud d'écran, puis choisissez Ouvrir.

    Le Concepteur d'écran s'ouvre pour cet écran.

  2. Dans le volet Arborescence de contenu de l'écran, développez un nœud de commande, puis choisissez la commande pour laquelle vous souhaitez écrire du code.

  3. Ouvrez le menu contextuel de la commande, puis choisissez ButtonName_CanExecute, où ButtonName est le nom de la commande que vous avez choisie.

  4. Dans l'Éditeur de code, entrez le code souhaité dans la méthode ButtonName_CanExecute.

    Remarque Remarque

    Pour obtenir un exemple de code, consultez « Pour écrire du code permettant de définir des autorisations pour un écran » précédemment dans cette rubrique.

Pour écrire du code permettant de définir des autorisations pour une entité

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel d'un nœud d'entité, puis choisissez Ouvrir.

    Entity Designer s'ouvre pour cette entité.

  2. Dans Entity Designer, dans la barre Perspective, choisissez Serveur.

  3. Dans la liste Écrire le code, choisissez une méthode EntityName_CanOperation, où EntityName est le nom de l'entité et Operation le nom de l'opération pour laquelle vous souhaitez écrire du code.

    Remarque Remarque

    Les méthodes disponibles varient selon le contexte. Voici des exemples : CanDelete et CanUpdate.

  4. Dans l'Éditeur de code, entrez le code souhaité dans la méthode EntityName_CanOperation.

    Remarque Remarque

    Pour obtenir un exemple de code, consultez « Pour écrire du code permettant de définir des autorisations pour un écran » précédemment dans cette rubrique.

Pour écrire du code permettant de définir des autorisations pour une requête

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel d'un nœud de requête, puis choisissez Ouvrir.

    Le Concepteur de requêtes s'ouvre pour cette requête.

  2. Dans la liste Écrire le code, choisissez l'une des méthodes QueryName_CanExecute, où QueryName est le nom de la requête.

  3. Dans l'Éditeur de code, entrez le code souhaité dans la méthode QueryName_CanExecute.

    Remarque Remarque

    Pour obtenir un exemple de code, consultez « Pour écrire du code permettant de définir des autorisations pour un écran » précédemment dans cette rubrique.

Pour activer des autorisations de débogage

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel du nœud Propriétés, puis choisissez Ouvrir.

  2. Dans le Concepteur d'application, choisissez l'onglet Contrôle d'accès.

  3. Dans la grille Définir les autorisations ou sélectionner les autorisations à utiliser pour le débogage, choisissez l'autorisation à activer pour le débogage, puis activez la case à cocher Accordée pour le débogage.

L'étape finale de l'activation de l'authentification consiste à définir un administrateur par défaut pour l'application lors de la publication. Une fois publié, l'administrateur par défaut doit se connecter et définir des utilisateurs, des rôles et des autorisations.

Pour définir un administrateur

  • Suivez les étapes dans Administration d'une application LightSwitch.

    Remarque importante Important

    Si l'authentification est activée et vous n'avez pas défini un administrateur par défaut, vous ne pourrez pas accéder à l'application publiée.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft