IntuneVPNConfigurationPolicyAndroidWork¶
Parameters¶
| Parameter | Attribute | DataType | Description | Allowed Values |
|---|---|---|---|---|
| Id | Write | String | Id of the Intune policy. | |
| DisplayName | Key | String | Display name of the Intune policy. | |
| Description | Write | String | Description of the Intune policy. | |
| RoleScopeTagIds | Write | String[] | List of Scope Tags for this Entity instance. | |
| authenticationMethod | Write | String | Authentication method. Inherited from vpnConfiguration. Possible values are: certificate, usernameAndPassword, sharedSecret, derivedCredential, azureAD. | certificate, usernameAndPassword, sharedSecret, derivedCredential, azureAD |
| connectionName | Write | String | Connection name displayed to the user. | |
| role | Write | String | Role when connection type is set to Pulse Secure. Inherited from vpnConfiguration. | |
| realm | Write | String | Realm when connection type is set to Pulse Secure. Inherited from vpnConfiguration. | |
| fingerprint | Write | String | Fingerprint is a string that will be used to verify the VPN server can be trusted, which is only applicable when connection type is Check Point Capsule VPN. | |
| servers | Write | MSFT_MicrosoftGraphvpnServer[] | VPN Server on the network. Make sure end users can access this network location. | |
| connectionType | Write | String | Connection type. Possible values are: ciscoAnyConnect, pulseSecure, f5EdgeClient, dellSonicWallMobileConnect, checkPointCapsuleVpn, citrix, microsoftTunnel, netMotionMobility, microsoftProtect. | ciscoAnyConnect, pulseSecure, f5EdgeClient, dellSonicWallMobileConnect, checkPointCapsuleVpn, citrix, microsoftTunnel, netMotionMobility, microsoftProtect, paloAltoGlobalProtect |
| proxyServer | Write | MSFT_MicrosoftvpnProxyServer[] | Proxy Server. | |
| targetedPackageIds | Write | String[] | Targeted App package IDs. | |
| targetedMobileApps | Write | MSFT_targetedMobileApps[] | Targeted mobile apps. This collection can contain a maximum of 500 elements. | |
| alwaysOn | Write | Boolean | Whether or not to enable always-on VPN connection. | |
| alwaysOnLockdown | Write | Boolean | If always-on VPN connection is enabled, whether or not to lock network traffic when that VPN is disconnected. | |
| lockdownExclusionList | Write | String[] | List of app package names that will be able to access the network directly when VPN is in lockdown mode but not connected. | |
| microsoftTunnelSiteId | Write | String | Microsoft Tunnel site ID. | |
| proxyExclusionList | Write | String[] | List of hosts to exclude using the proxy on connections for. These hosts can use wildcards such as *.example.com. | |
| customData | Write | MSFT_customData[] | Custom data to define key/value pairs specific to a VPN provider. This collection can contain a maximum of 25 elements. | |
| customKeyValueData | Write | MSFT_customKeyValueData[] | Custom data to define key/value pairs specific to a VPN provider. This collection can contain a maximum of 25 elements. | |
| Assignments | Write | MSFT_DeviceManagementConfigurationPolicyAssignments[] | Represents the assignment to the Intune policy. | |
| Ensure | Write | String | Present ensures the policy exists, absent ensures it is removed. | Present, Absent |
| Credential | Write | PSCredential | Credentials of the Intune Admin | |
| ApplicationId | Write | String | Id of the Azure Active Directory application to authenticate with. | |
| TenantId | Write | String | Id of the Azure Active Directory tenant used for authentication. | |
| ApplicationSecret | Write | PSCredential | Secret of the Azure Active Directory tenant used for authentication. | |
| CertificateThumbprint | Write | String | Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication. | |
| CertificatePassword | Write | PSCredential | Username can be made up to anything but password will be used for CertificatePassword | |
| CertificatePath | Write | String | Path to certificate used in service principal usually a PFX file. | |
| ManagedIdentity | Write | Boolean | Managed ID being used for authentication. | |
| AccessTokens | Write | String[] | Access token used for authentication. |
Embedded Instances¶
MSFT_MicrosoftGraphvpnServer¶
Parameters¶
| Parameter | Attribute | DataType | Description | Allowed Values |
|---|---|---|---|---|
| address | Required | String | Address (IP address, FQDN or URL) | |
| description | Write | String | Description. | |
| isDefaultServer | Write | Boolean | Default server. |
MSFT_MicrosoftvpnProxyServer¶
Parameters¶
| Parameter | Attribute | DataType | Description | Allowed Values |
|---|---|---|---|---|
| automaticConfigurationScriptUrl | Write | String | Proxy's automatic configuration script url. | |
| address | Required | String | Address. | |
| port | Required | UInt32 | Port. Valid values 0 to 65535. |
MSFT_targetedMobileApps¶
Parameters¶
| Parameter | Attribute | DataType | Description | Allowed Values |
|---|---|---|---|---|
| name | Write | String | The application name. | |
| publisher | Write | String | The publisher of the application. | |
| appStoreUrl | Write | String | The Store URL of the application. | |
| appId | Required | String | The application or bundle identifier of the application. |
MSFT_customData¶
Parameters¶
| Parameter | Attribute | DataType | Description | Allowed Values |
|---|---|---|---|---|
| key | Required | String | Key for the custom data entry. | |
| value | Write | String | Value for the custom data entry. |
MSFT_customKeyValueData¶
Parameters¶
| Parameter | Attribute | DataType | Description | Allowed Values |
|---|---|---|---|---|
| name | Required | String | Name for the custom data entry. | |
| value | Write | String | Value for the custom data entry. |
MSFT_DeviceManagementConfigurationPolicyAssignments¶
Parameters¶
| Parameter | Attribute | DataType | Description | Allowed Values |
|---|---|---|---|---|
| dataType | Required | String | The type of the target assignment. | #microsoft.graph.cloudPcManagementGroupAssignmentTarget, #microsoft.graph.groupAssignmentTarget, #microsoft.graph.allLicensedUsersAssignmentTarget, #microsoft.graph.allDevicesAssignmentTarget, #microsoft.graph.exclusionGroupAssignmentTarget, #microsoft.graph.configurationManagerCollectionAssignmentTarget |
| deviceAndAppManagementAssignmentFilterType | Write | String | The type of filter of the target assignment i.e. Exclude or Include. Possible values are:none, include, exclude. | none, include, exclude |
| deviceAndAppManagementAssignmentFilterId | Write | String | The Id of the filter for the target assignment. | |
| deviceAndAppManagementAssignmentFilterDisplayName | Write | String | The display name of the filter for the target assignment. | |
| groupId | Write | String | The group Id that is the target of the assignment. | |
| groupDisplayName | Write | String | The group Display Name that is the target of the assignment. | |
| collectionId | Write | String | The collection Id that is the target of the assignment.(ConfigMgr) |
Description¶
This resource configures an Intune VPN Configuration Policy for Android Work Devices.
Permissions¶
Graph¶
To authenticate with the Graph API, this resource requires the following permissions:
Delegated permissions¶
- Read
-
GroupMember.Read.All, DeviceManagementConfiguration.Read.All, DeviceManagementRBAC.Read.All
-
Update
- GroupMember.Read.All, DeviceManagementConfiguration.ReadWrite.All, DeviceManagementRBAC.Read.All
Application permissions¶
- Read
-
GroupMember.Read.All, DeviceManagementConfiguration.Read.All, DeviceManagementRBAC.Read.All
-
Update
- GroupMember.Read.All, DeviceManagementConfiguration.ReadWrite.All, DeviceManagementRBAC.Read.All
Examples¶
Example 1¶
This example is used to test new resources and showcase the usage of new resources being worked on. It is not meant to use as a production baseline.
Configuration Example
{
param
(
[Parameter()]
[System.String]
$ApplicationId,
[Parameter()]
[System.String]
$TenantId,
[Parameter()]
[System.String]
$CertificateThumbprint
)
Import-DscResource -ModuleName Microsoft365DSC
Node localhost
{
IntuneVPNConfigurationPolicyAndroidWork "IntuneVPNConfigurationPolicyAndroidWork-Example"
{
alwaysOn = $true;
alwaysOnLockdown = $false;
Assignments = @(
MSFT_DeviceManagementConfigurationPolicyAssignments{
dataType = "#microsoft.graph.groupAssignmentTarget"
deviceAndAppManagementAssignmentFilterType = "none"
groupDisplayName = "Android Work Profile Users"
}
MSFT_DeviceManagementConfigurationPolicyAssignments{
dataType = "#microsoft.graph.exclusionGroupAssignmentTarget"
groupDisplayName = "Field Service Contractors"
}
);
authenticationMethod = "usernameAndPassword";
connectionName = "Contoso Work Profile VPN";
connectionType = "pulseSecure";
customData = @(
MSFT_customData{
key = "ProfileName"
value = "Contoso-Mobile"
}
);
customKeyValueData = @(
MSFT_customKeyValueData{
name = "SplitTunnel"
value = "false"
}
);
Description = "Per-app VPN access to the corporate network from Android Enterprise work profiles";
DisplayName = "IntuneVPNConfigurationPolicyAndroidWork DisplayName";
Ensure = "Present";
lockdownExclusionList = @("com.android.vending", "com.microsoft.windowsintune.companyportal");
proxyExclusionList = @("intranet.contoso.com", "*.contoso.local");
proxyServer = @(
MSFT_MicrosoftvpnProxyServer{
address = "proxy.contoso.com"
port = 8080
}
);
realm = "corp.contoso.com";
role = "Mobile Users";
RoleScopeTagIds = @("0");
servers = @(
MSFT_MicrosoftGraphvpnServer{
isDefaultServer = $true
description = "Primary VPN gateway"
address = "vpn.contoso.com"
}
);
targetedMobileApps = @(
MSFT_targetedMobileApps{
name = "Outlook"
publisher = "Microsoft Corporation"
appStoreUrl = "https://play.google.com/store/apps/details?id=com.microsoft.office.outlook"
appId = "com.microsoft.office.outlook"
}
);
targetedPackageIds = @("com.microsoft.office.outlook", "com.microsoft.sharepoint");
ApplicationId = $ApplicationId;
TenantId = $TenantId;
CertificateThumbprint = $CertificateThumbprint;
}
}
}
Example 2¶
This example is used to test new resources and showcase the usage of new resources being worked on. It is not meant to use as a production baseline.
Configuration Example
{
param
(
[Parameter()]
[System.String]
$ApplicationId,
[Parameter()]
[System.String]
$TenantId,
[Parameter()]
[System.String]
$CertificateThumbprint
)
Import-DscResource -ModuleName Microsoft365DSC
Node localhost
{
IntuneVPNConfigurationPolicyAndroidWork "IntuneVPNConfigurationPolicyAndroidWork-Example"
{
alwaysOn = $true;
alwaysOnLockdown = $false;
Assignments = @(
MSFT_DeviceManagementConfigurationPolicyAssignments{
dataType = "#microsoft.graph.groupAssignmentTarget"
deviceAndAppManagementAssignmentFilterType = "none"
groupDisplayName = "Android Work Profile Users"
}
MSFT_DeviceManagementConfigurationPolicyAssignments{
dataType = "#microsoft.graph.exclusionGroupAssignmentTarget"
groupDisplayName = "Field Service Contractors"
}
);
authenticationMethod = "usernameAndPassword";
connectionName = "Contoso Work Profile VPN";
connectionType = "pulseSecure";
customData = @(
MSFT_customData{
key = "ProfileName"
value = "Contoso-Mobile"
}
);
customKeyValueData = @(
MSFT_customKeyValueData{
name = "SplitTunnel"
value = "false"
}
);
Description = "Per-app VPN access to the corporate network from Android Enterprise work profiles";
DisplayName = "IntuneVPNConfigurationPolicyAndroidWork DisplayName";
Ensure = "Present";
lockdownExclusionList = @("com.android.vending", "com.microsoft.windowsintune.companyportal");
proxyExclusionList = @("intranet.contoso.com", "*.contoso.local");
proxyServer = @(
MSFT_MicrosoftvpnProxyServer{
address = "proxy.contoso.com"
port = 8080
}
);
realm = "corp.contoso.com";
role = "Mobile Users";
RoleScopeTagIds = @("0");
servers = @(
MSFT_MicrosoftGraphvpnServer{
isDefaultServer = $true
description = "Primary VPN gateway"
address = "vpn2.contoso.com" # Updated Property
}
);
targetedMobileApps = @(
MSFT_targetedMobileApps{
name = "Outlook"
publisher = "Microsoft Corporation"
appStoreUrl = "https://play.google.com/store/apps/details?id=com.microsoft.office.outlook"
appId = "com.microsoft.office.outlook"
}
);
targetedPackageIds = @("com.microsoft.office.outlook", "com.microsoft.sharepoint");
ApplicationId = $ApplicationId;
TenantId = $TenantId;
CertificateThumbprint = $CertificateThumbprint;
}
}
}
Example 3¶
This example is used to test new resources and showcase the usage of new resources being worked on. It is not meant to use as a production baseline.
Configuration Example
{
param
(
[Parameter()]
[System.String]
$ApplicationId,
[Parameter()]
[System.String]
$TenantId,
[Parameter()]
[System.String]
$CertificateThumbprint
)
Import-DscResource -ModuleName Microsoft365DSC
Node localhost
{
IntuneVPNConfigurationPolicyAndroidWork "IntuneVPNConfigurationPolicyAndroidWork-Example"
{
DisplayName = "IntuneVPNConfigurationPolicyAndroidWork DisplayName";
Ensure = "Absent";
ApplicationId = $ApplicationId;
TenantId = $TenantId;
CertificateThumbprint = $CertificateThumbprint;
}
}
}