Security.CheckUserObjectPermission-Methode
Überprüft, ob der aktuelle Benutzer die einzelnen angegebenen Sicherheitskategorieberechtigung für ein Projekt oder eine Ressource-Objekt verfügt.
Namespace: WebSvcSecurity
Assembly: ProjectServerServices (in ProjectServerServices.dll)
Syntax
'Declaration
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserObjectPermission", 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 CheckUserObjectPermission ( _
objectUid As Guid, _
objectTypeUid As Guid, _
categoryPermissionUid As Guid _
) As Boolean
'Usage
Dim instance As Security
Dim objectUid As Guid
Dim objectTypeUid As Guid
Dim categoryPermissionUid As Guid
Dim returnValue As Boolean
returnValue = instance.CheckUserObjectPermission(objectUid, _
objectTypeUid, categoryPermissionUid)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserObjectPermission", 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 CheckUserObjectPermission(
Guid objectUid,
Guid objectTypeUid,
Guid categoryPermissionUid
)
Parameter
objectUid
Typ: System.GuidDie GUID eines Objekts.
objectTypeUid
Typ: System.GuidDie GUID der einen Objekttyp.
categoryPermissionUid
Typ: System.GuidDie GUID der Kategorie Sicherheitsberechtigung.
Rückgabewert
Typ: System.Boolean
True , wenn der aktuelle Benutzer über die Berechtigung verfügt; andernfalls false.
Hinweise
Um zu vermeiden, die objectTypeUidangeben, können Sie anstelle von CheckUserObjectPermissionCheckUserProjectPermission oder CheckUserResourcePermission .
Verwenden Sie zum Überprüfen der Berechtigungen für mehrere Objekte CheckUserObjectPermissions, CheckUserProjectPermissionsoder CheckUserResourcePermissions für eine bessere Leistung. Überprüfen einer CAS-Berechtigung für eine andere Ressource erfordert Verwenden des Identitätswechsels als diese Ressource anmelden.
Verwenden Sie für den Parameter objectTypeUid die PSSecurityObjectType -Struktur, um die GUID für den Objekttyp Project oder Resource zu erhalten. Der Parameter categoryPermissionUid verwenden Sie die PSSecurityCategoryPermission -Struktur, um die GUID für eine der standardmäßigen Kategorieberechtigungen erhalten oder verwenden Sie ReadCategoryPermissions , um die GUID für eine benutzerdefinierte Kategorieberechtigung zu erhalten.
Project Server-Berechtigungen
Berechtigung |
Beschreibung |
---|---|
Ermöglicht einem Benutzer zur Anmeldung bei Project Server. Die globale Berechtigung. |
Beispiele
Im folgenden Beispiel wird überprüft, ob der aktuelle Benutzer die Berechtigung "Zuweisen von Ressourcen" für eine bestimmte Ressource verfügt. Weitere Informationen und eine komplette Beispielanwendung finden Sie unter Mithilfe von Sicherheitsmethoden in die 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;
// Check whether the user has the "Assign Resource" permission for a resource.
// Set the GUID for an existing resource.
Guid resourceUid = new Guid("a1fcbf91-e91d-44e2-a4a7-3b4b698cb984");
Guid resourceType = PSLibrary.PSSecurityObjectType.Resource;
Guid categoryPermission = PSLibrary.PSSecurityCategoryPermission.AssignResource;
bool hasAssignResourcePermission =
security.CheckUserObjectPermission(resourceUid, resourceType, categoryPermission);
. . .