del método Security.CreateTemplates
Crea una o varias plantillas de seguridad.
Espacio de nombres: WebSvcSecurity
Ensamblado: ProjectServerServices (en ProjectServerServices.dll)
Sintaxis
'Declaración
<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
templates
Tipo: WebSvcSecurity.SecurityTemplatesDataSetContiene la información acerca de una o varias plantillas de seguridad.
Comentarios
El parámetro templates debe contener al menos un SecurityTemplatesDataSet.SecurityTemplatesRow en la tabla de SecurityTemplates que define una nueva plantilla. La SecurityTemplatesDataTable puede contener varios objetos SecurityTemplatesRow . Project Server valida cada SecurityTemplatesRow para lo siguiente:
- Nombre de plantilla único y el GUID
Hay tres objetos DataTable en un SecurityTemplatesDataSet. El SecurityTemplatesDataTable debe contener datos. Las tablas de datos aparecen en orden, como sigue:
SecurityTemplates Cada fila especifica el identificador GUID de categoría, el nombre y la descripción. El GUID y el nombre (WSEC_TMPL_UID y WSEC_TMPL_NAME) son necesarios para crear una categoría de seguridad.
CategoryPermissions Opcional. Cada fila especifica el GUID de plantilla y el permiso de categoría GUID y establece Allow o Deny para el permiso. Para obtener información acerca de los permisos de categoría, vea la estructura PSSecurityCategoryPermission .
GlobalPermissions Opcional. Cada fila especifica el GUID de la plantilla y el permiso global GUID y establece Allow o Deny para el permiso. Para obtener información acerca de los permisos globales, vea la estructura PSSecurityGlobalPermission .
Para obtener ejemplos de plantillas válidas, haga clic en una plantilla en la página Administrar plantillas en Project Web App, para ver la configuración y los campos en la página Agregar o Editar plantilla.
Permisos de Project Server
Permiso |
Descripción |
---|---|
Permite que un usuario administrar la seguridad de Project Server. Permiso global. |
Ejemplos
En el siguiente ejemplo se crea una plantilla de seguridad y se agrega un permiso global que se establece en Allow para el grupo.
Para obtener información adicional y una aplicación de ejemplo básica para probar los métodos de la clase Security , vea Uso de métodos de seguridad en la interfaz PSI. Puede agregar el código siguiente a la aplicación de prueba.
/*
* 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);