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
projectUid
Type : System.GuidGUID du projet.
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 |
---|---|
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
WebSvcSecurity - Espace de noms