del método Security.CheckUserProjectPermission
Comprueba si el usuario actual tiene el permiso de categoría de seguridad especificado para un proyecto específico.
Espacio de nombres: WebSvcSecurity
Ensamblado: ProjectServerServices (en ProjectServerServices.dll)
Sintaxis
'Declaración
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserProjectPermission", 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 CheckUserProjectPermission ( _
projectUid As Guid, _
categoryPermissionUid As Guid _
) As Boolean
'Uso
Dim instance As Security
Dim projectUid As Guid
Dim categoryPermissionUid As Guid
Dim returnValue As Boolean
returnValue = instance.CheckUserProjectPermission(projectUid, _
categoryPermissionUid)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserProjectPermission", 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 CheckUserProjectPermission(
Guid projectUid,
Guid categoryPermissionUid
)
Parámetros
projectUid
Tipo: System.GuidEl GUID del proyecto.
categoryPermissionUid
Tipo: System.GuidEl GUID del permiso de categoría.
Valor devuelto
Tipo: System.Boolean
True si el usuario actual tiene el permiso de categoría para el proyecto; en caso contrario, false.
Comentarios
CheckUserProjectPermission ajusta una llamada a CheckUserObjectPermission. Para comprobar varios permisos de categoría para un proyecto, use CheckUserProjectPermissions para mejorar el rendimiento. Comprobación de un permiso de categoría de otro usuario en un proyecto requiere el uso de suplantación para iniciar sesión como ese usuario.
Para el parámetro categoryPermissionUid , use la estructura de PSSecurityCategoryPermission para obtener el GUID para uno de los permisos de categoría predeterminada o use ReadCategoryPermissions para obtener el GUID para un permiso de categoría personalizada.
Permisos de Project Server
Permiso |
Descripción |
---|---|
Permite que un usuario inicie sesión en Project Server. Permiso global. |
Ejemplos
En el siguiente ejemplo se comprueba si el usuario actual tiene el permiso "Eliminar proyecto" para un proyecto existente. Para obtener información adicional y una aplicación de ejemplo completo, vea Uso de métodos de seguridad en la interfaz 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("a1fcbf91-e91d-44e2-a4a7-3b4b698cb984");
Guid categoryPermission = PSLibrary.PSSecurityCategoryPermission.DeleteProject;
bool hasDeleteProjectPermission =
security.CheckUserProjectPermission(projectUid, categoryPermission);
. . .
Vea también
Referencia
Espacio de nombres WebSvcSecurity
Otros recursos
Uso de métodos de seguridad en la interfaz PSI
Tutorial: creación y uso de Custom permisos de Project Server