Citrix Virtual Apps and Desktops SDK

Set-AcctIdentityPool

Update parameters of an identity pool.

Syntax

Set-AcctIdentityPool
   -IdentityPoolUid <Guid>
   [-NamingScheme <String>]
   [-NamingSchemeType <ADIdentityNamingScheme>]
   [-OU <String>]
   [-Domain <String>]
   [-AllowUnicode]
   [-PassThru]
   [-StartCount <Int32>]
   [-ZoneUid <Guid>]
   [-AzureADSecurityGroupName <String>]
   [-AzureADAccessToken <String>]
   [-AzureADTenantId <Guid>]
   [-ServiceAccountUid <Guid[]>]
   [-LoggingId <Guid>]
   [<CitrixCommonParameters>]
   [<CommonParameters>]
<!--NeedCopy-->
Set-AcctIdentityPool
   [-IdentityPoolName] <String>
   [-NamingScheme <String>]
   [-NamingSchemeType <ADIdentityNamingScheme>]
   [-OU <String>]
   [-Domain <String>]
   [-AllowUnicode]
   [-PassThru]
   [-StartCount <Int32>]
   [-ZoneUid <Guid>]
   [-AzureADSecurityGroupName <String>]
   [-AzureADAccessToken <String>]
   [-AzureADTenantId <Guid>]
   [-ServiceAccountUid <Guid[]>]
   [-LoggingId <Guid>]
   [<CitrixCommonParameters>]
   [<CommonParameters>]
<!--NeedCopy-->

Description

Provides the ability to modify the parameters of an identity pool.

Examples

EXAMPLE 1

Changes the start count and naming scheme of the identity pool named ‘poolName’ so that the next account generated will be AC0100 (assuming that account does not already exist).

Set-AcctIdentityPool -IdentityPoolName poolName -StartCount 100 -NamingScheme AC####
<!--NeedCopy-->

Parameters

-IdentityPoolUid

The unique identifier for the identity pool that is to be modified.

Type: Guid
Position: Named
Default value: None
Required: True
Accept pipeline input: False
Accept wildcard characters: False

-IdentityPoolName

The name of the identity pool that is to be modified.

Type: String
Position: 2
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
Length range: 1 to 64

-NamingScheme

The new naming scheme that is to be used for the identity pool.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False
Length range: 2 to 15

-NamingSchemeType

The new naming scheme type that is to be used for the identity pool. This can be Numeric or Alphabetic.

Type: ADIdentityNamingScheme
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-OU

The new OU to be used for the identity pool. All accounts created after this is set are created in this AD container. This will not move existing accounts. The OU must be a valid AD container of the domain specified for the pool.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False
Length range: 0 to 2048

-Domain

The new Active Directory domain that is to be used for the identity pool. All new accounts will be created in this domain, but will not affect existing accounts. The domain can be specified in either long or short form (i.e. domain or domain.com).

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False
Length range: 2 to 255

-AllowUnicode

Updates the definition of the allowed characters in a naming scheme.

Type: SwitchParameter
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-PassThru

Defines whether the command returns the new state of the identity pool or not.

Type: SwitchParameter
Position: Named
Default value: False
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-StartCount

Specifies the next number to be used when creating new AD accounts in the identity pool.

Type: Int32
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-ZoneUid

The UID that corresponds to the Zone in which these AD accounts will be created. This is only intended to be used for Citrix Cloud Delivery Controllers.

Type: Guid
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-AzureADSecurityGroupName

The name of Azure AD security group. This is only intended to be used when IdentityType is “AzureAD” or “HybridAzureAD”.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False
Length range: 1 to 64
Disallowed characters: \/;:#.*?=<>\|[]()"'
Introduced in: Citrix Virtual Apps and Desktop 7 2206

-AzureADAccessToken

The access token of Microsoft Graph API. Must be specified if “IdentityType” is “HybridAzureAD” or “AzureAD”.

