Utilisation des paramètres Gestion des droits relatifs à l'information (IRM)
Deux types de paramètres de Gestion des droits relatifs à l'information (IRM) existent dans Microsoft Office InfoPath 2007 : l'un protège l'accès aux modèles de formulaires InfoPath et l'autre permet de contrôler l'accès aux données contenues dans les formulaires complétés et les actions sur ces dernières. Pour utiliser ces paramètres lors de la conception d'un modèle de formulaire, cliquez sur Gérer les informations d'identification dans le menu Fichier. Pour utiliser ces paramètres lorsque vous remplissez un formulaire, cliquez sur Autorisation dans le menu Fichier, puis sur Gérer les informations d'identification. Pour plus d'informations sur l'utilisation de la boîte de dialogue Autorisationdans InfoPath, voir Créer un modèle de formulaire avec des autorisations restreintes dans l'aide d'InfoPath.
Remarque |
---|
La restriction des autorisations est uniquement disponible pour les modèles de formulaires compatibles avec InfoPath. Les modèles de formulaires compatibles avec le navigateur ne prennent pas en charge la gestion des droits relatifs à l'information. Si l'option Gérer les informations d'identification n'apparaît pas dans le menu Fichier lors de la conception d'un modèle de formulaire, vérifiez vos paramètres de compatibilité. |
Modèle objet Gestion des droits relatifs à l'information (IRM)
Utilisez la classe Permission pour accéder aux paramètres d'autorisation UserPermissionCollection et aux paramètres d'autorisation de la Gestion des droits relatifs à l'information, applicables à un formulaire. Pour accéder à l'objet Permission associé à un modèle de formulaire, utilisez la propriété Permission de la classe XmlForm. L'objet Permission retourné fournit l'accès à la collection d'objets UserPermission associés au modèle de formulaire et à chaque instance du formulaire créée à l'aide de ce modèle.
L'objet Permission, ses propriétés et ses méthodes sont accessibles indépendamment des restrictions d'autorisations appliquées au modèle de formulaire actif. Utilisez la propriété Enabled pour déterminer si un formulaire contient des autorisations restreintes.
Les autorisations d'un formulaire sont activées de l'une des manières suivantes à l'aide des propriétés et méthodes de la classe Permission :
La propriété Enabled est définie sur la valeur true.
La propriété DocumentAuthor est définie.
La propriété RequestPermissionUrl est définie.
La propriété StoreLicenses est définie sur la valeur true ou false.
La méthode ApplyPolicy est appelée.
Remarque |
---|
Si le client Windows Rights Management n'est pas installé sur l'ordinateur d'un utilisateur, l'utilisation de la classe Permission génère une exception. |
Pour utiliser par programmation les paramètres de la Gestion des droits relatifs à l'information au niveau des utilisateurs individuels dans les formulaires, utilisez les classes UserPermissionCollection et UserPermission.
Un objet UserPermission associe un jeu d'autorisations du formulaire actuel à un seul utilisateur et à une date d'expiration facultative. Utilisez la méthode Add de la classe UserPermissionCollection pour ajouter ou attribuer un jeu d'autorisations à un utilisateur sur le formulaire actuel. Utilisez la méthode Remove de la classe UserPermissionCollection pour supprimer un utilisateur et les autorisations associées. Tandis que certaines autorisations sont accordées à l'ensemble des utilisateurs par l'intermédiaire de l'interface utilisateur, notamment l'autorisation d'impression et la date d'expiration, vous pouvez également attribuer des autorisations à chaque utilisateur individuellement et définir des dates d'expiration spécifiques à chacun d'eux à l'aide des classes UserPermission et UserPermissionCollection. Le modèle objet permet aux développeurs d'énumérer les paramètres d'autorisation dans un formulaire et de fournir les fonctionnalités qui permettent aux utilisateurs de formulaires d'ajouter des autorisations au formulaire sans devoir utiliser le volet Office Autorisation du formulaire ou la boîte de dialogue Autorisation.
Remarque |
---|
Aucune autorisation ne peut être appliquée lorsqu'un formulaire est affiché en mode Aperçu. Ainsi, toutes les propriétés de la classe Permission sont en lecture seule dans l'aperçu du formulaire. En mode Aperçu, la propriété Enabled retourne toujours la valeur false et, si le code essaie de modifier ce paramètre, une exception System.Runtime.InteropServices.COMException est générée et l'erreur « La propriété/méthode n'est pas disponible en mode Aperçu » est retournée. De même, les méthodes associées aux classes UserPermission et UserPermissionCollection retournent également ce message d'erreur lorsqu'elles sont utilisées en mode Aperçu. |
Vue d'ensemble de la classe des autorisations
La classe UserPermissionCollection fournit les propriétés suivantes et une méthode.
Nom | Description |
---|---|
Méthode ApplyPolicy |
Applique une stratégie au formulaire en utilisant un fichier de modèle de stratégie. |
Propriété DocumentAuthor |
Obtient ou définit l'auteur du formulaire actif sous forme d'adresse électronique. |
Propriété Enabled |
Obtient ou définit l'information indiquant que les paramètres d'autorisation représentés par l'objet Permission sont activés pour le formulaire actif. |
Propriété PermissionFromPolicy |
Obtient ou définit l'application d'une stratégie d'autorisation pour le formulaire actif. |
Propriété PolicyDescription |
Obtient une description de la stratégie appliquée au formulaire actif. |
Propriété PolicyName |
Obtient le nom de la stratégie appliquée au formulaire actif. |
Propriété RequestPermissionUrl |
Obtient ou définit le fichier, l'URL ou l'adresse électronique que les utilisateurs doivent utiliser s'ils ont besoin d'autorisations supplémentaires sur le formulaire actif. |
Propriété StoreLicenses |
Obtient ou définit l'information indiquant que la licence permettant à l'utilisateur d'afficher le formulaire actif doit être mise en cache pour permettre son affichage en mode hors connexion lorsque l'utilisateur ne peut pas se connecter à un serveur de gestion des droits. |
Propriété UserPermissions |
Obtient un objet UserPermissionCollection pour le formulaire actuel. |
Vue d'ensemble de la classe UserPermissionCollection
La classe UserPermissionCollection fournit les propriétés et les méthodes suivantes.
Nom | Description |
---|---|
Méthode Add (+3 surcharges) |
Ajoute un nouvel utilisateur au formulaire actuel, en spécifiant éventuellement des autorisations et une date d'expiration. |
Méthode Remove |
Supprime l'objet UserPermission comportant l'ID UserId spécifié à partir de la collection. |
Méthode RemoveAll |
Supprime tous les objets UserPermission de la collection. |
Propriété Count |
Obtient le nombre d'objets UserPermission dans la collection. |
Propriété Item (+1 surcharge) |
Obtient un objet UserPermission. |
Vue d'ensemble de la classe UserPermission
La classe UserPermission fournit les propriétés suivantes et une méthode.
Nom | Description |
---|---|
Méthode Remove |
Supprime l'objet UserPermission actuel des autorisations du formulaire. |
Propriété ExpirationDate |
Obtient ou définit la date d'expiration facultative pour les autorisations du formulaire actif affectées à l'utilisateur associé à une instance de la classe UserPermission. |
Propriété Permission |
Obtient ou définit une valeur représentant les autorisations du formulaire actif affectées à l'utilisateur associé à une instance de la classe UserPermission. |
Propriété UserId |
Obtient l'adresse de messagerie de l'utilisateur dont les autorisations sur le formulaire actif sont déterminées par l'objet UserPermission spécifié. |
Énumération PermissionType
Les autorisations d'un utilisateur sont définies ou lues à l'aide des valeurs d'énumération PermissionType.
Nom | Description |
---|---|
PermissionType.Change |
Permet aux utilisateurs d'afficher, de copier et d'enregistrer un formulaire mais pas de l'imprimer. Elle correspond à la combinaison des autorisations Read, Edit, Save et Extract. |
PermissionType.Edit |
Permet à l'utilisateur de modifier le formulaire. |
PermissionType.Extract |
Permet à un utilisateur disposant de l'autorisation Read de copier un contenu dans le formulaire. |
PermissionType.FullControl |
Permet à l'utilisateur d'ajouter, de modifier et de supprimer les autorisations d'autres utilisateurs d'un formulaire. |
PermissionType.ObjectModel |
Permet à un utilisateur d'accéder au document du formulaire par programme via son modèle objet. Les utilisateurs qui ne disposent pas de l'autorisation ObjectModel ne peuvent pas avoir recours au modèle objet pour déterminer leurs propres autorisations. |
PermissionType.Print |
Permet à l'utilisateur d'imprimer le formulaire. |
PermissionType.Read |
Permet à l'utilisateur de lire (d'afficher) le formulaire. (Les autorisations Read et View sont équivalentes.) |
PermissionType.Save |
Permet à l'utilisateur d'enregistrer le formulaire. |
PermissionType.View |
Permet à l'utilisateur d'afficher (de lire) le formulaire. (Les autorisations Read et View sont équivalentes.) |
Exemple
Dans l'exemple ci-dessous, le contrôle Bouton permet d'obtenir la collection UserPermissionsCollection pour le formulaire actif, d'ajouter et d'attribuer un utilisateur au niveau d'accès Modification, ainsi que de définir une date d'expiration de deux jours à compter de la date du jour.
public void CTRL1_Clicked(object sender, ClickedEventArgs e)
{
string strExpirationDate = DateTime.Today.AddDays(2).ToString();
DateTime dtExpirationDate = DateTime.Parse(strExpirationDate);
this.Permission.UserPermissions.Add("someone@example.com",
PermissionType.Change, dtExpirationDate);
}
Public Sub CTRL1_Clicked(ByVal sender As Object, _
ByVal e As ClickedEventArgs)
Dim strExpirationDate As String = _
DateTime.Today.AddDays(2).ToString()
dtExpirationDate As DateTime = DateTime.Parse(strExpirationDate)
Me.Permission.UserPermissions.Add("someone@example.com", _
PermissionType.Change, dtExpirationDate)
End Sub