Security.CreateTemplates 方法

创建一个或多个安全模板。

命名空间:  WebSvcSecurity
程序集:  ProjectServerServices(位于 ProjectServerServices.dll 中)

语法

声明
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CreateTemplates", 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 Sub CreateTemplates ( _
    templates As SecurityTemplatesDataSet _
)
用法
Dim instance As Security
Dim templates As SecurityTemplatesDataSet

instance.CreateTemplates(templates)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Security/CreateTemplates", 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 void CreateTemplates(
    SecurityTemplatesDataSet templates
)

参数

备注

templates参数必须包含至少一个SecurityTemplatesDataSet.SecurityTemplatesRowSecurityTemplates table 中定义的新模板。SecurityTemplatesDataTable可以包含多个SecurityTemplatesRow对象。Project Server 验证以下每个SecurityTemplatesRow :

  • 唯一的模板名称和 GUID

SecurityTemplatesDataSet中有三个DataTable对象。仅SecurityTemplatesDataTable必须包含数据。模拟运算表是按顺序,如下所示:

  1. SecurityTemplates  每个行指定类别的 GUID、 名称和说明。创建安全类别需要的 GUID 和 (WSEC_TMPL_UID 和 WSEC_TMPL_NAME) 的名称。

  2. CategoryPermissions  可选。每个行指定的模板 GUID 和类别权限 GUID,并设置Allow或Deny的权限。有关类别权限的信息,请参阅PSSecurityCategoryPermission结构。

  3. GlobalPermissions  可选。每行指定 GUID 的模板和全局权限的 GUID,并设置Allow或Deny的权限。有关全局权限的信息,请参阅PSSecurityGlobalPermission结构。

有关有效的模板的示例,单击在Project Web App,在管理模板页上的模板以在添加或编辑模板页上查看的字段和设置。

Project Server 权限

权限

说明

ManageSecurity

允许用户管理 Project Server 安全性。全局权限。

示例

下面的示例创建安全模板,并添加一个全局权限,设置为Allow组。

有关其他信息和测试Security类方法的基本示例应用程序,请参阅使用 PSI 中的安全措施。您可以将以下代码添加到的测试应用程序。

/*
 * Add this code to the sample application code in the article 
 * Using Security Methods in the PSI.
 */

// Create a GUID for the new template.
Guid templateGuid = Guid.NewGuid();

// Specify basic template information.
SvcSecurity.SecurityTemplatesDataSet templateDs =
   new SvcSecurity.SecurityTemplatesDataSet();
SvcSecurity.SecurityTemplatesDataSet.SecurityTemplatesRow templateRow =
   templateDs.SecurityTemplates.NewSecurityTemplatesRow();
templateRow.WSEC_TMPL_NAME = "SDK Test Template";
templateRow.WSEC_TMPL_UID = templateGuid;
templateRow.WSEC_TMPL_DESC = "This is the SDK Test Template.";
templateDs.SecurityTemplates.AddSecurityTemplatesRow(templateRow);

// Specify a global permission for the template.
SvcSecurity.SecurityTemplatesDataSet.GlobalPermissionsRow globalPermissionRow =
   templateDs.GlobalPermissions.NewGlobalPermissionsRow();
globalPermissionRow.WSEC_TMPL_UID = templateGuid;
// Add a permission that applies to the group. 
// For example, add the "About Microsoft Office Project Server" permission.
globalPermissionRow.WSEC_FEA_ACT_UID =
   PSLibrary.PSSecurityGlobalPermission.AboutMicrosoftOfficeProjectServer;
globalPermissionRow.WSEC_ALLOW = true;
templateDs.GlobalPermissions.AddGlobalPermissionsRow(globalPermissionRow);

// Now that the rows are added to the relevant tables, create the template.
security.CreateTemplates(templateDs);

另请参阅

引用

Security 类

Security 成员

WebSvcSecurity 命名空间