< Back
Grant-SmbShareAccess
Post
NAME Grant-SmbShareAccess
SYNOPSIS
Adds an allow ACE for a trustee to the security descriptor of the SMB share.
SYNTAX
Grant-SmbShareAccess [-AccessRight {Full | Change | Read | Custom}] [-AccountName <String[]>] [-CimSession <CimSession[]>] [-Force] [-ThrottleLimit
<Int32>] [-Confirm] [-WhatIf] [<CommonParameters>]
Grant-SmbShareAccess [-Name] <String[]> [[-ScopeName] <String[]>] [-AccessRight {Full | Change | Read | Custom}] [-AccountName <String[]>] [-CimSession
<CimSession[]>] [-Force] [-SmbInstance {Default | CSV}] [-ThrottleLimit <Int32>] [-Confirm] [-WhatIf] [<CommonParameters>]
DESCRIPTION
The Grant-SmbShareAccess cmdlet adds an allow access control entry (ACE) for a trustee to a security descriptor of the Server Message Block (SMB) share.
PARAMETERS
-AccessRight [<ShareAccessRight>]
Specifies the access right to grant to the trustee. The acceptable values for this parameter are: Full, Modify, or Read.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-AccountName [<String[]>]
Specifies the name of the trustee. Use a comma-separated list to specify multiple trustees.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-CimSession [<CimSession[]>]
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or
Get-CimSession cmdlet. The default is the current session on the local computer.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-Force [<SwitchParameter>]
Forces the command to run without asking for user confirmation.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-Name <String[]>
Specifies the name of the SMB share.
Required? true
Position? 2
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ScopeName [<String[]>]
Specifies the scope of the share by name.
Required? false
Position? 3
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-SmbInstance [<Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbShare.SmbInstance>]
Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this cmdlet.
Required? false
Position? named
Default value none
Accept pipeline input? true(ByPropertyName)
Accept wildcard characters? false
-ThrottleLimit [<Int32>]
Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is
entered, then Windows PowerShell???? calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the
computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-Confirm [<SwitchParameter>]
Prompts you for confirmation before running the cmdlet.Prompts you for confirmation before running the cmdlet.
Required? false
Position? named
Default value false
Accept pipeline input? false
Accept wildcard characters? false
-WhatIf [<SwitchParameter>]
Shows what would happen if the cmdlet runs. The cmdlet is not run.Shows what would happen if the cmdlet runs. The cmdlet is not run.
Required? false
Position? named
Default value false
Accept pipeline input? false
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
None
OUTPUTS
Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/SMB/MSFT_SmbShareAccessControlEntry
The Microsoft.Management.Infrastructure.CimInstance object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The
path after the pound sign (#) provides the namespace and class name for the underlying WMI object.
This cmdlet returns a MSFT_SmbShareAccessControlEntry object.
Example 1: Adds an allow ACE for a trustee
PS C:\\>Grant-SmbShareAccess -Name "VMFiles" -AccountName "Contoso\\Contoso-HV2$" -AccessRight Full
Confirm
Are you sure you want to perform this action?
Performing operation 'Modify' on Target 'Contoso-SO,VMFiles'.
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Name ScopeName AccountName AccessControlType AccessRight
---- --------- ----------- ----------------- -----------
VMFiles Contoso-SO Contoso\\Administrator Allow Full
VMFiles Contoso-SO Contoso\\Contoso-HV1$ Allow Full
VMFiles Contoso-SO Contoso\\Contoso-HV2$ Allow Full
This command adds an allow ACE for a trustee to the security descriptor of the SMB share named VMFiles for the account named Contoso\\Contoso-HV2$.
Example 2: Adds an allow ACE for a trustee without confirmation
PS C:\\>Grant-SmbShareAccess -Name VMFiles -AccountName "Contoso\\Domain Admins" -AccessRight Change -Force
Name ScopeName AccountName AccessControlType AccessRight
---- --------- ----------- ----------------- -----------
VMFiles Contoso-SO Contoso\\Administrator Allow Full
VMFiles Contoso-SO Contoso\\Contoso-HV1$ Allow Full
VMFiles Contoso-SO Contoso\\Contoso-HV2$ Allow Full
VMFiles Contoso-SO Contoso\\Domain Admins Allow Change
This command adds an allow ACE for a trustee to the security descriptor of the SMB share named VMFiles for the account named Contoso\\Contoso-HV2$
without user confirmation.
RELATED LINKS
Block-SmbShareAccess
Get-SmbShareAccess
Revoke-SmbShareAccess
Unblock-SmbShareAccess
SYNOPSIS
Adds an allow ACE for a trustee to the security descriptor of the SMB share.
SYNTAX
Grant-SmbShareAccess [-AccessRight {Full | Change | Read | Custom}] [-AccountName <String[]>] [-CimSession <CimSession[]>] [-Force] [-ThrottleLimit
<Int32>] [-Confirm] [-WhatIf] [<CommonParameters>]
Grant-SmbShareAccess [-Name] <String[]> [[-ScopeName] <String[]>] [-AccessRight {Full | Change | Read | Custom}] [-AccountName <String[]>] [-CimSession
<CimSession[]>] [-Force] [-SmbInstance {Default | CSV}] [-ThrottleLimit <Int32>] [-Confirm] [-WhatIf] [<CommonParameters>]
DESCRIPTION
The Grant-SmbShareAccess cmdlet adds an allow access control entry (ACE) for a trustee to a security descriptor of the Server Message Block (SMB) share.
PARAMETERS
-AccessRight [<ShareAccessRight>]
Specifies the access right to grant to the trustee. The acceptable values for this parameter are: Full, Modify, or Read.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-AccountName [<String[]>]
Specifies the name of the trustee. Use a comma-separated list to specify multiple trustees.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-CimSession [<CimSession[]>]
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or
Get-CimSession cmdlet. The default is the current session on the local computer.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-Force [<SwitchParameter>]
Forces the command to run without asking for user confirmation.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-Name <String[]>
Specifies the name of the SMB share.
Required? true
Position? 2
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ScopeName [<String[]>]
Specifies the scope of the share by name.
Required? false
Position? 3
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-SmbInstance [<Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbShare.SmbInstance>]
Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this cmdlet.
Required? false
Position? named
Default value none
Accept pipeline input? true(ByPropertyName)
Accept wildcard characters? false
-ThrottleLimit [<Int32>]
Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is
entered, then Windows PowerShell???? calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the
computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-Confirm [<SwitchParameter>]
Prompts you for confirmation before running the cmdlet.Prompts you for confirmation before running the cmdlet.
Required? false
Position? named
Default value false
Accept pipeline input? false
Accept wildcard characters? false
-WhatIf [<SwitchParameter>]
Shows what would happen if the cmdlet runs. The cmdlet is not run.Shows what would happen if the cmdlet runs. The cmdlet is not run.
Required? false
Position? named
Default value false
Accept pipeline input? false
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
None
OUTPUTS
Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/SMB/MSFT_SmbShareAccessControlEntry
The Microsoft.Management.Infrastructure.CimInstance object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The
path after the pound sign (#) provides the namespace and class name for the underlying WMI object.
This cmdlet returns a MSFT_SmbShareAccessControlEntry object.
Example 1: Adds an allow ACE for a trustee
PS C:\\>Grant-SmbShareAccess -Name "VMFiles" -AccountName "Contoso\\Contoso-HV2$" -AccessRight Full
Confirm
Are you sure you want to perform this action?
Performing operation 'Modify' on Target 'Contoso-SO,VMFiles'.
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Name ScopeName AccountName AccessControlType AccessRight
---- --------- ----------- ----------------- -----------
VMFiles Contoso-SO Contoso\\Administrator Allow Full
VMFiles Contoso-SO Contoso\\Contoso-HV1$ Allow Full
VMFiles Contoso-SO Contoso\\Contoso-HV2$ Allow Full
This command adds an allow ACE for a trustee to the security descriptor of the SMB share named VMFiles for the account named Contoso\\Contoso-HV2$.
Example 2: Adds an allow ACE for a trustee without confirmation
PS C:\\>Grant-SmbShareAccess -Name VMFiles -AccountName "Contoso\\Domain Admins" -AccessRight Change -Force
Name ScopeName AccountName AccessControlType AccessRight
---- --------- ----------- ----------------- -----------
VMFiles Contoso-SO Contoso\\Administrator Allow Full
VMFiles Contoso-SO Contoso\\Contoso-HV1$ Allow Full
VMFiles Contoso-SO Contoso\\Contoso-HV2$ Allow Full
VMFiles Contoso-SO Contoso\\Domain Admins Allow Change
This command adds an allow ACE for a trustee to the security descriptor of the SMB share named VMFiles for the account named Contoso\\Contoso-HV2$
without user confirmation.
RELATED LINKS
Block-SmbShareAccess
Get-SmbShareAccess
Revoke-SmbShareAccess
Unblock-SmbShareAccess