Compartilhar via


Security.CheckUserProjectPermissions método

Verifica se o usuário atual tem uma ou mais das permissões de categoria de segurança especificado para um projeto especificado.

Namespace:  WebSvcSecurity
Assembly:  ProjectServerServices (em ProjectServerServices.dll)

Sintaxe

'Declaração
<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()
'Uso
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
)

Parâmetros

  • categoryPermissionUids
    Tipo: []

    Uma matriz de uma ou mais permissões de categoria GUIDs.

Valor retornado

Tipo: []
Uma matriz de valores de Boolean que correspondem às permissões de categoria de segurança do usuário atual para o projeto.

Comentários

CheckUserProjectPermissions ajusta uma chamada para CheckUserObjectPermissions. Para verificar se uma permissão de categoria único para um projeto, você pode usar CheckUserProjectPermissions. Verificar uma permissão de categoria para outro usuário em um projeto requer usando a representação para fazer logon como esse usuário.

Para o parâmetro categoryPermissionUids , use a estrutura de PSSecurityCategoryPermission para obter os GUIDs de permissões de categoria padrão ou use ReadCategoryPermissions para obter os GUIDs de permissões de categoria personalizada.

Permissões do Project Server

Permissão

Descrição

LogOn

Permite que um usuário faça logon no Project Server. Permissão global.

Exemplos

O exemplo a seguir verifica se o usuário atual tem três permissões specificcategory para um projeto existente. Para obter informações adicionais e um aplicativo de exemplo completo, consulte Usando os métodos de segurança na 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.
}
. . .

Ver também

Referência

Security classe

Security membros

WebSvcSecurity namespace

Outros recursos

Usando métodos de segurança na PSI

Passo a passo: Criando e usando o sinalizador permissões do Project Server