Partager via


Security.CheckUserProjectPermissions - Méthode

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

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

Syntaxe

'Déclaration
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserProjectPermissions", 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 CheckUserProjectPermissions ( _
    projectUid As Guid, _
    categoryPermissionUids As Guid() _
) As Boolean()
'Utilisation
Dim instance As Security
Dim projectUid As Guid
Dim categoryPermissionUids As Guid()
Dim returnValue As Boolean()

returnValue = instance.CheckUserProjectPermissions(projectUid, _
    categoryPermissionUids)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserProjectPermissions", 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[] CheckUserProjectPermissions(
    Guid projectUid,
    Guid[] categoryPermissionUids
)

Paramètres

  • 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 pour le projet.

Remarques

CheckUserProjectPermissions encapsule un appel à CheckUserObjectPermissions. Pour vérifier une autorisation de catégorie unique pour un projet, vous pouvez utiliser CheckUserProjectPermissions. 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 specificcategory autorisations pour un projet existant. 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 project.
Guid projectUid = new Guid("BC323C21-B7E4-4631-AF99-C44E5C52BA4E");

Guid[] permissionChecks = { 
   PSLibrary.PSSecurityCategoryPermission.BuildTeamOnProject, 
   PSLibrary.PSSecurityCategoryPermission.SaveProtectedBaseline, 
   PSLibrary.PSSecurityCategoryPermission.ViewProjectWorkspace };

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