Compartilhar via


Security.CreateTemplates método

Cria um ou mais modelos de segurança.

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

Sintaxe

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

Parâmetros

Comentários

O parâmetro templates deve conter pelo menos um SecurityTemplatesDataSet.SecurityTemplatesRow na tabela SecurityTemplates que define um novo modelo. O SecurityTemplatesDataTable pode conter vários objetos SecurityTemplatesRow . Project Server valida cada SecurityTemplatesRow para o seguinte:

  • Nome do modelo exclusivo e GUID

Há três objetos DataTable em um SecurityTemplatesDataSet. Somente o SecurityTemplatesDataTable deve conter dados. As tabelas de dados estão em ordem, da seguinte maneira:

  1. SecurityTemplates   Cada linha especifica o GUID da categoria, nome e descrição. Somente o GUID e o nome (WSEC_TMPL_UID e WSEC_TMPL_NAME) são necessárias para criar uma categoria de segurança.

  2. Permissões de categorias   Opcional. Cada linha especifica o GUID do modelo e o GUID de permissão de categoria e define Allow ou Deny para que a permissão. Para obter informações sobre as permissões de categoria, consulte a estrutura PSSecurityCategoryPermission .

  3. GlobalPermissions   Opcional. Cada linha especifica o GUID do modelo e a permissão global GUID e define Allow ou Deny para que a permissão. Para obter informações sobre as permissões globais, consulte a estrutura PSSecurityGlobalPermission .

Para obter exemplos de modelos de válido, clique em um modelo na página Gerenciar modelos na Project Web App, para ver os campos e as configurações na página Adicionar ou Editar modelo.

Permissões do Project Server

Permissão

Descrição

ManageSecurity

Permite que um usuário gerenciar a segurança do Project Server. Permissão global.

Exemplos

O exemplo a seguir cria um modelo de segurança e adiciona uma permissão global que é definida como Allow para o grupo.

Para obter informações adicionais e um aplicativo de amostra básico para testar os métodos da classe Security , consulte Usando os métodos de segurança na PSI. Você pode adicionar o código a seguir para o aplicativo de teste.

/*
 * 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);

Ver também

Referência

Security classe

Security membros

WebSvcSecurity namespace