Partager via


Security.CheckUserResourcePermissions - Méthode

Vérifie si l'utilisateur actuel possède une ou plusieurs des autorisations de catégorie de sécurité spécifié pour une ressource spécifiée.

Espace de noms :  WebSvcSecurity
Assembly :  ProjectServerServices (dans ProjectServerServices.dll)

Syntaxe

'Déclaration
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserResourcePermissions", RequestNamespace := "https://schemas.microsoft.com/office/project/server/webservices/Security/",  _
    ResponseNamespace := "https://schemas.microsoft.com/office/project/server/webservices/Security/",  _
    Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function CheckUserResourcePermissions ( _
    resourceUid As Guid, _
    categoryPermissionUids As Guid() _
) As Boolean()
'Utilisation
Dim instance As Security
Dim resourceUid As Guid
Dim categoryPermissionUids As Guid()
Dim returnValue As Boolean()

returnValue = instance.CheckUserResourcePermissions(resourceUid, _
    categoryPermissionUids)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserResourcePermissions", RequestNamespace = "https://schemas.microsoft.com/office/project/server/webservices/Security/", 
    ResponseNamespace = "https://schemas.microsoft.com/office/project/server/webservices/Security/", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public bool[] CheckUserResourcePermissions(
    Guid resourceUid,
    Guid[] categoryPermissionUids
)

Paramètres

  • resourceUid
    Type : System.Guid

    Le GUID de la ressource.

  • categoryPermissionUids
    Type : []

    Tableau d'au moins une autorisation de catégorie GUID.

Valeur renvoyée

Type : []
Tableau de valeurs Boolean qui correspondent aux autorisations de catégorie de sécurité de l'utilisateur actuel de la ressource.

Remarques

CheckUserResourcePermissions encapsule un appel à CheckUserObjectPermissions. Pour vérifier si une autorisation de catégorie unique pour une ressource, vous pouvez utiliser CheckUserResourcePermission. Vérification d'une autorisation de catégorie pour un autre utilisateur sur un projet, vous devez utiliser l'emprunt d'identité pour ouvrir une session en tant que cet utilisateur.

Pour le paramètre categoryPermissionUids , utilisez la structure PSSecurityCategoryPermission pour obtenir les GUID pour les autorisations de catégorie par défaut, ou ReadCategoryPermissions pour obtenir les GUID pour les autorisations de catégorie personnalisée.

Autorisations Project Server

Autorisation

Description

LogOn

Permet à un utilisateur de se connecter à Project Server. Autorisation globale.

Exemples

L'exemple suivant vérifie si l'utilisateur actuel possède trois autorisations de catégorie différent pour une ressource existante. Pour plus d'informations et un exemple d'application complète, reportez-vous à l'aide des méthodes de sécurité dans l'interface PSI.

using System;
using System.Net;
using PSLibrary = Microsoft.Office.Project.Server.Library;
. . .
CookieContainer cookiecontainer = new CookieContainer();
SvcSecurity.Security security = new SvcSecurity.Security();
security.Url = "https://ServerName/ProjectServerName/_vti_bin/psi/security.asmx";
security.CookieContainer = cookiecontainer;
security.Credentials = System.Net.CredentialCache.DefaultCredentials;

// Set the GUID for an existing resource.
Guid resourceUid = new Guid("a1fcbf91-e91d-44e2-a4a7-3b4b698cb984");

Guid[] permissionChecks = { 
   PSLibrary.PSSecurityCategoryPermission.AssignResource, 
   PSLibrary.PSSecurityCategoryPermission.AdjustTimesheet, 
   PSLibrary.PSSecurityCategoryPermission.ViewResourceAssignmentsInAssignmentViews };

bool[] permissionResults = new bool[permissionChecks.Length];
permissionResults = security.CheckUserProjectPermissions(projectUid, permissionChecks);

bool permissionOk = true;

for (int i = 0; i < permissionResults.Length; i++)
{
   permissionOk = permissionOk && permissionResults[i];
}
if (permissionOk)
{
   // Continue the application.
}
. . .

Voir aussi

Référence

Security classe

Security - Membres

WebSvcSecurity - Espace de noms

Autres ressources

À l'aide des méthodes de sécurité dans l'interface PSI

Procédure pas à pas : création et utilisation des fichiers personnalisés autorisations Project Server