Security.CheckUserResourcePermission 方法
检查当前用户是否具有指定的资源的指定的安全类别权限。
命名空间: WebSvcSecurity
程序集: ProjectServerServices(位于 ProjectServerServices.dll 中)
语法
声明
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserResourcePermission", 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 CheckUserResourcePermission ( _
resourceUid As Guid, _
categoryPermissionUid As Guid _
) As Boolean
用法
Dim instance As Security
Dim resourceUid As Guid
Dim categoryPermissionUid As Guid
Dim returnValue As Boolean
returnValue = instance.CheckUserResourcePermission(resourceUid, _
categoryPermissionUid)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CheckUserResourcePermission", 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 CheckUserResourcePermission(
Guid resourceUid,
Guid categoryPermissionUid
)
参数
resourceUid
类型:System.Guid资源的 GUID。
categoryPermissionUid
类型:System.Guid类别权限的 GUID。
返回值
类型:System.Boolean
true如果当前用户具有资源 ; 有关类别权限否则为false。
备注
CheckUserResourcePermission换行CheckUserObjectPermission调用。若要检查的资源的多个类别权限,请将CheckUserResourcePermissions用于更好的性能。检查对资源的另一个用户的类别权限,则需要使用模拟该用户的身份登录。
对于categoryPermissionUid参数,使用PSSecurityCategoryPermission结构的一种默认类别权限,获取 GUID,或使用ReadCategoryPermissions获取自定义类别权限的 GUID。
Project Server 权限
权限 |
说明 |
---|---|
允许用户登录到 Project Server。全局权限。 |
示例
下面的示例检查当前用户是否具有"创建代理人时间表"权限的现有资源。有关其他信息和完整的示例应用程序,请参阅使用 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 resource.
Guid resourceUid = new Guid("a1fcbf91-e91d-44e2-a4a7-3b4b698cb984");
Guid categoryPermission = PSLibrary.PSSecurityCategoryPermission.CreateSurrogateTimesheet;
bool hasSurrogateTimesheetPermission =
security.CheckUserResourcePermission(resourceUid, categoryPermission);
. . .