Make sure grant consent to following permissions:

  • Group.ReadWrite.All
  • GroupMember.ReadWrite.All
Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False
Introduced in: Citrix Virtual Apps and Desktop 7 2206

-AzureADTenantId

The tenantId of AzureAD. Must be specified if “AzureADSecurityGroupName” is specified to create AzureAD security group, and IdentityType is “AzureAD” or “HybridAzureAD”.

Type: Guid
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False
Introduced in: Citrix Virtual Apps and Desktop 7 2206

-ServiceAccountUid

Specify the UID of the service account that associates with the identity pool.

Type: Guid[]
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False
Introduced in: Citrix Virtual Apps and Desktop 7 2308

-LoggingId

Specifies the identifier of the high-level operation this cmdlet call forms a part of. Citrix Studio and Director typically create high-level operations. PowerShell scripts can also wrap a series of cmdlet calls in a high-level operation by way of the Start-LogHighLevelOperation and Stop-LogHighLevelOperation cmdlets.

Type: Guid
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

CitrixCommonParameters

This cmdlet supports the common Citrix parameters: -AdminAddress, -AdminClientIP, -BearerToken, -TraceParent, -TraceState and -VirtualSiteId. For more information, see about_CitrixCommonParameters.

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

Inputs

None

You can’t pipe objects to this cmdlet.

Outputs

Citrix.ADIdentity.Sdk.IdentityPool

This object provides details of the identity pool and contains the following information:

AvailableAccounts <int>

The number of existing accounts (AcctADAccount objects) in the ‘Available’ state (not in ‘InUse’, ‘Tainted’, or ‘Error’).

DeviceManagementType <string>

The device management type. Can be Intune, IntuneWithCitrixTags, IntuneWithSCCM, or None by default.

Domain <string>

The Active Directory domain (in FQDN format) that accounts in the pool belong to.

ErrorAccounts <int>

The number of existing AD accounts in the ‘Error’ state.

IdentityContent <string>

JSON formatted metadata containing Azure AD tenant and Azure AD security group information associated with this identity pool.

IdentityPoolName <string>

The name of the identity pool.

IdentityPoolUid <GUID>

The unique identifier for the identity pool.

IdentityType <string>

The identity type.

InUseAccounts <int>

The number of existing AD accounts in the ‘InUse’ state.

Lock <bool>

Indicates if the identity pool is locked.

MetadataMap <IDictionary[string, string];>

The metadata associated with this identity pool arranged in key value pairs.

NamingScheme <string>

The naming scheme for the identity pool.

NamingSchemeType <string>

The naming scheme type for the identity pool. This can be one of the following:

Numeric - naming scheme uses numeric indexes

Alphabetic - naming scheme uses alphabetic indexes

OU <string>

The Active Directory distinguished name for the OU in which accounts for this identity pool will be created.

ResourceLocationId <GUID>

The UID that corresponds to the resource location (DaaS only).

StartCount <int>

The next index to be used when creating an account in the identity pool.

TaintedAccounts <int>

The number of existing AD accounts in the ‘Tainted’ state.

WorkgroupMachine <bool>

If this is true, the identity pool can have an IdentityType of ‘AzureAD’ or ‘Workgroup’.

If this is false, the identity pool can have an IdentityType of ‘ActiveDirectory’ or ‘HybridAzureAD’.

ZoneUid <GUID>

The UID that corresponds to the Zone in which AD accounts are created.

Scopes <Citrix.ADIdentity.Sdk.ScopeReference[]>

The administration scopes associated with this identity pool.

TenantId <GUID>

Identity of the Citrix tenant associated with this identity pool.

Not applicable (always blank) in non-multitenant sites.

AzureADSecurityGroupName <string>

Associate an AzureAD security group to the identity pool. When the identity pool Associated an AzureAd device security

group, the option will update the name of the associated Azure AD security group.

