Freigeben über


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

  • objectTypeUid
    Typ: System.Guid

    Die GUID der einen Objekttyp.

  • categoryPermissionUid
    Typ: System.Guid

    Die 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

LogOn

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);
. . .

Siehe auch

Referenz

Security Klasse

Security-Member

WebSvcSecurity-Namespace

Weitere Ressourcen

Verwenden von Sicherheitsmethoden in die PSI

Exemplarische Vorgehensweise: Erstellen und Verwenden von benutzerdefinierten Project Server-Berechtigungen