Skip to content
Yorick Kuijs edited this page Apr 1, 2021 · 18 revisions

SPWeb

Parameters

Parameter Attribute DataType Description Allowed Values
Url Key String The URL of the web
Ensure Write String Present if the web should exist or Absent if it should be removed Present, Absent
Description Write String The description to apply to the web
Name Write String The Name of the web
Language Write UInt32 The Lanhuage (LCID) of the web
Template Write String The WebTemplate to use to create the web
UniquePermissions Write Boolean True if the web should have unique permissions, otherwise false.
UseParentTopNav Write Boolean True if the web should use the parent nav bar, otherwise false.
AddToQuickLaunch Write Boolean True if the web should be in the quick launch of the parent web, otherwise false.
AddToTopNav Write Boolean True if the web should be added to the top nav bar of the parent web, otherwise false.
RequestAccessEmail Write String The e-mail address to which requests for access are sent. Set to emtpy string to disable access requests.
InstallAccount Write PSCredential POWERSHELL 4 ONLY: The account to run this resource as, use PsDscRunAsCredential if using PowerShell 5

Description

Type: Distributed Requires CredSSP: No

This resource will provision a SPWeb based on the settings that are passed through. These settings map to the New-SPWeb cmdlet and accept the same values

The default value for the Ensure parameter is Present. When not specifying this parameter, the web is created.

NOTE: Since subsites/webs can be created/deleted by site collection owners it is possible that using this resource results in a conflict between the owner and DSC. Therefore be careful using this resource.

Examples

Example 1

This example deploys a subsite in a specific location

Configuration Example
{
    param
    (
        [Parameter(Mandatory = $true)]
        [PSCredential]
        $SetupAccount
    )

    Import-DscResource -ModuleName SharePointDsc

    node localhost
    {
        SPWeb TeamSite
        {
            Url                  = "http://sharepoint.contoso.com/sites/site/subweb"
            Name                 = "Team Sites"
            Ensure               = "Present"
            Description          = "A place to share documents with your team."
            Template             = "STS#0"
            Language             = 1033
            AddToTopNav          = $true
            PsDscRunAsCredential = $SetupAccount
        }
    }
}

Example 2

This example deploys a subsite in a specific location and enables access requests for this web

Configuration Example
{
    param
    (
        [Parameter(Mandatory = $true)]
        [PSCredential]
        $SetupAccount
    )

    Import-DscResource -ModuleName SharePointDsc

    node localhost
    {
        SPWeb TeamSite
        {
            Url                  = "http://sharepoint.contoso.com/sites/site/subweb"
            Name                 = "Team Sites"
            Ensure               = "Present"
            Description          = "A place to share documents with your team."
            Template             = "STS#0"
            Language             = 1033
            AddToTopNav          = $true
            UniquePermissions    = $true
            RequestAccessEmail   = "[email protected]"
            PsDscRunAsCredential = $SetupAccount
        }
    }
}

Example 3

This example deploys a subsite in a specific location and disables access requests for this web

Configuration Example
{
    param
    (
        [Parameter(Mandatory = $true)]
        [PSCredential]
        $SetupAccount
    )

    Import-DscResource -ModuleName SharePointDsc

    node localhost
    {
        SPWeb TeamSite
        {
            Url                  = "http://sharepoint.contoso.com/sites/site/subweb"
            Name                 = "Team Sites"
            Ensure               = "Present"
            Description          = "A place to share documents with your team."
            Template             = "STS#0"
            Language             = 1033
            AddToTopNav          = $true
            RequestAccessEmail   = ""
            PsDscRunAsCredential = $SetupAccount
        }
    }
}
Clone this wiki locally