Notes

In the case of failure, the following errors can result.

Error Codes


InvalidIdentityPoolParameterCombination

Caused by either of the following validation errors:

  • If an OU is specified then a domain must also be specified.
  • NamingScheme, NamingSchemeType and Domain must all be present if any of them are specified.

OUParameterRequiresDomain

If an OU is specified then a domain must also be specified.

OUNotReachable

Domain is not reachable. Check if the domain exists in any zones and if the domain contains the specified OU.

NamingSchemeAndNamingSchemeTypeMustBeUsedTogether

NamingScheme and NamingSchemeType must be used together.

NamingSchemeIllegalComputerName

The naming scheme supplied is not valid.

UnableToConvertDomainName

Unable to convert domain name to DNS format.

NamingSchemeNotEnoughCharacters

Naming scheme does not have enough characters specified.

NamingSchemeTooManyCharacters

Naming scheme has too many characters specified.

NamingSchemeIllegalCharacter

Naming scheme contains illegal characters.

NamingSchemeMayNotStartWithPeriod

Naming scheme starts with a period (.) character.

NamingSchemeMayNotBeAllNumbers

Naming scheme contains only numbers.

NamingSchemeMissingNumericSpecifications

Naming scheme does not contain any variable specification (i.e. no ‘#’ characters are specified).

NamingSchemeHasMoreThanOneSetOfHashes

Naming scheme has more than one variable region (i.e. there are ‘#’ characters separated by other characters).

IdentityPoolDuplicateObjectExists

An identity pool with the same name exists already.

IdentityPoolObjectNotFound

The identity pool to be modified could not be located.

IdentityPoolOUInvalid

Identity pool OU invalid as it does not exist.

IdentityPoolOUOfWrongDomain

Identity pool OU invalid as it refers to a different domain to the domain specified for the pool.

PermissionDenied

The user does not have administrative rights to perform this operation.

ConfigurationLoggingError

The operation could not be performed because of a configuration logging error

DatabaseError

An error occurred in the service while attempting a database operation.

DatabaseNotConfigured

The operation could not be completed because the database for the service is not configured.

ServiceStatusInvalidDb

An error occurred in the service while attempting a database operation - communication with the database failed for various reasons.

CommunicationError

An error occurred while communicating with the service.

AzureADAccessTokenMustBeSpecified

Must specify “AzureADAccessToken” parameter to operate AzureAD security group.

AzureADSecurityGroupNotSupportCurrentIdentityType

Current IdentityType not support AzureAD security group.

AzureADSecurityGroupMustBeSpecified

Must specify AzureAD security group.

AzureADSecurityGroupMembershipRulesMoreThanFiveExpressions

AzureAD security group membership rules more than five expressions.

AzureADSecurityGroupMembershipRuleExceedsMaximumLength

AzureAD security group membership rule exceeds maximum length.

AzureADSecurityGroupMembershipNeedsMatchRules

AzureAD security group membership needs match rules.

AzureADSecurityGroupMembershipRulesPrepareFailed

AzureAD security group membership rules prepare failed.

AzureADTenantIdMismatchAzureADAccessToken

The given AzureADTenantId mismatchs TenantId contained in AzureAD AccessToken.

CurrentIdentityTypeRequiresWorkgroupMachine

Current IdentityType requires WorkgroupMachine.

DomainNotRequiredForAzureADAndWorkgroup

Domain not required for AzureAD and Workgroup.

FailedToUpdateAzureADSecurityGroup

Failed to update AzureAD security group.

NamingSchemeAndDomainMustBeUsedTogetherForActiveDirectoryOrHybridAzureAD

NamingScheme and Domain must be used together for ActiveDirectory or HybridAzureAD.

ExceptionThrown

An unexpected error occurred. To locate more details, see the Windows event logs on the controller being used or examine the Citrix Virtual Apps and Desktops logs.

Set-AcctIdentityPool