active-directory-b2c-advanced-policies icon indicating copy to clipboard operation
active-directory-b2c-advanced-policies copied to clipboard

Upload - Object reference not set to an instance of an object

Open openfieldlive opened this issue 5 years ago • 1 comments

Hi !

I'm working on Custom Policies for ADB2C. Recently I've started to have some problems during the Upload of my policies.

Sometimes everything uploads fine and other times I just have an error and cannot upload it. Here is the error : ##[error]An error has occurred.Validation failed: 1 validation error(s) found in policy "B2C_1A_COMMON_BASE" of tenant "XXXXX".Object reference not set to an instance of an object.62414603-5c62-440b-b772-a1792624c012AADB2C (I have hidden the tenant)

Here is my Common Base Policy :

<TrustFrameworkPolicy
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06"
  PolicySchemaVersion="0.3.0.0"
  TenantId="{##Tenant##}"
  PolicyId="B2C_1A_Common_Base"
  PublicPolicyUri="http://{##Tenant##}/B2C_1A_Common_Base">
  <BuildingBlocks>
    <ClaimsSchema>
      <!-- C'est ici que sont déclarés les Claims utilisés tout au long de ce fichier -->
      <!--<ClaimType Id="socialIdpUserId">
        <DisplayName>Username</DisplayName>
        <DataType>string</DataType>
        <UserHelpText />
        <UserInputType>TextBox</UserInputType>
        <Restriction>
          <Pattern RegularExpression="^[a-zA-Z0-9]+[a-zA-Z0-9_-]*$" HelpText="The username you provided is not valid. It must begin with an alphabet or number and can contain alphabets, numbers and the following symbols: _ -" />
        </Restriction>
      </ClaimType>-->
      <ClaimType Id="tenantId">
        <DisplayName>User's Object's Tenant ID</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="tid" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="tid" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.microsoft.com/identity/claims/tenantid" />
        </DefaultPartnerClaimTypes>
        <UserHelpText>Tenant identifier (ID) of the user object in Azure AD.</UserHelpText>
      </ClaimType>
      <ClaimType Id="objectId">
        <DisplayName>User's Object ID</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="oid" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="oid" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.microsoft.com/identity/claims/objectidentifier" />
        </DefaultPartnerClaimTypes>
        <UserHelpText>Object identifier (ID) of the user object in Azure AD.</UserHelpText>
      </ClaimType>
      <ClaimType Id="publicId">
        <DisplayName>publicId</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="publicId" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="publicId" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/publicId" />
        </DefaultPartnerClaimTypes>
      </ClaimType>
      <!-- Claims needed for local accounts. -->
      <ClaimType Id="signInName">
        <DisplayName>Sign in name</DisplayName>
        <DataType>string</DataType>
        <UserHelpText />
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="signInNames.emailAddress">
        <DisplayName>Email Address</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Email address to use for signing in.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="passwordPolicies">
        <DisplayName>Password Policies</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Password policies used by Azure AD to determine password strength, expiry etc.</UserHelpText>
      </ClaimType>
      <ClaimType Id="client_id">
        <DisplayName>client_id</DisplayName>
        <DataType>string</DataType>
        <AdminHelpText>Special parameter passed to EvoSTS.</AdminHelpText>
        <UserHelpText>Special parameter passed to EvoSTS.</UserHelpText>
      </ClaimType>
      <ClaimType Id="resource_id">
        <DisplayName>resource_id</DisplayName>
        <DataType>string</DataType>
        <AdminHelpText>Special parameter passed to EvoSTS.</AdminHelpText>
        <UserHelpText>Special parameter passed to EvoSTS.</UserHelpText>
      </ClaimType>
      <ClaimType Id="sub">
        <DisplayName>Subject</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OpenIdConnect" PartnerClaimType="sub" />
        </DefaultPartnerClaimTypes>
        <UserHelpText />
      </ClaimType>
      <ClaimType Id="identityProvider">
        <DisplayName>Identity Provider</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="idp" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="idp" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.microsoft.com/identity/claims/identityprovider" />
        </DefaultPartnerClaimTypes>
        <UserHelpText />
      </ClaimType>
      <ClaimType Id="displayName">
        <DisplayName>Display Name</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="unique_name" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="name" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name" />
        </DefaultPartnerClaimTypes>
        <UserHelpText>Your display name.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="otherMails">
        <DisplayName>Alternate Email Addresses</DisplayName>
        <DataType>stringCollection</DataType>
        <UserHelpText>Email addresses that can be used to contact the user.</UserHelpText>
      </ClaimType>
      <ClaimType Id="userPrincipalName">
        <DisplayName>UserPrincipalName</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="upn" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="upn" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.microsoft.com/identity/claims/userprincipalname" />
        </DefaultPartnerClaimTypes>
        <UserHelpText>Your user name as stored in the Azure Active Directory.</UserHelpText>
      </ClaimType>
      <ClaimType Id="upnUserName">
        <DisplayName>UPN User Name</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>The user name for creating user principal name.</UserHelpText>
      </ClaimType>
      <ClaimType Id="newUser">
        <DisplayName>User is new</DisplayName>
        <DataType>boolean</DataType>
        <UserHelpText />
      </ClaimType>
      <ClaimType Id="executed-SelfAsserted-Input">
        <DisplayName>Executed-SelfAsserted-Input</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>A claim that specifies whether attributes were collected from the user.</UserHelpText>
      </ClaimType>
      <ClaimType Id="authenticationSource">
        <DisplayName>AuthenticationSource</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Specifies whether the user was authenticated at Social IDP or local account.</UserHelpText>
      </ClaimType>
      <!-- SECTION II: Claims required to pass on special parameters (including some query string parameters) to other claims providers -->
      <ClaimType Id="nca">
        <DisplayName>nca</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Special parameter passed for local account authentication to login.microsoftonline.com.</UserHelpText>
      </ClaimType>
      <ClaimType Id="grant_type">
        <DisplayName>grant_type</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Special parameter passed for local account authentication to login.microsoftonline.com.</UserHelpText>
      </ClaimType>
      <ClaimType Id="scope">
        <DisplayName>scope</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Special parameter passed for local account authentication to login.microsoftonline.com.</UserHelpText>
      </ClaimType>
      <ClaimType Id="objectIdFromSession">
        <DisplayName>objectIdFromSession</DisplayName>
        <DataType>boolean</DataType>
        <UserHelpText>Parameter provided by the default session management provider to indicate that the object id has been retrieved from an SSO session.</UserHelpText>
      </ClaimType>
      <ClaimType Id="isActiveMFASession">
        <DisplayName>isActiveMFASession</DisplayName>
        <DataType>boolean</DataType>
        <UserHelpText>Parameter provided by the MFA session management to indicate that the user has an active MFA session.</UserHelpText>
      </ClaimType>
      <!-- SECTION III: Additional claims that can be collected from the users, stored in the directory, and sent in the token. Add additional claims here. -->
      <ClaimType Id="groups">
        <DisplayName>Groups ids</DisplayName>
        <DataType>stringCollection</DataType>
      </ClaimType>
      <ClaimType Id="groupsNames">
        <DisplayName>Groups Names</DisplayName>
        <DataType>stringCollection</DataType>
      </ClaimType>
      <!-- SECTION IV: Formulaire -->
      <ClaimType Id="civility">
        <DisplayName>Civility</DisplayName>
        <DataType>string</DataType>
        <UserInputType>DropdownSingleSelect</UserInputType>
        <Restriction>
          <Enumeration Text="Monsieur" Value="M" SelectByDefault="false" />
          <Enumeration Text="Madame" Value="MME" SelectByDefault="false" />
          <Enumeration Text="Mademoiselle" Value="MISS" SelectByDefault="false" />
          <Enumeration Text="Mister" Value="MR" SelectByDefault="false" />
          <Enumeration Text="Mistress" Value="MRS" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="givenName">
        <DisplayName>Given Name</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="given_name" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="given_name" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname" />
        </DefaultPartnerClaimTypes>
        <UserHelpText>Your given name (also known as first name).</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="surname">
        <DisplayName>Surname</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="family_name" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="family_name" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname" />
        </DefaultPartnerClaimTypes>
        <UserHelpText>Your surname (also known as family name or last name).</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="email">
        <DisplayName>Email Address</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OpenIdConnect" PartnerClaimType="email" />
        </DefaultPartnerClaimTypes>
        <UserHelpText>Email address that can be used to contact you.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
        <Restriction>
          <Pattern RegularExpression="^[a-zA-Z0-9.!#$%&amp;'^_`{}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$" HelpText="Please enter a valid email address." />
        </Restriction>
      </ClaimType>
      <ClaimType Id="password">
        <DisplayName>Password</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Enter password</UserHelpText>
        <UserInputType>Password</UserInputType>
      </ClaimType>
      <!-- The claim types newPassword and reenterPassword are considered special, please do not change the names. 
           The UI validates the the user correctly re-entered their password during account creation based on these 
           claim types.   -->
      <ClaimType Id="newPassword">
        <DisplayName>New Password</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Enter new password</UserHelpText>
        <UserInputType>Password</UserInputType>
        <Restriction>
          <Pattern RegularExpression="^((?=.*[a-z])(?=.*[A-Z])(?=.*\d)|(?=.*[a-z])(?=.*[A-Z])(?=.*[^A-Za-z0-9])|(?=.*[a-z])(?=.*\d)(?=.*[^A-Za-z0-9])|(?=.*[A-Z])(?=.*\d)(?=.*[^A-Za-z0-9]))([A-Za-z\d@#$%^&amp;*\-_+=[\]{}|\\:',?/`~&quot;();!]|\.(?!@)){8,16}$" HelpText="8-16 characters, containing 3 out of 4 of the following: Lowercase characters, uppercase characters, digits (0-9), and one or more of the following symbols: @ # $ % ^ &amp; * - _ + = [ ] { } | \ : ' , ? / ` ~ &quot; ( ) ; ." />
        </Restriction>
      </ClaimType>
      <!-- The password regular expression above is constructed for AAD passwords based on restrictions at https://msdn.microsoft.com/en-us/library/azure/jj943764.aspx

        ^( # one of the following four combinations must appear in the password
         (?=.*[a-z])(?=.*[A-Z])(?=.*\d) |            # matches lower case, upper case or digit
         (?=.*[a-z])(?=.*[A-Z])(?=.*[^A-Za-z0-9]) |  # matches lower case, upper case or special character (i.e. non-alpha or digit)
         (?=.*[a-z])(?=.*\d)(?=.*[^A-Za-z0-9]) |     # matches lower case, digit, or special character
         (?=.*[A-Z])(?=.*\d)(?=.*[^A-Za-z0-9])       # matches upper case, digit, or special character
        )
        ( # The password must match the following restrictions
         [A-Za-z\d@#$%^&*\-_+=[\]{}|\\:',?/`~"();!] |   # The list of all acceptable characters (without .)
         \.(?!@)                                        # or . can appear as long as not followed by @
        ) {8,16}$                                       # the length must be between 8 and 16 chars inclusive

      -->
      <ClaimType Id="reenterPassword">
        <DisplayName>Confirm New Password</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Confirm new password</UserHelpText>
        <UserInputType>Password</UserInputType>
        <Restriction>
          <Pattern RegularExpression="^((?=.*[a-z])(?=.*[A-Z])(?=.*\d)|(?=.*[a-z])(?=.*[A-Z])(?=.*[^A-Za-z0-9])|(?=.*[a-z])(?=.*\d)(?=.*[^A-Za-z0-9])|(?=.*[A-Z])(?=.*\d)(?=.*[^A-Za-z0-9]))([A-Za-z\d@#$%^&amp;*\-_+=[\]{}|\\:',?/`~&quot;();!]|\.(?!@)){8,16}$" HelpText=" " />
        </Restriction>
      </ClaimType>
      <ClaimType Id="mobile">
        <DisplayName>Mobile</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Your mobile phone.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="birthdate">
        <DisplayName>Birthdate</DisplayName>
        <DataType>date</DataType>
        <UserInputType>DateTimeDropdown</UserInputType>
      </ClaimType>
      <ClaimType Id="street1">
        <DisplayName>Street 1</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Your street 1 address.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="street2">
        <DisplayName>Street 2</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Your street 2 address.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="street3">
        <DisplayName>Street 3</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Your street 3 address.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="street4">
        <DisplayName>Street 4</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Your street 4 address.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="zipCode">
        <DisplayName>Zip Code</DisplayName>
        <DataType>string</DataType>
        <DefaultPartnerClaimTypes>
          <Protocol Name="OAuth2" PartnerClaimType="postal_code" />
          <Protocol Name="OpenIdConnect" PartnerClaimType="postal_code" />
          <Protocol Name="SAML2" PartnerClaimType="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/postalcode" />
        </DefaultPartnerClaimTypes>
        <UserHelpText>Your zip code.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="city">
        <DisplayName>City</DisplayName>
        <DataType>string</DataType>
        <UserHelpText>Your city.</UserHelpText>
        <UserInputType>TextBox</UserInputType>
      </ClaimType>
      <ClaimType Id="country">
        <DisplayName>Country</DisplayName>
        <DataType>string</DataType>
        <UserInputType>DropdownSingleSelect</UserInputType>
        <Restriction>
          <Enumeration Text="ABW" Value="ABW" SelectByDefault="false" />
          <Enumeration Text="AFG" Value="AFG" SelectByDefault="false" />
          <Enumeration Text="AGO" Value="AGO" SelectByDefault="false" />
          <Enumeration Text="AIA" Value="AIA" SelectByDefault="false" />
          <Enumeration Text="ALA" Value="ALA" SelectByDefault="false" />
          <Enumeration Text="ALB" Value="ALB" SelectByDefault="false" />
          <Enumeration Text="AND" Value="AND" SelectByDefault="false" />
          <Enumeration Text="ANT" Value="ANT" SelectByDefault="false" />
          <Enumeration Text="ARE" Value="ARE" SelectByDefault="false" />
          <Enumeration Text="ARG" Value="ARG" SelectByDefault="false" />
          <Enumeration Text="ARM" Value="ARM" SelectByDefault="false" />
          <Enumeration Text="ASM" Value="ASM" SelectByDefault="false" />
          <Enumeration Text="ATA" Value="ATA" SelectByDefault="false" />
          <Enumeration Text="ATF" Value="ATF" SelectByDefault="false" />
          <Enumeration Text="ATG" Value="ATG" SelectByDefault="false" />
          <Enumeration Text="AUS" Value="AUS" SelectByDefault="false" />
          <Enumeration Text="AUT" Value="AUT" SelectByDefault="false" />
          <Enumeration Text="AZE" Value="AZE" SelectByDefault="false" />
          <Enumeration Text="BDI" Value="BDI" SelectByDefault="false" />
          <Enumeration Text="BEL" Value="BEL" SelectByDefault="false" />
          <Enumeration Text="BEN" Value="BEN" SelectByDefault="false" />
          <Enumeration Text="BFA" Value="BFA" SelectByDefault="false" />
          <Enumeration Text="BGD" Value="BGD" SelectByDefault="false" />
          <Enumeration Text="BGR" Value="BGR" SelectByDefault="false" />
          <Enumeration Text="BHR" Value="BHR" SelectByDefault="false" />
          <Enumeration Text="BHS" Value="BHS" SelectByDefault="false" />
          <Enumeration Text="BIH" Value="BIH" SelectByDefault="false" />
          <Enumeration Text="BLR" Value="BLR" SelectByDefault="false" />
          <Enumeration Text="BLZ" Value="BLZ" SelectByDefault="false" />
          <Enumeration Text="BMU" Value="BMU" SelectByDefault="false" />
          <Enumeration Text="BOL" Value="BOL" SelectByDefault="false" />
          <Enumeration Text="BRA" Value="BRA" SelectByDefault="false" />
          <Enumeration Text="BRB" Value="BRB" SelectByDefault="false" />
          <Enumeration Text="BRN" Value="BRN" SelectByDefault="false" />
          <Enumeration Text="BTN" Value="BTN" SelectByDefault="false" />
          <Enumeration Text="BVT" Value="BVT" SelectByDefault="false" />
          <Enumeration Text="BWA" Value="BWA" SelectByDefault="false" />
          <Enumeration Text="CAF" Value="CAF" SelectByDefault="false" />
          <Enumeration Text="CAN" Value="CAN" SelectByDefault="false" />
          <Enumeration Text="CCK" Value="CCK" SelectByDefault="false" />
          <Enumeration Text="CHE" Value="CHE" SelectByDefault="false" />
          <Enumeration Text="CHL" Value="CHL" SelectByDefault="false" />
          <Enumeration Text="CHN" Value="CHN" SelectByDefault="false" />
          <Enumeration Text="CIV" Value="CIV" SelectByDefault="false" />
          <Enumeration Text="CMR" Value="CMR" SelectByDefault="false" />
          <Enumeration Text="COD" Value="COD" SelectByDefault="false" />
          <Enumeration Text="COG" Value="COG" SelectByDefault="false" />
          <Enumeration Text="COK" Value="COK" SelectByDefault="false" />
          <Enumeration Text="COL" Value="COL" SelectByDefault="false" />
          <Enumeration Text="COM" Value="COM" SelectByDefault="false" />
          <Enumeration Text="CPV" Value="CPV" SelectByDefault="false" />
          <Enumeration Text="CRI" Value="CRI" SelectByDefault="false" />
          <Enumeration Text="CUB" Value="CUB" SelectByDefault="false" />
          <Enumeration Text="CXR" Value="CXR" SelectByDefault="false" />
          <Enumeration Text="CYM" Value="CYM" SelectByDefault="false" />
          <Enumeration Text="CYP" Value="CYP" SelectByDefault="false" />
          <Enumeration Text="CZE" Value="CZE" SelectByDefault="false" />
          <Enumeration Text="DEU" Value="DEU" SelectByDefault="false" />
          <Enumeration Text="DJI" Value="DJI" SelectByDefault="false" />
          <Enumeration Text="DMA" Value="DMA" SelectByDefault="false" />
          <Enumeration Text="DNK" Value="DNK" SelectByDefault="false" />
          <Enumeration Text="DOM" Value="DOM" SelectByDefault="false" />
          <Enumeration Text="DZA" Value="DZA" SelectByDefault="false" />
          <Enumeration Text="ECU" Value="ECU" SelectByDefault="false" />
          <Enumeration Text="EGY" Value="EGY" SelectByDefault="false" />
          <Enumeration Text="ERI" Value="ERI" SelectByDefault="false" />
          <Enumeration Text="ESH" Value="ESH" SelectByDefault="false" />
          <Enumeration Text="ESP" Value="ESP" SelectByDefault="false" />
          <Enumeration Text="EST" Value="EST" SelectByDefault="false" />
          <Enumeration Text="ETH" Value="ETH" SelectByDefault="false" />
          <Enumeration Text="FIN" Value="FIN" SelectByDefault="false" />
          <Enumeration Text="FJI" Value="FJI" SelectByDefault="false" />
          <Enumeration Text="FLK" Value="FLK" SelectByDefault="false" />
          <Enumeration Text="FRA" Value="FRA" SelectByDefault="false" />
          <Enumeration Text="FRO" Value="FRO" SelectByDefault="false" />
          <Enumeration Text="FSM" Value="FSM" SelectByDefault="false" />
          <Enumeration Text="GAB" Value="GAB" SelectByDefault="false" />
          <Enumeration Text="GBR" Value="GBR" SelectByDefault="false" />
          <Enumeration Text="GEO" Value="GEO" SelectByDefault="false" />
          <Enumeration Text="GHA" Value="GHA" SelectByDefault="false" />
          <Enumeration Text="GIB" Value="GIB" SelectByDefault="false" />
          <Enumeration Text="GIN" Value="GIN" SelectByDefault="false" />
          <Enumeration Text="GLP" Value="GLP" SelectByDefault="false" />
          <Enumeration Text="GMB" Value="GMB" SelectByDefault="false" />
          <Enumeration Text="GNB" Value="GNB" SelectByDefault="false" />
          <Enumeration Text="GNQ" Value="GNQ" SelectByDefault="false" />
          <Enumeration Text="GRC" Value="GRC" SelectByDefault="false" />
          <Enumeration Text="GRD" Value="GRD" SelectByDefault="false" />
          <Enumeration Text="GRL" Value="GRL" SelectByDefault="false" />
          <Enumeration Text="GTM" Value="GTM" SelectByDefault="false" />
          <Enumeration Text="GUF" Value="GUF" SelectByDefault="false" />
          <Enumeration Text="GUM" Value="GUM" SelectByDefault="false" />
          <Enumeration Text="GUY" Value="GUY" SelectByDefault="false" />
          <Enumeration Text="HKG" Value="HKG" SelectByDefault="false" />
          <Enumeration Text="HMD" Value="HMD" SelectByDefault="false" />
          <Enumeration Text="HND" Value="HND" SelectByDefault="false" />
          <Enumeration Text="HRV" Value="HRV" SelectByDefault="false" />
          <Enumeration Text="HTI" Value="HTI" SelectByDefault="false" />
          <Enumeration Text="HUN" Value="HUN" SelectByDefault="false" />
          <Enumeration Text="IDN" Value="IDN" SelectByDefault="false" />
          <Enumeration Text="IMN" Value="IMN" SelectByDefault="false" />
          <Enumeration Text="IND" Value="IND" SelectByDefault="false" />
          <Enumeration Text="IOT" Value="IOT" SelectByDefault="false" />
          <Enumeration Text="IRL" Value="IRL" SelectByDefault="false" />
          <Enumeration Text="IRN" Value="IRN" SelectByDefault="false" />
          <Enumeration Text="IRQ" Value="IRQ" SelectByDefault="false" />
          <Enumeration Text="ISL" Value="ISL" SelectByDefault="false" />
          <Enumeration Text="ISR" Value="ISR" SelectByDefault="false" />
          <Enumeration Text="ITA" Value="ITA" SelectByDefault="false" />
          <Enumeration Text="JAM" Value="JAM" SelectByDefault="false" />
          <Enumeration Text="JEY" Value="JEY" SelectByDefault="false" />
          <Enumeration Text="JOR" Value="JOR" SelectByDefault="false" />
          <Enumeration Text="JPN" Value="JPN" SelectByDefault="false" />
          <Enumeration Text="KAZ" Value="KAZ" SelectByDefault="false" />
          <Enumeration Text="KEN" Value="KEN" SelectByDefault="false" />
          <Enumeration Text="KGZ" Value="KGZ" SelectByDefault="false" />
          <Enumeration Text="KHM" Value="KHM" SelectByDefault="false" />
          <Enumeration Text="KIR" Value="KIR" SelectByDefault="false" />
          <Enumeration Text="KNA" Value="KNA" SelectByDefault="false" />
          <Enumeration Text="KOR" Value="KOR" SelectByDefault="false" />
          <Enumeration Text="KWT" Value="KWT" SelectByDefault="false" />
          <Enumeration Text="LAO" Value="LAO" SelectByDefault="false" />
          <Enumeration Text="LBN" Value="LBN" SelectByDefault="false" />
          <Enumeration Text="LBR" Value="LBR" SelectByDefault="false" />
          <Enumeration Text="LBY" Value="LBY" SelectByDefault="false" />
          <Enumeration Text="LCA" Value="LCA" SelectByDefault="false" />
          <Enumeration Text="LIE" Value="LIE" SelectByDefault="false" />
          <Enumeration Text="LKA" Value="LKA" SelectByDefault="false" />
          <Enumeration Text="LSO" Value="LSO" SelectByDefault="false" />
          <Enumeration Text="LTU" Value="LTU" SelectByDefault="false" />
          <Enumeration Text="LUX" Value="LUX" SelectByDefault="false" />
          <Enumeration Text="LVA" Value="LVA" SelectByDefault="false" />
          <Enumeration Text="MAC" Value="MAC" SelectByDefault="false" />
          <Enumeration Text="MAR" Value="MAR" SelectByDefault="false" />
          <Enumeration Text="MCO" Value="MCO" SelectByDefault="false" />
          <Enumeration Text="MDA" Value="MDA" SelectByDefault="false" />
          <Enumeration Text="MDG" Value="MDG" SelectByDefault="false" />
          <Enumeration Text="MDV" Value="MDV" SelectByDefault="false" />
          <Enumeration Text="MEX" Value="MEX" SelectByDefault="false" />
          <Enumeration Text="MHL" Value="MHL" SelectByDefault="false" />
          <Enumeration Text="MKD" Value="MKD" SelectByDefault="false" />
          <Enumeration Text="MLI" Value="MLI" SelectByDefault="false" />
          <Enumeration Text="MLT" Value="MLT" SelectByDefault="false" />
          <Enumeration Text="MMR" Value="MMR" SelectByDefault="false" />
          <Enumeration Text="MNG" Value="MNG" SelectByDefault="false" />
          <Enumeration Text="MNP" Value="MNP" SelectByDefault="false" />
          <Enumeration Text="MOZ" Value="MOZ" SelectByDefault="false" />
          <Enumeration Text="MRT" Value="MRT" SelectByDefault="false" />
          <Enumeration Text="MSR" Value="MSR" SelectByDefault="false" />
          <Enumeration Text="MTQ" Value="MTQ" SelectByDefault="false" />
          <Enumeration Text="MUS" Value="MUS" SelectByDefault="false" />
          <Enumeration Text="MWI" Value="MWI" SelectByDefault="false" />
          <Enumeration Text="MYS" Value="MYS" SelectByDefault="false" />
          <Enumeration Text="MYT" Value="MYT" SelectByDefault="false" />
          <Enumeration Text="NAM" Value="NAM" SelectByDefault="false" />
          <Enumeration Text="NCL" Value="NCL" SelectByDefault="false" />
          <Enumeration Text="NER" Value="NER" SelectByDefault="false" />
          <Enumeration Text="NFK" Value="NFK" SelectByDefault="false" />
          <Enumeration Text="NGA" Value="NGA" SelectByDefault="false" />
          <Enumeration Text="NIC" Value="NIC" SelectByDefault="false" />
          <Enumeration Text="NIU" Value="NIU" SelectByDefault="false" />
          <Enumeration Text="NLD" Value="NLD" SelectByDefault="false" />
          <Enumeration Text="NOR" Value="NOR" SelectByDefault="false" />
          <Enumeration Text="NPL" Value="NPL" SelectByDefault="false" />
          <Enumeration Text="NRU" Value="NRU" SelectByDefault="false" />
          <Enumeration Text="NZL" Value="NZL" SelectByDefault="false" />
          <Enumeration Text="OMN" Value="OMN" SelectByDefault="false" />
          <Enumeration Text="PAK" Value="PAK" SelectByDefault="false" />
          <Enumeration Text="PAN" Value="PAN" SelectByDefault="false" />
          <Enumeration Text="PCN" Value="PCN" SelectByDefault="false" />
          <Enumeration Text="PER" Value="PER" SelectByDefault="false" />
          <Enumeration Text="PHL" Value="PHL" SelectByDefault="false" />
          <Enumeration Text="PLW" Value="PLW" SelectByDefault="false" />
          <Enumeration Text="PNG" Value="PNG" SelectByDefault="false" />
          <Enumeration Text="POL" Value="POL" SelectByDefault="false" />
          <Enumeration Text="PRI" Value="PRI" SelectByDefault="false" />
          <Enumeration Text="PRK" Value="PRK" SelectByDefault="false" />
          <Enumeration Text="PRT" Value="PRT" SelectByDefault="false" />
          <Enumeration Text="PRY" Value="PRY" SelectByDefault="false" />
          <Enumeration Text="PSE" Value="PSE" SelectByDefault="false" />
          <Enumeration Text="PYF" Value="PYF" SelectByDefault="false" />
          <Enumeration Text="QAT" Value="QAT" SelectByDefault="false" />
          <Enumeration Text="REU" Value="REU" SelectByDefault="false" />
          <Enumeration Text="ROU" Value="ROU" SelectByDefault="false" />
          <Enumeration Text="RUS" Value="RUS" SelectByDefault="false" />
          <Enumeration Text="RWA" Value="RWA" SelectByDefault="false" />
          <Enumeration Text="SAU" Value="SAU" SelectByDefault="false" />
          <Enumeration Text="SCG" Value="SCG" SelectByDefault="false" />
          <Enumeration Text="SDN" Value="SDN" SelectByDefault="false" />
          <Enumeration Text="SEN" Value="SEN" SelectByDefault="false" />
          <Enumeration Text="SGP" Value="SGP" SelectByDefault="false" />
          <Enumeration Text="SGS" Value="SGS" SelectByDefault="false" />
          <Enumeration Text="SHN" Value="SHN" SelectByDefault="false" />
          <Enumeration Text="SJM" Value="SJM" SelectByDefault="false" />
          <Enumeration Text="SLB" Value="SLB" SelectByDefault="false" />
          <Enumeration Text="SLE" Value="SLE" SelectByDefault="false" />
          <Enumeration Text="SLV" Value="SLV" SelectByDefault="false" />
          <Enumeration Text="SMR" Value="SMR" SelectByDefault="false" />
          <Enumeration Text="SOM" Value="SOM" SelectByDefault="false" />
          <Enumeration Text="SPM" Value="SPM" SelectByDefault="false" />
          <Enumeration Text="STP" Value="STP" SelectByDefault="false" />
          <Enumeration Text="SUR" Value="SUR" SelectByDefault="false" />
          <Enumeration Text="SVK" Value="SVK" SelectByDefault="false" />
          <Enumeration Text="SVN" Value="SVN" SelectByDefault="false" />
          <Enumeration Text="SWE" Value="SWE" SelectByDefault="false" />
          <Enumeration Text="SWZ" Value="SWZ" SelectByDefault="false" />
          <Enumeration Text="SYC" Value="SYC" SelectByDefault="false" />
          <Enumeration Text="SYR" Value="SYR" SelectByDefault="false" />
          <Enumeration Text="TCA" Value="TCA" SelectByDefault="false" />
          <Enumeration Text="TCD" Value="TCD" SelectByDefault="false" />
          <Enumeration Text="TGO" Value="TGO" SelectByDefault="false" />
          <Enumeration Text="THA" Value="THA" SelectByDefault="false" />
          <Enumeration Text="TJK" Value="TJK" SelectByDefault="false" />
          <Enumeration Text="TKL" Value="TKL" SelectByDefault="false" />
          <Enumeration Text="TKM" Value="TKM" SelectByDefault="false" />
          <Enumeration Text="TLS" Value="TLS" SelectByDefault="false" />
          <Enumeration Text="TON" Value="TON" SelectByDefault="false" />
          <Enumeration Text="TTO" Value="TTO" SelectByDefault="false" />
          <Enumeration Text="TUN" Value="TUN" SelectByDefault="false" />
          <Enumeration Text="TUR" Value="TUR" SelectByDefault="false" />
          <Enumeration Text="TUV" Value="TUV" SelectByDefault="false" />
          <Enumeration Text="TWN" Value="TWN" SelectByDefault="false" />
          <Enumeration Text="TZA" Value="TZA" SelectByDefault="false" />
          <Enumeration Text="UGA" Value="UGA" SelectByDefault="false" />
          <Enumeration Text="UKR" Value="UKR" SelectByDefault="false" />
          <Enumeration Text="UMI" Value="UMI" SelectByDefault="false" />
          <Enumeration Text="URY" Value="URY" SelectByDefault="false" />
          <Enumeration Text="USA" Value="USA" SelectByDefault="false" />
          <Enumeration Text="UZB" Value="UZB" SelectByDefault="false" />
          <Enumeration Text="VAT" Value="VAT" SelectByDefault="false" />
          <Enumeration Text="VCT" Value="VCT" SelectByDefault="false" />
          <Enumeration Text="VEN" Value="VEN" SelectByDefault="false" />
          <Enumeration Text="VGB" Value="VGB" SelectByDefault="false" />
          <Enumeration Text="VIR" Value="VIR" SelectByDefault="false" />
          <Enumeration Text="VNM" Value="VNM" SelectByDefault="false" />
          <Enumeration Text="VUT" Value="VUT" SelectByDefault="false" />
          <Enumeration Text="WLF" Value="WLF" SelectByDefault="false" />
          <Enumeration Text="WSM" Value="WSM" SelectByDefault="false" />
          <Enumeration Text="YEM" Value="YEM" SelectByDefault="false" />
          <Enumeration Text="ZAF" Value="ZAF" SelectByDefault="false" />
          <Enumeration Text="ZMB" Value="ZMB" SelectByDefault="false" />
          <Enumeration Text="ZWE" Value="ZWE" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="language">
        <DisplayName>Language</DisplayName>
        <DataType>string</DataType>
        <UserInputType>DropdownSingleSelect</UserInputType>
        <Restriction>
          <Enumeration Text="Abkhazian" Value="Abkhazian" SelectByDefault="false" />
          <Enumeration Text="Afar" Value="Afar" SelectByDefault="false" />
          <Enumeration Text="Afrikaans" Value="Afrikaans" SelectByDefault="false" />
          <Enumeration Text="Akan" Value="Akan" SelectByDefault="false" />
          <Enumeration Text="Albanian" Value="Albanian" SelectByDefault="false" />
          <Enumeration Text="Amharic" Value="Amharic" SelectByDefault="false" />
          <Enumeration Text="Arabic" Value="Arabic" SelectByDefault="false" />
          <Enumeration Text="Armenian" Value="Armenian" SelectByDefault="false" />
          <Enumeration Text="Assamese" Value="Assamese" SelectByDefault="false" />
          <Enumeration Text="Asturian" Value="Asturian" SelectByDefault="false" />
          <Enumeration Text="Avar" Value="Avar" SelectByDefault="false" />
          <Enumeration Text="Avestan" Value="Avestan" SelectByDefault="false" />
          <Enumeration Text="Aymara" Value="Aymara" SelectByDefault="false" />
          <Enumeration Text="Azerbaijani" Value="Azerbaijani" SelectByDefault="false" />
          <Enumeration Text="Bambara" Value="Bambara" SelectByDefault="false" />
          <Enumeration Text="Bashkir" Value="Bashkir" SelectByDefault="false" />
          <Enumeration Text="Basque" Value="Basque" SelectByDefault="false" />
          <Enumeration Text="Belarusian" Value="Belarusian" SelectByDefault="false" />
          <Enumeration Text="Bengali" Value="Bengali" SelectByDefault="false" />
          <Enumeration Text="Bhutani" Value="Bhutani" SelectByDefault="false" />
          <Enumeration Text="Bihari" Value="Bihari" SelectByDefault="false" />
          <Enumeration Text="Bislama" Value="Bislama" SelectByDefault="false" />
          <Enumeration Text="Bosnian" Value="Bosnian" SelectByDefault="false" />
          <Enumeration Text="Breton" Value="Breton" SelectByDefault="false" />
          <Enumeration Text="Bulgarian" Value="Bulgarian" SelectByDefault="false" />
          <Enumeration Text="Burmese" Value="Burmese" SelectByDefault="false" />
          <Enumeration Text="Cambodian" Value="Cambodian" SelectByDefault="false" />
          <Enumeration Text="Catalan" Value="Catalan" SelectByDefault="false" />
          <Enumeration Text="Chamorro" Value="Chamorro" SelectByDefault="false" />
          <Enumeration Text="Chechen" Value="Chechen" SelectByDefault="false" />
          <Enumeration Text="Chichewa" Value="Chichewa" SelectByDefault="false" />
          <Enumeration Text="Chinese Simplified" Value="Chinese Simplified" SelectByDefault="false" />
          <Enumeration Text="Chinese Traditional" Value="Chinese Traditional" SelectByDefault="false" />
          <Enumeration Text="Chuvash" Value="Chuvash" SelectByDefault="false" />
          <Enumeration Text="Cornish" Value="Cornish" SelectByDefault="false" />
          <Enumeration Text="Corsican" Value="Corsican" SelectByDefault="false" />
          <Enumeration Text="Cree" Value="Cree" SelectByDefault="false" />
          <Enumeration Text="Croatian" Value="Croatian" SelectByDefault="false" />
          <Enumeration Text="Czech" Value="Czech" SelectByDefault="false" />
          <Enumeration Text="Danish" Value="Danish" SelectByDefault="false" />
          <Enumeration Text="Dutch" Value="Dutch" SelectByDefault="false" />
          <Enumeration Text="English" Value="English" SelectByDefault="false" />
          <Enumeration Text="English British" Value="English British" SelectByDefault="false" />
          <Enumeration Text="Esperanto" Value="Esperanto" SelectByDefault="false" />
          <Enumeration Text="Estonian" Value="Estonian" SelectByDefault="false" />
          <Enumeration Text="Ewe" Value="Ewe" SelectByDefault="false" />
          <Enumeration Text="Faeroese" Value="Faeroese" SelectByDefault="false" />
          <Enumeration Text="Fiji" Value="Fiji" SelectByDefault="false" />
          <Enumeration Text="Filipino" Value="Filipino" SelectByDefault="false" />
          <Enumeration Text="Finnish" Value="Finnish" SelectByDefault="false" />
          <Enumeration Text="French" Value="French" SelectByDefault="false" />
          <Enumeration Text="Frisian" Value="Frisian" SelectByDefault="false" />
          <Enumeration Text="Fulah" Value="Fulah" SelectByDefault="false" />
          <Enumeration Text="Galician" Value="Galician" SelectByDefault="false" />
          <Enumeration Text="Georgian" Value="Georgian" SelectByDefault="false" />
          <Enumeration Text="German" Value="German" SelectByDefault="false" />
          <Enumeration Text="Greek" Value="Greek" SelectByDefault="false" />
          <Enumeration Text="Greenlandic" Value="Greenlandic" SelectByDefault="false" />
          <Enumeration Text="Guarani" Value="Guarani" SelectByDefault="false" />
          <Enumeration Text="Gujarati" Value="Gujarati" SelectByDefault="false" />
          <Enumeration Text="HaitianCreole" Value="HaitianCreole" SelectByDefault="false" />
          <Enumeration Text="Hausa" Value="Hausa" SelectByDefault="false" />
          <Enumeration Text="Hebrew" Value="Hebrew" SelectByDefault="false" />
          <Enumeration Text="Herero" Value="Herero" SelectByDefault="false" />
          <Enumeration Text="Hindi" Value="Hindi" SelectByDefault="false" />
          <Enumeration Text="HiriMotu" Value="HiriMotu" SelectByDefault="false" />
          <Enumeration Text="Hungarian" Value="Hungarian" SelectByDefault="false" />
          <Enumeration Text="Icelandic" Value="Icelandic" SelectByDefault="false" />
          <Enumeration Text="Igbo" Value="Igbo" SelectByDefault="false" />
          <Enumeration Text="Indonesian" Value="Indonesian" SelectByDefault="false" />
          <Enumeration Text="Interlingua" Value="Interlingua" SelectByDefault="false" />
          <Enumeration Text="Interlingue" Value="Interlingue" SelectByDefault="false" />
          <Enumeration Text="Inuktitut" Value="Inuktitut" SelectByDefault="false" />
          <Enumeration Text="Inupiak" Value="Inupiak" SelectByDefault="false" />
          <Enumeration Text="Irish" Value="Irish" SelectByDefault="false" />
          <Enumeration Text="Italian" Value="Italian" SelectByDefault="false" />
          <Enumeration Text="Japanese" Value="Japanese" SelectByDefault="false" />
          <Enumeration Text="Javanese" Value="Javanese" SelectByDefault="false" />
          <Enumeration Text="Kannada" Value="Kannada" SelectByDefault="false" />
          <Enumeration Text="Kanuri" Value="Kanuri" SelectByDefault="false" />
          <Enumeration Text="Kashmiri" Value="Kashmiri" SelectByDefault="false" />
          <Enumeration Text="Kazakh" Value="Kazakh" SelectByDefault="false" />
          <Enumeration Text="Kikuyu" Value="Kikuyu" SelectByDefault="false" />
          <Enumeration Text="Kinyarwanda" Value="Kinyarwanda" SelectByDefault="false" />
          <Enumeration Text="Kirundi" Value="Kirundi" SelectByDefault="false" />
          <Enumeration Text="Komi" Value="Komi" SelectByDefault="false" />
          <Enumeration Text="Kongo" Value="Kongo" SelectByDefault="false" />
          <Enumeration Text="Korean" Value="Korean" SelectByDefault="false" />
          <Enumeration Text="Kurdish" Value="Kurdish" SelectByDefault="false" />
          <Enumeration Text="Kwanyama" Value="Kwanyama" SelectByDefault="false" />
          <Enumeration Text="Kyrgyz" Value="Kyrgyz" SelectByDefault="false" />
          <Enumeration Text="Laothian" Value="Laothian" SelectByDefault="false" />
          <Enumeration Text="Latin" Value="Latin" SelectByDefault="false" />
          <Enumeration Text="Latvian" Value="Latvian" SelectByDefault="false" />
          <Enumeration Text="Lingala" Value="Lingala" SelectByDefault="false" />
          <Enumeration Text="Lithuanian" Value="Lithuanian" SelectByDefault="false" />
          <Enumeration Text="Lolspeak" Value="Lolspeak" SelectByDefault="false" />
          <Enumeration Text="Luganda" Value="Luganda" SelectByDefault="false" />
          <Enumeration Text="Luxembourgish" Value="Luxembourgish" SelectByDefault="false" />
          <Enumeration Text="Macedonian" Value="Macedonian" SelectByDefault="false" />
          <Enumeration Text="Malagasy" Value="Malagasy" SelectByDefault="false" />
          <Enumeration Text="Malay" Value="Malay" SelectByDefault="false" />
          <Enumeration Text="Malayalam" Value="Malayalam" SelectByDefault="false" />
          <Enumeration Text="Maldivian" Value="Maldivian" SelectByDefault="false" />
          <Enumeration Text="Maltese" Value="Maltese" SelectByDefault="false" />
          <Enumeration Text="Manx" Value="Manx" SelectByDefault="false" />
          <Enumeration Text="Maori" Value="Maori" SelectByDefault="false" />
          <Enumeration Text="Marathi" Value="Marathi" SelectByDefault="false" />
          <Enumeration Text="Marshallese" Value="Marshallese" SelectByDefault="false" />
          <Enumeration Text="Moldavian" Value="Moldavian" SelectByDefault="false" />
          <Enumeration Text="Mongolian" Value="Mongolian" SelectByDefault="false" />
          <Enumeration Text="Nauru" Value="Nauru" SelectByDefault="false" />
          <Enumeration Text="Navajo" Value="Navajo" SelectByDefault="false" />
          <Enumeration Text="Ndonga" Value="Ndonga" SelectByDefault="false" />
          <Enumeration Text="Nepali" Value="Nepali" SelectByDefault="false" />
          <Enumeration Text="NorthernSami" Value="NorthernSami" SelectByDefault="false" />
          <Enumeration Text="NorthNdebele" Value="NorthNdebele" SelectByDefault="false" />
          <Enumeration Text="NorwegianBokmål" Value="NorwegianBokmål" SelectByDefault="false" />
          <Enumeration Text="NorwegianNynorsk" Value="NorwegianNynorsk" SelectByDefault="false" />
          <Enumeration Text="Occitan" Value="Occitan" SelectByDefault="false" />
          <Enumeration Text="OldSlavonic" Value="OldSlavonic" SelectByDefault="false" />
          <Enumeration Text="Oriya" Value="Oriya" SelectByDefault="false" />
          <Enumeration Text="Oromo" Value="Oromo" SelectByDefault="false" />
          <Enumeration Text="Ossetian" Value="Ossetian" SelectByDefault="false" />
          <Enumeration Text="Pali" Value="Pali" SelectByDefault="false" />
          <Enumeration Text="Pashto" Value="Pashto" SelectByDefault="false" />
          <Enumeration Text="Persian" Value="Persian" SelectByDefault="false" />
          <Enumeration Text="Polish" Value="Polish" SelectByDefault="false" />
          <Enumeration Text="Portuguese" Value="Portuguese" SelectByDefault="false" />
          <Enumeration Text="Punjabi" Value="Punjabi" SelectByDefault="false" />
          <Enumeration Text="Quechua" Value="Quechua" SelectByDefault="false" />
          <Enumeration Text="Rhaeto-Romance" Value="Rhaeto-Romance" SelectByDefault="false" />
          <Enumeration Text="Romanian" Value="Romanian" SelectByDefault="false" />
          <Enumeration Text="Russian" Value="Russian" SelectByDefault="false" />
          <Enumeration Text="Samoan" Value="Samoan" SelectByDefault="false" />
          <Enumeration Text="Sango" Value="Sango" SelectByDefault="false" />
          <Enumeration Text="Sanskrit" Value="Sanskrit" SelectByDefault="false" />
          <Enumeration Text="Sardinian" Value="Sardinian" SelectByDefault="false" />
          <Enumeration Text="Scots" Value="Scots" SelectByDefault="false" />
          <Enumeration Text="ScotsGaelic" Value="ScotsGaelic" SelectByDefault="false" />
          <Enumeration Text="Serbian" Value="Serbian" SelectByDefault="false" />
          <Enumeration Text="Serbo-Croatian" Value="Serbo-Croatian" SelectByDefault="false" />
          <Enumeration Text="Sesotho" Value="Sesotho" SelectByDefault="false" />
          <Enumeration Text="Setswana" Value="Setswana" SelectByDefault="false" />
          <Enumeration Text="Shona" Value="Shona" SelectByDefault="false" />
          <Enumeration Text="Sindhi" Value="Sindhi" SelectByDefault="false" />
          <Enumeration Text="Sinhala" Value="Sinhala" SelectByDefault="false" />
          <Enumeration Text="Siswati" Value="Siswati" SelectByDefault="false" />
          <Enumeration Text="Slovak" Value="Slovak" SelectByDefault="false" />
          <Enumeration Text="Slovenian" Value="Slovenian" SelectByDefault="false" />
          <Enumeration Text="Somali" Value="Somali" SelectByDefault="false" />
          <Enumeration Text="SouthNdebele" Value="SouthNdebele" SelectByDefault="false" />
          <Enumeration Text="Spanish" Value="Spanish" SelectByDefault="false" />
          <Enumeration Text="Sudanese" Value="Sudanese" SelectByDefault="false" />
          <Enumeration Text="Swahili" Value="Swahili" SelectByDefault="false" />
          <Enumeration Text="Swedish" Value="Swedish" SelectByDefault="false" />
          <Enumeration Text="SwissGerman" Value="SwissGerman" SelectByDefault="false" />
          <Enumeration Text="Tagalog" Value="Tagalog" SelectByDefault="false" />
          <Enumeration Text="Tahitian" Value="Tahitian" SelectByDefault="false" />
          <Enumeration Text="Tajik" Value="Tajik" SelectByDefault="false" />
          <Enumeration Text="Tamil" Value="Tamil" SelectByDefault="false" />
          <Enumeration Text="Tatar" Value="Tatar" SelectByDefault="false" />
          <Enumeration Text="Telugu" Value="Telugu" SelectByDefault="false" />
          <Enumeration Text="Thai" Value="Thai" SelectByDefault="false" />
          <Enumeration Text="Tibetan" Value="Tibetan" SelectByDefault="false" />
          <Enumeration Text="Tigrinya" Value="Tigrinya" SelectByDefault="false" />
          <Enumeration Text="Tonga" Value="Tonga" SelectByDefault="false" />
          <Enumeration Text="Tsonga" Value="Tsonga" SelectByDefault="false" />
          <Enumeration Text="Turkish" Value="Turkish" SelectByDefault="false" />
          <Enumeration Text="Turkmen" Value="Turkmen" SelectByDefault="false" />
          <Enumeration Text="Twi" Value="Twi" SelectByDefault="false" />
          <Enumeration Text="Ukrainian" Value="Ukrainian" SelectByDefault="false" />
          <Enumeration Text="Urdu" Value="Urdu" SelectByDefault="false" />
          <Enumeration Text="Uyghur" Value="Uyghur" SelectByDefault="false" />
          <Enumeration Text="Uzbek" Value="Uzbek" SelectByDefault="false" />
          <Enumeration Text="Venda" Value="Venda" SelectByDefault="false" />
          <Enumeration Text="Vietnamese" Value="Vietnamese" SelectByDefault="false" />
          <Enumeration Text="Welsh" Value="Welsh" SelectByDefault="false" />
          <Enumeration Text="Wolof" Value="Wolof" SelectByDefault="false" />
          <Enumeration Text="Xhosa" Value="Xhosa" SelectByDefault="false" />
          <Enumeration Text="Yiddish" Value="Yiddish" SelectByDefault="false" />
          <Enumeration Text="Yoruba" Value="Yoruba" SelectByDefault="false" />
          <Enumeration Text="Zhuang" Value="Zhuang" SelectByDefault="false" />
          <Enumeration Text="Zulu" Value="Zulu" SelectByDefault="false" />
          <Enumeration Text="Portuguese,Brazil" Value="Portuguese,Brazil" SelectByDefault="false" />
          <Enumeration Text="Portuguese,International" Value="Portuguese,International" SelectByDefault="false" />
          <Enumeration Text="Portuguese,Portugal" Value="Portuguese,Portugal" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="nationality">
        <DisplayName>Nationality</DisplayName>
        <DataType>string</DataType>
        <UserInputType>DropdownSingleSelect</UserInputType>
        <Restriction>
          <Enumeration Text="ABW" Value="ABW" SelectByDefault="false" />
          <Enumeration Text="AFG" Value="AFG" SelectByDefault="false" />
          <Enumeration Text="AGO" Value="AGO" SelectByDefault="false" />
          <Enumeration Text="AIA" Value="AIA" SelectByDefault="false" />
          <Enumeration Text="ALA" Value="ALA" SelectByDefault="false" />
          <Enumeration Text="ALB" Value="ALB" SelectByDefault="false" />
          <Enumeration Text="AND" Value="AND" SelectByDefault="false" />
          <Enumeration Text="ANT" Value="ANT" SelectByDefault="false" />
          <Enumeration Text="ARE" Value="ARE" SelectByDefault="false" />
          <Enumeration Text="ARG" Value="ARG" SelectByDefault="false" />
          <Enumeration Text="ARM" Value="ARM" SelectByDefault="false" />
          <Enumeration Text="ASM" Value="ASM" SelectByDefault="false" />
          <Enumeration Text="ATA" Value="ATA" SelectByDefault="false" />
          <Enumeration Text="ATF" Value="ATF" SelectByDefault="false" />
          <Enumeration Text="ATG" Value="ATG" SelectByDefault="false" />
          <Enumeration Text="AUS" Value="AUS" SelectByDefault="false" />
          <Enumeration Text="AUT" Value="AUT" SelectByDefault="false" />
          <Enumeration Text="AZE" Value="AZE" SelectByDefault="false" />
          <Enumeration Text="BDI" Value="BDI" SelectByDefault="false" />
          <Enumeration Text="BEL" Value="BEL" SelectByDefault="false" />
          <Enumeration Text="BEN" Value="BEN" SelectByDefault="false" />
          <Enumeration Text="BFA" Value="BFA" SelectByDefault="false" />
          <Enumeration Text="BGD" Value="BGD" SelectByDefault="false" />
          <Enumeration Text="BGR" Value="BGR" SelectByDefault="false" />
          <Enumeration Text="BHR" Value="BHR" SelectByDefault="false" />
          <Enumeration Text="BHS" Value="BHS" SelectByDefault="false" />
          <Enumeration Text="BIH" Value="BIH" SelectByDefault="false" />
          <Enumeration Text="BLR" Value="BLR" SelectByDefault="false" />
          <Enumeration Text="BLZ" Value="BLZ" SelectByDefault="false" />
          <Enumeration Text="BMU" Value="BMU" SelectByDefault="false" />
          <Enumeration Text="BOL" Value="BOL" SelectByDefault="false" />
          <Enumeration Text="BRA" Value="BRA" SelectByDefault="false" />
          <Enumeration Text="BRB" Value="BRB" SelectByDefault="false" />
          <Enumeration Text="BRN" Value="BRN" SelectByDefault="false" />
          <Enumeration Text="BTN" Value="BTN" SelectByDefault="false" />
          <Enumeration Text="BVT" Value="BVT" SelectByDefault="false" />
          <Enumeration Text="BWA" Value="BWA" SelectByDefault="false" />
          <Enumeration Text="CAF" Value="CAF" SelectByDefault="false" />
          <Enumeration Text="CAN" Value="CAN" SelectByDefault="false" />
          <Enumeration Text="CCK" Value="CCK" SelectByDefault="false" />
          <Enumeration Text="CHE" Value="CHE" SelectByDefault="false" />
          <Enumeration Text="CHL" Value="CHL" SelectByDefault="false" />
          <Enumeration Text="CHN" Value="CHN" SelectByDefault="false" />
          <Enumeration Text="CIV" Value="CIV" SelectByDefault="false" />
          <Enumeration Text="CMR" Value="CMR" SelectByDefault="false" />
          <Enumeration Text="COD" Value="COD" SelectByDefault="false" />
          <Enumeration Text="COG" Value="COG" SelectByDefault="false" />
          <Enumeration Text="COK" Value="COK" SelectByDefault="false" />
          <Enumeration Text="COL" Value="COL" SelectByDefault="false" />
          <Enumeration Text="COM" Value="COM" SelectByDefault="false" />
          <Enumeration Text="CPV" Value="CPV" SelectByDefault="false" />
          <Enumeration Text="CRI" Value="CRI" SelectByDefault="false" />
          <Enumeration Text="CUB" Value="CUB" SelectByDefault="false" />
          <Enumeration Text="CXR" Value="CXR" SelectByDefault="false" />
          <Enumeration Text="CYM" Value="CYM" SelectByDefault="false" />
          <Enumeration Text="CYP" Value="CYP" SelectByDefault="false" />
          <Enumeration Text="CZE" Value="CZE" SelectByDefault="false" />
          <Enumeration Text="DEU" Value="DEU" SelectByDefault="false" />
          <Enumeration Text="DJI" Value="DJI" SelectByDefault="false" />
          <Enumeration Text="DMA" Value="DMA" SelectByDefault="false" />
          <Enumeration Text="DNK" Value="DNK" SelectByDefault="false" />
          <Enumeration Text="DOM" Value="DOM" SelectByDefault="false" />
          <Enumeration Text="DZA" Value="DZA" SelectByDefault="false" />
          <Enumeration Text="ECU" Value="ECU" SelectByDefault="false" />
          <Enumeration Text="EGY" Value="EGY" SelectByDefault="false" />
          <Enumeration Text="ERI" Value="ERI" SelectByDefault="false" />
          <Enumeration Text="ESH" Value="ESH" SelectByDefault="false" />
          <Enumeration Text="ESP" Value="ESP" SelectByDefault="false" />
          <Enumeration Text="EST" Value="EST" SelectByDefault="false" />
          <Enumeration Text="ETH" Value="ETH" SelectByDefault="false" />
          <Enumeration Text="FIN" Value="FIN" SelectByDefault="false" />
          <Enumeration Text="FJI" Value="FJI" SelectByDefault="false" />
          <Enumeration Text="FLK" Value="FLK" SelectByDefault="false" />
          <Enumeration Text="FRA" Value="FRA" SelectByDefault="false" />
          <Enumeration Text="FRO" Value="FRO" SelectByDefault="false" />
          <Enumeration Text="FSM" Value="FSM" SelectByDefault="false" />
          <Enumeration Text="GAB" Value="GAB" SelectByDefault="false" />
          <Enumeration Text="GBR" Value="GBR" SelectByDefault="false" />
          <Enumeration Text="GEO" Value="GEO" SelectByDefault="false" />
          <Enumeration Text="GHA" Value="GHA" SelectByDefault="false" />
          <Enumeration Text="GIB" Value="GIB" SelectByDefault="false" />
          <Enumeration Text="GIN" Value="GIN" SelectByDefault="false" />
          <Enumeration Text="GLP" Value="GLP" SelectByDefault="false" />
          <Enumeration Text="GMB" Value="GMB" SelectByDefault="false" />
          <Enumeration Text="GNB" Value="GNB" SelectByDefault="false" />
          <Enumeration Text="GNQ" Value="GNQ" SelectByDefault="false" />
          <Enumeration Text="GRC" Value="GRC" SelectByDefault="false" />
          <Enumeration Text="GRD" Value="GRD" SelectByDefault="false" />
          <Enumeration Text="GRL" Value="GRL" SelectByDefault="false" />
          <Enumeration Text="GTM" Value="GTM" SelectByDefault="false" />
          <Enumeration Text="GUF" Value="GUF" SelectByDefault="false" />
          <Enumeration Text="GUM" Value="GUM" SelectByDefault="false" />
          <Enumeration Text="GUY" Value="GUY" SelectByDefault="false" />
          <Enumeration Text="HKG" Value="HKG" SelectByDefault="false" />
          <Enumeration Text="HMD" Value="HMD" SelectByDefault="false" />
          <Enumeration Text="HND" Value="HND" SelectByDefault="false" />
          <Enumeration Text="HRV" Value="HRV" SelectByDefault="false" />
          <Enumeration Text="HTI" Value="HTI" SelectByDefault="false" />
          <Enumeration Text="HUN" Value="HUN" SelectByDefault="false" />
          <Enumeration Text="IDN" Value="IDN" SelectByDefault="false" />
          <Enumeration Text="IMN" Value="IMN" SelectByDefault="false" />
          <Enumeration Text="IND" Value="IND" SelectByDefault="false" />
          <Enumeration Text="IOT" Value="IOT" SelectByDefault="false" />
          <Enumeration Text="IRL" Value="IRL" SelectByDefault="false" />
          <Enumeration Text="IRN" Value="IRN" SelectByDefault="false" />
          <Enumeration Text="IRQ" Value="IRQ" SelectByDefault="false" />
          <Enumeration Text="ISL" Value="ISL" SelectByDefault="false" />
          <Enumeration Text="ISR" Value="ISR" SelectByDefault="false" />
          <Enumeration Text="ITA" Value="ITA" SelectByDefault="false" />
          <Enumeration Text="JAM" Value="JAM" SelectByDefault="false" />
          <Enumeration Text="JEY" Value="JEY" SelectByDefault="false" />
          <Enumeration Text="JOR" Value="JOR" SelectByDefault="false" />
          <Enumeration Text="JPN" Value="JPN" SelectByDefault="false" />
          <Enumeration Text="KAZ" Value="KAZ" SelectByDefault="false" />
          <Enumeration Text="KEN" Value="KEN" SelectByDefault="false" />
          <Enumeration Text="KGZ" Value="KGZ" SelectByDefault="false" />
          <Enumeration Text="KHM" Value="KHM" SelectByDefault="false" />
          <Enumeration Text="KIR" Value="KIR" SelectByDefault="false" />
          <Enumeration Text="KNA" Value="KNA" SelectByDefault="false" />
          <Enumeration Text="KOR" Value="KOR" SelectByDefault="false" />
          <Enumeration Text="KWT" Value="KWT" SelectByDefault="false" />
          <Enumeration Text="LAO" Value="LAO" SelectByDefault="false" />
          <Enumeration Text="LBN" Value="LBN" SelectByDefault="false" />
          <Enumeration Text="LBR" Value="LBR" SelectByDefault="false" />
          <Enumeration Text="LBY" Value="LBY" SelectByDefault="false" />
          <Enumeration Text="LCA" Value="LCA" SelectByDefault="false" />
          <Enumeration Text="LIE" Value="LIE" SelectByDefault="false" />
          <Enumeration Text="LKA" Value="LKA" SelectByDefault="false" />
          <Enumeration Text="LSO" Value="LSO" SelectByDefault="false" />
          <Enumeration Text="LTU" Value="LTU" SelectByDefault="false" />
          <Enumeration Text="LUX" Value="LUX" SelectByDefault="false" />
          <Enumeration Text="LVA" Value="LVA" SelectByDefault="false" />
          <Enumeration Text="MAC" Value="MAC" SelectByDefault="false" />
          <Enumeration Text="MAR" Value="MAR" SelectByDefault="false" />
          <Enumeration Text="MCO" Value="MCO" SelectByDefault="false" />
          <Enumeration Text="MDA" Value="MDA" SelectByDefault="false" />
          <Enumeration Text="MDG" Value="MDG" SelectByDefault="false" />
          <Enumeration Text="MDV" Value="MDV" SelectByDefault="false" />
          <Enumeration Text="MEX" Value="MEX" SelectByDefault="false" />
          <Enumeration Text="MHL" Value="MHL" SelectByDefault="false" />
          <Enumeration Text="MKD" Value="MKD" SelectByDefault="false" />
          <Enumeration Text="MLI" Value="MLI" SelectByDefault="false" />
          <Enumeration Text="MLT" Value="MLT" SelectByDefault="false" />
          <Enumeration Text="MMR" Value="MMR" SelectByDefault="false" />
          <Enumeration Text="MNG" Value="MNG" SelectByDefault="false" />
          <Enumeration Text="MNP" Value="MNP" SelectByDefault="false" />
          <Enumeration Text="MOZ" Value="MOZ" SelectByDefault="false" />
          <Enumeration Text="MRT" Value="MRT" SelectByDefault="false" />
          <Enumeration Text="MSR" Value="MSR" SelectByDefault="false" />
          <Enumeration Text="MTQ" Value="MTQ" SelectByDefault="false" />
          <Enumeration Text="MUS" Value="MUS" SelectByDefault="false" />
          <Enumeration Text="MWI" Value="MWI" SelectByDefault="false" />
          <Enumeration Text="MYS" Value="MYS" SelectByDefault="false" />
          <Enumeration Text="MYT" Value="MYT" SelectByDefault="false" />
          <Enumeration Text="NAM" Value="NAM" SelectByDefault="false" />
          <Enumeration Text="NCL" Value="NCL" SelectByDefault="false" />
          <Enumeration Text="NER" Value="NER" SelectByDefault="false" />
          <Enumeration Text="NFK" Value="NFK" SelectByDefault="false" />
          <Enumeration Text="NGA" Value="NGA" SelectByDefault="false" />
          <Enumeration Text="NIC" Value="NIC" SelectByDefault="false" />
          <Enumeration Text="NIU" Value="NIU" SelectByDefault="false" />
          <Enumeration Text="NLD" Value="NLD" SelectByDefault="false" />
          <Enumeration Text="NOR" Value="NOR" SelectByDefault="false" />
          <Enumeration Text="NPL" Value="NPL" SelectByDefault="false" />
          <Enumeration Text="NRU" Value="NRU" SelectByDefault="false" />
          <Enumeration Text="NZL" Value="NZL" SelectByDefault="false" />
          <Enumeration Text="OMN" Value="OMN" SelectByDefault="false" />
          <Enumeration Text="PAK" Value="PAK" SelectByDefault="false" />
          <Enumeration Text="PAN" Value="PAN" SelectByDefault="false" />
          <Enumeration Text="PCN" Value="PCN" SelectByDefault="false" />
          <Enumeration Text="PER" Value="PER" SelectByDefault="false" />
          <Enumeration Text="PHL" Value="PHL" SelectByDefault="false" />
          <Enumeration Text="PLW" Value="PLW" SelectByDefault="false" />
          <Enumeration Text="PNG" Value="PNG" SelectByDefault="false" />
          <Enumeration Text="POL" Value="POL" SelectByDefault="false" />
          <Enumeration Text="PRI" Value="PRI" SelectByDefault="false" />
          <Enumeration Text="PRK" Value="PRK" SelectByDefault="false" />
          <Enumeration Text="PRT" Value="PRT" SelectByDefault="false" />
          <Enumeration Text="PRY" Value="PRY" SelectByDefault="false" />
          <Enumeration Text="PSE" Value="PSE" SelectByDefault="false" />
          <Enumeration Text="PYF" Value="PYF" SelectByDefault="false" />
          <Enumeration Text="QAT" Value="QAT" SelectByDefault="false" />
          <Enumeration Text="REU" Value="REU" SelectByDefault="false" />
          <Enumeration Text="ROU" Value="ROU" SelectByDefault="false" />
          <Enumeration Text="RUS" Value="RUS" SelectByDefault="false" />
          <Enumeration Text="RWA" Value="RWA" SelectByDefault="false" />
          <Enumeration Text="SAU" Value="SAU" SelectByDefault="false" />
          <Enumeration Text="SCG" Value="SCG" SelectByDefault="false" />
          <Enumeration Text="SDN" Value="SDN" SelectByDefault="false" />
          <Enumeration Text="SEN" Value="SEN" SelectByDefault="false" />
          <Enumeration Text="SGP" Value="SGP" SelectByDefault="false" />
          <Enumeration Text="SGS" Value="SGS" SelectByDefault="false" />
          <Enumeration Text="SHN" Value="SHN" SelectByDefault="false" />
          <Enumeration Text="SJM" Value="SJM" SelectByDefault="false" />
          <Enumeration Text="SLB" Value="SLB" SelectByDefault="false" />
          <Enumeration Text="SLE" Value="SLE" SelectByDefault="false" />
          <Enumeration Text="SLV" Value="SLV" SelectByDefault="false" />
          <Enumeration Text="SMR" Value="SMR" SelectByDefault="false" />
          <Enumeration Text="SOM" Value="SOM" SelectByDefault="false" />
          <Enumeration Text="SPM" Value="SPM" SelectByDefault="false" />
          <Enumeration Text="STP" Value="STP" SelectByDefault="false" />
          <Enumeration Text="SUR" Value="SUR" SelectByDefault="false" />
          <Enumeration Text="SVK" Value="SVK" SelectByDefault="false" />
          <Enumeration Text="SVN" Value="SVN" SelectByDefault="false" />
          <Enumeration Text="SWE" Value="SWE" SelectByDefault="false" />
          <Enumeration Text="SWZ" Value="SWZ" SelectByDefault="false" />
          <Enumeration Text="SYC" Value="SYC" SelectByDefault="false" />
          <Enumeration Text="SYR" Value="SYR" SelectByDefault="false" />
          <Enumeration Text="TCA" Value="TCA" SelectByDefault="false" />
          <Enumeration Text="TCD" Value="TCD" SelectByDefault="false" />
          <Enumeration Text="TGO" Value="TGO" SelectByDefault="false" />
          <Enumeration Text="THA" Value="THA" SelectByDefault="false" />
          <Enumeration Text="TJK" Value="TJK" SelectByDefault="false" />
          <Enumeration Text="TKL" Value="TKL" SelectByDefault="false" />
          <Enumeration Text="TKM" Value="TKM" SelectByDefault="false" />
          <Enumeration Text="TLS" Value="TLS" SelectByDefault="false" />
          <Enumeration Text="TON" Value="TON" SelectByDefault="false" />
          <Enumeration Text="TTO" Value="TTO" SelectByDefault="false" />
          <Enumeration Text="TUN" Value="TUN" SelectByDefault="false" />
          <Enumeration Text="TUR" Value="TUR" SelectByDefault="false" />
          <Enumeration Text="TUV" Value="TUV" SelectByDefault="false" />
          <Enumeration Text="TWN" Value="TWN" SelectByDefault="false" />
          <Enumeration Text="TZA" Value="TZA" SelectByDefault="false" />
          <Enumeration Text="UGA" Value="UGA" SelectByDefault="false" />
          <Enumeration Text="UKR" Value="UKR" SelectByDefault="false" />
          <Enumeration Text="UMI" Value="UMI" SelectByDefault="false" />
          <Enumeration Text="URY" Value="URY" SelectByDefault="false" />
          <Enumeration Text="USA" Value="USA" SelectByDefault="false" />
          <Enumeration Text="UZB" Value="UZB" SelectByDefault="false" />
          <Enumeration Text="VAT" Value="VAT" SelectByDefault="false" />
          <Enumeration Text="VCT" Value="VCT" SelectByDefault="false" />
          <Enumeration Text="VEN" Value="VEN" SelectByDefault="false" />
          <Enumeration Text="VGB" Value="VGB" SelectByDefault="false" />
          <Enumeration Text="VIR" Value="VIR" SelectByDefault="false" />
          <Enumeration Text="VNM" Value="VNM" SelectByDefault="false" />
          <Enumeration Text="VUT" Value="VUT" SelectByDefault="false" />
          <Enumeration Text="WLF" Value="WLF" SelectByDefault="false" />
          <Enumeration Text="WSM" Value="WSM" SelectByDefault="false" />
          <Enumeration Text="YEM" Value="YEM" SelectByDefault="false" />
          <Enumeration Text="ZAF" Value="ZAF" SelectByDefault="false" />
          <Enumeration Text="ZMB" Value="ZMB" SelectByDefault="false" />
          <Enumeration Text="ZWE" Value="ZWE" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="gender">
        <DisplayName>Gender</DisplayName>
        <DataType>string</DataType>
        <UserInputType>DropdownSingleSelect</UserInputType>
        <Restriction>
          <Enumeration Text="Homme" Value="M" SelectByDefault="false" />
          <Enumeration Text="Femme" Value="F" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="consents">
        <DisplayName></DisplayName>
        <DataType>string</DataType>
        <UserInputType>CheckboxMultiSelect</UserInputType>
        <Restriction>
          <Enumeration Text="J'accepte de créer un compte" Value="ToU" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="allpurposes">
        <DisplayName></DisplayName>
        <DataType>string</DataType>
      </ClaimType>
      <ClaimType Id="allmandatorypurposes">
        <DisplayName></DisplayName>
        <DataType>string</DataType>
      </ClaimType>
      <ClaimType Id="mandatoryConsent_1">
        <DisplayName></DisplayName>
        <DataType>string</DataType>
        <UserInputType>CheckboxMultiSelect</UserInputType>
        <Restriction>
          <Enumeration Text="J'accepte de créer un compte" Value="ToU" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="mandatoryConsent_2">
        <DisplayName></DisplayName>
        <DataType>string</DataType>
        <UserInputType>CheckboxMultiSelect</UserInputType>
        <Restriction>
          <Enumeration Text="J'accepte de créer un compte 2" Value="ToU2" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="mandatoryConsent_3">
        <DisplayName></DisplayName>
        <DataType>string</DataType>
        <UserInputType>CheckboxMultiSelect</UserInputType>
        <Restriction>
          <Enumeration Text="J'accepte de créer un compte" Value="ToU" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="mandatoryConsent_4">
        <DisplayName></DisplayName>
        <DataType>string</DataType>
        <UserInputType>CheckboxMultiSelect</UserInputType>
        <Restriction>
          <Enumeration Text="J'accepte de créer un compte 2" Value="ToU2" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
      <ClaimType Id="mandatoryConsent_5">
        <DisplayName></DisplayName>
        <DataType>string</DataType>
        <UserInputType>CheckboxMultiSelect</UserInputType>
        <Restriction>
          <Enumeration Text="J'accepte de créer un compte 2" Value="ToU2" SelectByDefault="false" />
        </Restriction>
      </ClaimType>
    </ClaimsSchema>
    <ClientDefinitions>
      <ClientDefinition Id="DefaultWeb">
        <ClientUIFilterFlags>LineMarkers, MetaRefresh</ClientUIFilterFlags>
      </ClientDefinition>
    </ClientDefinitions>
    <ContentDefinitions>
      <!-- This content definition is to render an error page that displays unhandled errors. -->
      <ContentDefinition Id="api.error">
        <LoadUri>~/tenant/default/exception.cshtml</LoadUri>
        <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
        <DataUri>urn:com:microsoft:aad:b2c:elements:globalexception:1.1.0</DataUri>
        <Metadata>
          <Item Key="DisplayName">Error page</Item>
        </Metadata>
      </ContentDefinition>
      <ContentDefinition Id="api.signuporsignin">
        <LoadUri>~/tenant/default/unified.cshtml</LoadUri>
        <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
        <DataUri>urn:com:microsoft:aad:b2c:elements:unifiedssp:1.0.0</DataUri>
        <Metadata>
          <Item Key="DisplayName">Signin and Signup</Item>
        </Metadata>
      </ContentDefinition>
      <ContentDefinition Id="api.selfasserted">
        <LoadUri>~/tenant/default/selfAsserted.cshtml</LoadUri>
        <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
        <DataUri>urn:com:microsoft:aad:b2c:elements:selfasserted:1.1.0</DataUri>
        <Metadata>
          <Item Key="DisplayName">Collect information from user page</Item>
        </Metadata>
      </ContentDefinition>
      <ContentDefinition Id="api.selfasserted.profileupdate">
        <LoadUri>~/tenant/default/updateProfile.cshtml</LoadUri>
        <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
        <DataUri>urn:com:microsoft:aad:b2c:elements:selfasserted:1.1.0</DataUri>
        <Metadata>
          <Item Key="DisplayName">Collect information from user page</Item>
        </Metadata>
      </ContentDefinition>
      <ContentDefinition Id="api.localaccountsignup">
        <LoadUri>~/tenant/default/selfAsserted.cshtml</LoadUri>
        <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
        <DataUri>urn:com:microsoft:aad:b2c:elements:selfasserted:1.1.0</DataUri>
        <Metadata>
          <Item Key="DisplayName">Local account sign up page</Item>
        </Metadata>
      </ContentDefinition>
      <ContentDefinition Id="api.localaccountpasswordreset">
        <LoadUri>~/tenant/default/selfAsserted.cshtml</LoadUri>
        <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
        <DataUri>urn:com:microsoft:aad:b2c:elements:selfasserted:1.1.0</DataUri>
        <Metadata>
          <Item Key="DisplayName">Local account change password page</Item>
        </Metadata>
      </ContentDefinition>
      <ContentDefinition Id="api.idpselections">
        <LoadUri>~/tenant/default/idpSelector.cshtml</LoadUri>
        <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
        <DataUri>urn:com:microsoft:aad:b2c:elements:idpselection:1.0.0</DataUri>
        <Metadata>
          <Item Key="DisplayName">Idp selection page</Item>
          <Item Key="language.intro">Sign in</Item>
        </Metadata>
      </ContentDefinition>
    </ContentDefinitions>
  </BuildingBlocks>
  <!--
        A list of all the claim providers that can be used in the technical policies. If a claims provider is not listed 
        in this section, then it cannot be used in a technical policy.
    -->
  <ClaimsProviders>
    <ClaimsProvider>
      <DisplayName>Local Account SignIn</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="login-NonInteractive">
          <DisplayName>Local Account SignIn</DisplayName>
          <Protocol Name="OpenIdConnect" />
          <Metadata>
            <Item Key="UserMessageIfClaimsPrincipalDoesNotExist">We can't seem to find your account</Item>
            <Item Key="UserMessageIfInvalidPassword">Your password is incorrect</Item>
            <Item Key="UserMessageIfOldPasswordUsed">Looks like you used an old password</Item>
            <Item Key="ProviderName">https://sts.windows.net/</Item>
            <Item Key="METADATA">https://login.microsoftonline.com/{tenant}/.well-known/openid-configuration</Item>
            <Item Key="authorization_endpoint">https://login.microsoftonline.com/{tenant}/oauth2/token</Item>
            <Item Key="response_types">id_token</Item>
            <Item Key="response_mode">query</Item>
            <Item Key="scope">email openid</Item>
            <!-- Policy Engine Clients -->
            <Item Key="UsePolicyInRedirectUri">false</Item>
            <Item Key="HttpBinding">POST</Item>
          </Metadata>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="signInName" PartnerClaimType="username" Required="true" />
            <InputClaim ClaimTypeReferenceId="password" Required="true" />
            <InputClaim ClaimTypeReferenceId="grant_type" DefaultValue="password" />
            <InputClaim ClaimTypeReferenceId="scope" DefaultValue="openid" />
            <InputClaim ClaimTypeReferenceId="nca" PartnerClaimType="nca" DefaultValue="1" />
          </InputClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="oid" />
            <OutputClaim ClaimTypeReferenceId="tenantId" PartnerClaimType="tid" />
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
            <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" />
            <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
            <OutputClaim ClaimTypeReferenceId="userPrincipalName" PartnerClaimType="upn" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="localAccountAuthentication" />
          </OutputClaims>
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    <ClaimsProvider>
      <DisplayName>Azure Active Directory</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="AAD-Common">
          <DisplayName>Azure Active Directory</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AzureActiveDirectoryProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <!-- Provide objectId and appId before using extension properties. -->
          <Metadata>
            <Item Key="ApplicationObjectId">{##ExtensionApplicationObjectId##}</Item>
            <Item Key="ClientId">{##ExtensionApplicationId##}</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" />
          </CryptographicKeys>
          <!-- We need this here to suppress the SelfAsserted provider from invoking SSO on validation profiles. -->
          <IncludeInSso>false</IncludeInSso>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
        </TechnicalProfile>
        <!-- The following technical profile is used to read data after user authenticates. -->
        <TechnicalProfile Id="AAD-UserReadUsingObjectId">
          <Metadata>
            <Item Key="Operation">Read</Item>
            <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">true</Item>
          </Metadata>
          <IncludeInSso>false</IncludeInSso>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="objectId" Required="true" />
          </InputClaims>
          <OutputClaims>
            <!-- Required claims -->
            <OutputClaim ClaimTypeReferenceId="objectId" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="localAccountAuthentication" />
            <!-- Optional claims -->
            <OutputClaim ClaimTypeReferenceId="signInNames.emailAddress" />
            <OutputClaim ClaimTypeReferenceId="displayName" />
            <OutputClaim ClaimTypeReferenceId="otherMails" />
            <OutputClaim ClaimTypeReferenceId="givenName" />
            <OutputClaim ClaimTypeReferenceId="surname" />
            <OutputClaim ClaimTypeReferenceId="signInName" PartnerClaimType="username" />
            <OutputClaim ClaimTypeReferenceId="publicId" PartnerClaimType="#{PublicIdFieldName}#" />
            <OutputClaim ClaimTypeReferenceId="civility" PartnerClaimType="#{CivilityFieldName}#" />
            <OutputClaim ClaimTypeReferenceId="gender" PartnerClaimType="#{GenderFieldName}#" />
            <OutputClaim ClaimTypeReferenceId="birthdate" PartnerClaimType="#{BirthdateFieldName}#" />
            <OutputClaim ClaimTypeReferenceId="zipCode" />
            <OutputClaim ClaimTypeReferenceId="street1" />
            <OutputClaim ClaimTypeReferenceId="street2" />
          </OutputClaims>
          <IncludeTechnicalProfile ReferenceId="AAD-Common" />
        </TechnicalProfile>
        <!--Retrieve groups membership of the user-->
        <TechnicalProfile Id="AAD-UserWriteUsingLogonEmail">
          <Metadata>
            <Item Key="Operation">Write</Item>
            <Item Key="RaiseErrorIfClaimsPrincipalAlreadyExists">true</Item>
          </Metadata>
          <IncludeInSso>false</IncludeInSso>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="email" PartnerClaimType="signInNames.emailAddress" Required="true" />
          </InputClaims>
          <PersistedClaims>
            <!-- Required claims -->
            <PersistedClaim ClaimTypeReferenceId="email" PartnerClaimType="signInNames.emailAddress" />
            <PersistedClaim ClaimTypeReferenceId="email" PartnerClaimType="displayName" />
            <PersistedClaim ClaimTypeReferenceId="newPassword" PartnerClaimType="password" />
            <PersistedClaim ClaimTypeReferenceId="passwordPolicies" DefaultValue="DisablePasswordExpiration" />
            <!-- Optional claims. -->
            <PersistedClaim ClaimTypeReferenceId="givenName" />
            <PersistedClaim ClaimTypeReferenceId="surname" />
            <PersistedClaim ClaimTypeReferenceId="publicId" PartnerClaimType="#{PublicIdFieldName}#" />
            <PersistedClaim ClaimTypeReferenceId="civility" PartnerClaimType="#{CivilityFieldName}#" />
            <PersistedClaim ClaimTypeReferenceId="zipCode" />
            <PersistedClaim ClaimTypeReferenceId="gender" PartnerClaimType="#{GenderFieldName}#" />
            <PersistedClaim ClaimTypeReferenceId="birthdate" PartnerClaimType="#{BirthdateFieldName}#" />
          </PersistedClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="objectId" />
            <OutputClaim ClaimTypeReferenceId="newUser" PartnerClaimType="newClaimsPrincipalCreated" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="localAccountAuthentication" />
            <OutputClaim ClaimTypeReferenceId="userPrincipalName" />
            <OutputClaim ClaimTypeReferenceId="signInNames.emailAddress" />
          </OutputClaims>
          <IncludeTechnicalProfile ReferenceId="AAD-Common" />
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" />
        </TechnicalProfile>
        <TechnicalProfile Id="AAD-UserWriteProfileUsingObjectId">
          <Metadata>
            <Item Key="Operation">Write</Item>
            <Item Key="RaiseErrorIfClaimsPrincipalAlreadyExists">false</Item>
            <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">true</Item>
          </Metadata>
          <IncludeInSso>false</IncludeInSso>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="objectId" Required="true" />
          </InputClaims>
          <PersistedClaims>
            <!-- Required claims -->
            <PersistedClaim ClaimTypeReferenceId="objectId" />

            <!-- Optional claims -->
            <PersistedClaim ClaimTypeReferenceId="givenName" />
            <PersistedClaim ClaimTypeReferenceId="surname" />
            <PersistedClaim ClaimTypeReferenceId="civility" PartnerClaimType="#{CivilityFieldName}#" />
            <PersistedClaim ClaimTypeReferenceId="zipCode" />
            <PersistedClaim ClaimTypeReferenceId="birthdate" PartnerClaimType="#{BirthdateFieldName}#" />
            <PersistedClaim ClaimTypeReferenceId="gender" PartnerClaimType="#{GenderFieldName}#" />
          </PersistedClaims>
          <IncludeTechnicalProfile ReferenceId="AAD-Common" />
        </TechnicalProfile>
        <TechnicalProfile Id="AAD-UserReadUsingEmailAddress">
          <Metadata>
            <Item Key="Operation">Read</Item>
            <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">true</Item>
            <Item Key="UserMessageIfClaimsPrincipalDoesNotExist">An account could not be found for the provided user ID.</Item>
          </Metadata>
          <IncludeInSso>false</IncludeInSso>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="email" PartnerClaimType="signInNames" Required="true" />
          </InputClaims>
          <OutputClaims>
            <!-- Required claims -->
            <OutputClaim ClaimTypeReferenceId="objectId" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="localAccountAuthentication" />

            <!-- Optional claims -->
            <OutputClaim ClaimTypeReferenceId="userPrincipalName" />
            <OutputClaim ClaimTypeReferenceId="displayName" />
            <OutputClaim ClaimTypeReferenceId="otherMails" />
            <OutputClaim ClaimTypeReferenceId="signInNames.emailAddress" />
          </OutputClaims>
          <IncludeTechnicalProfile ReferenceId="AAD-Common" />
        </TechnicalProfile>
        <TechnicalProfile Id="AAD-UserWritePasswordUsingObjectId">
          <Metadata>
            <Item Key="Operation">Write</Item>
            <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">true</Item>
          </Metadata>
          <IncludeInSso>false</IncludeInSso>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="objectId" Required="true" />
          </InputClaims>
          <PersistedClaims>
            <PersistedClaim ClaimTypeReferenceId="objectId" />
            <PersistedClaim ClaimTypeReferenceId="newPassword" PartnerClaimType="password"/>

          </PersistedClaims>
          <IncludeTechnicalProfile ReferenceId="AAD-Common" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    <ClaimsProvider>
      <DisplayName>API</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="API-Signup">
          <DisplayName>API Signup</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.RestfulProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="ServiceUrl">#{ApiConnectPartyCreateEndpoint}#</Item>
            <Item Key="AuthenticationType">Basic</Item>
            <Item Key="IgnoreServerCertificateErrors">True</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="SendClaimsIn">Body</Item>
            <Item Key="ClaimsFormat">Body</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="BasicAuthenticationUsername" StorageReferenceId="B2C_1A_ApiConnectClientId" />
            <Key Id="BasicAuthenticationPassword" StorageReferenceId="B2C_1A_ApiConnectClientSecret" />
          </CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="civility" PartnerClaimType="Civility" />
            <InputClaim ClaimTypeReferenceId="gender" PartnerClaimType="Gender" />
            <InputClaim ClaimTypeReferenceId="surname" PartnerClaimType="LastName" />
            <InputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="FirstName" />
            <InputClaim ClaimTypeReferenceId="mobile" PartnerClaimType="Mobile" />
            <InputClaim ClaimTypeReferenceId="email" PartnerClaimType="Email" />
            <InputClaim ClaimTypeReferenceId="street1" PartnerClaimType="Street1" />
            <InputClaim ClaimTypeReferenceId="street2" PartnerClaimType="Street2" />
            <InputClaim ClaimTypeReferenceId="street3" PartnerClaimType="Street3" />
            <InputClaim ClaimTypeReferenceId="street4" PartnerClaimType="Street4" />
            <InputClaim ClaimTypeReferenceId="zipCode" PartnerClaimType="ZipCode" />
            <InputClaim ClaimTypeReferenceId="city" PartnerClaimType="City" />
            <InputClaim ClaimTypeReferenceId="country" PartnerClaimType="Country" />
            <InputClaim ClaimTypeReferenceId="nationality" PartnerClaimType="Nationality" />
            <InputClaim ClaimTypeReferenceId="language" PartnerClaimType="Language" />
            <InputClaim ClaimTypeReferenceId="birthdate" PartnerClaimType="BirthDate" />
            <InputClaim ClaimTypeReferenceId="allpurposes" PartnerClaimType="AllPurposes" />
            <InputClaim ClaimTypeReferenceId="consents" PartnerClaimType="Consents" />
            <InputClaim ClaimTypeReferenceId="allmandatorypurposes" PartnerClaimType="AllMandatoryPurposes" />
            <InputClaim ClaimTypeReferenceId="mandatoryConsent_1" PartnerClaimType="MandatoryConsent_1" />
            <InputClaim ClaimTypeReferenceId="mandatoryConsent_2" PartnerClaimType="MandatoryConsent_2" />
            <InputClaim ClaimTypeReferenceId="mandatoryConsent_3" PartnerClaimType="MandatoryConsent_3" />
            <InputClaim ClaimTypeReferenceId="mandatoryConsent_4" PartnerClaimType="MandatoryConsent_4" />
            <InputClaim ClaimTypeReferenceId="mandatoryConsent_5" PartnerClaimType="MandatoryConsent_5" />
          </InputClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="publicId" PartnerClaimType="PublicId" />
          </OutputClaims>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
        </TechnicalProfile>
        <TechnicalProfile Id="API-Update">
          <DisplayName>API Update</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.RestfulProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="ServiceUrl">#{ApiConnectPartyUpdateEndpoint}#</Item>
            <Item Key="AuthenticationType">Basic</Item>
            <Item Key="IgnoreServerCertificateErrors">True</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="SendClaimsIn">Body</Item>
            <Item Key="ClaimsFormat">Body</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="BasicAuthenticationUsername" StorageReferenceId="B2C_1A_ApiConnectClientId" />
            <Key Id="BasicAuthenticationPassword" StorageReferenceId="B2C_1A_ApiConnectClientSecret" />
          </CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="email" PartnerClaimType="Email" />
            <InputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="FirstName" />
            <InputClaim ClaimTypeReferenceId="surname" PartnerClaimType="LastName" />
            <InputClaim ClaimTypeReferenceId="consents" PartnerClaimType="Consents" />
            <InputClaim ClaimTypeReferenceId="publicId" PartnerClaimType="PublicId" />
            <InputClaim ClaimTypeReferenceId="allpurposes" PartnerClaimType="AllPurposes" />
            <InputClaim ClaimTypeReferenceId="civility" PartnerClaimType="Civility" />
            <InputClaim ClaimTypeReferenceId="zipCode" PartnerClaimType="ZipCode" />
            <InputClaim ClaimTypeReferenceId="gender" PartnerClaimType="Gender" />
            <InputClaim ClaimTypeReferenceId="birthdate" PartnerClaimType="BirthDate" />
          </InputClaims>
          <OutputClaims>
          </OutputClaims>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
        </TechnicalProfile>
        <TechnicalProfile Id="API-GetUserConsents">
          <DisplayName>API GetUserConsents</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.RestfulProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="ServiceUrl">#{ApiConnectConsentGetEndpoint}#</Item>
            <Item Key="AuthenticationType">Basic</Item>
            <Item Key="IgnoreServerCertificateErrors">True</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="SendClaimsIn">Body</Item>
            <Item Key="ClaimsFormat">Body</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="BasicAuthenticationUsername" StorageReferenceId="B2C_1A_ApiConnectClientId" />
            <Key Id="BasicAuthenticationPassword" StorageReferenceId="B2C_1A_ApiConnectClientSecret" />
          </CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="publicId" PartnerClaimType="PublicId" />
          </InputClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="consents" PartnerClaimType="Consents" />
          </OutputClaims>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
        </TechnicalProfile>
        <TechnicalProfile Id="API-SetActivity">
          <DisplayName>API SetActivity</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.RestfulProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="ServiceUrl">#{ApiConnectAuthPostEndpoint}#</Item>
            <Item Key="AuthenticationType">Basic</Item>
            <Item Key="IgnoreServerCertificateErrors">True</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="SendClaimsIn">Body</Item>
            <Item Key="ClaimsFormat">Body</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="BasicAuthenticationUsername" StorageReferenceId="B2C_1A_ApiConnectClientId" />
            <Key Id="BasicAuthenticationPassword" StorageReferenceId="B2C_1A_ApiConnectClientSecret" />
          </CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="publicId" PartnerClaimType="PublicId" />
          </InputClaims>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    <ClaimsProvider>
      <DisplayName>Local Account</DisplayName>
      <TechnicalProfiles>
        <!-- This technical profile uses a validation technical profile to authenticate the user. -->
        <TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email">
          <DisplayName>Local Account Signin</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="SignUpTarget">SignUpWithLogonEmailExchange</Item>
            <Item Key="setting.operatingMode">Email</Item>
            <Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
          </Metadata>
          <IncludeInSso>false</IncludeInSso>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="signInName" />
          </InputClaims>
          <OutputClaims>
            <!-- Required claims -->
            <OutputClaim ClaimTypeReferenceId="executed-SelfAsserted-Input" DefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="signInName" Required="true" />
            <OutputClaim ClaimTypeReferenceId="password" Required="true" />
            <OutputClaim ClaimTypeReferenceId="objectId" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" />
          </OutputClaims>
          <ValidationTechnicalProfiles>
            <ValidationTechnicalProfile ReferenceId="login-NonInteractive" />
          </ValidationTechnicalProfiles>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" />
        </TechnicalProfile>
        <TechnicalProfile Id="LocalAccountSignUpWithLogonEmail">
          <DisplayName>Email signup</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="IpAddressClaimReferenceId">IpAddress</Item>
            <Item Key="ContentDefinitionReferenceId">api.localaccountsignup</Item>
            <Item Key="language.button_continue">Create</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" />
          </CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="email" />
          </InputClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="objectId" />
            <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="Verified.Email" Required="true" />
            <OutputClaim ClaimTypeReferenceId="newPassword" Required="true" />
            <OutputClaim ClaimTypeReferenceId="reenterPassword" Required="true" />
            <OutputClaim ClaimTypeReferenceId="givenName" Required="true" />
            <OutputClaim ClaimTypeReferenceId="surname" Required="true" />
            <OutputClaim ClaimTypeReferenceId="executed-SelfAsserted-Input" DefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" />
            <OutputClaim ClaimTypeReferenceId="newUser" />
            <!-- Optional claims, to be collected from the user -->
            <OutputClaim ClaimTypeReferenceId="publicId" />
            <OutputClaim ClaimTypeReferenceId="mandatoryConsent_1" Required="true" />
            <OutputClaim ClaimTypeReferenceId="mandatoryConsent_2" Required="true" />
            <OutputClaim ClaimTypeReferenceId="civility" />
            <OutputClaim ClaimTypeReferenceId="zipCode" />
            <OutputClaim ClaimTypeReferenceId="gender" />
            <OutputClaim ClaimTypeReferenceId="birthdate" />
          </OutputClaims>
          <ValidationTechnicalProfiles>
            <ValidationTechnicalProfile ReferenceId="API-Signup" />
            <ValidationTechnicalProfile ReferenceId="AAD-UserWriteUsingLogonEmail" />
          </ValidationTechnicalProfiles>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" />
        </TechnicalProfile>
        <TechnicalProfile Id="LocalAccountSignUpWithLogonEmail-Unverified">
          <DisplayName>Email signup</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="EnforceEmailVerification">False</Item>
            <Item Key="IpAddressClaimReferenceId">IpAddress</Item>
            <Item Key="ContentDefinitionReferenceId">api.localaccountsignup</Item>
            <Item Key="language.button_continue">Create</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" />
          </CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="email" />
          </InputClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="objectId" />
            <OutputClaim ClaimTypeReferenceId="executed-SelfAsserted-Input" DefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" />
            <OutputClaim ClaimTypeReferenceId="newUser" />

            <!-- Formulaire -->
            <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="Verified.Email" Required="true" />
            <OutputClaim ClaimTypeReferenceId="newPassword" Required="true" />
            <OutputClaim ClaimTypeReferenceId="reenterPassword" Required="true" />
            <OutputClaim ClaimTypeReferenceId="givenName" Required="true" />
            <OutputClaim ClaimTypeReferenceId="surname" Required="true" />
          </OutputClaims>
          <ValidationTechnicalProfiles>
            <ValidationTechnicalProfile ReferenceId="API-Signup" />
            <ValidationTechnicalProfile ReferenceId="AAD-UserWriteUsingLogonEmail" />
          </ValidationTechnicalProfiles>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" />
        </TechnicalProfile>
        <TechnicalProfile Id="SelfAsserted-ProfileUpdate">
          <DisplayName>User ID signup</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="ContentDefinitionReferenceId">api.selfasserted.profileupdate</Item>
          </Metadata>
          <IncludeInSso>false</IncludeInSso>
          <InputClaims>

            <InputClaim ClaimTypeReferenceId="userPrincipalName" />

            <!-- Optional claims. These claims are collected from the user and can be modified. Any claim added here should be updated in the
                 ValidationTechnicalProfile referenced below so it can be written to directory after being updateed by the user, i.e. AAD-UserWriteProfileUsingObjectId. -->
            <InputClaim ClaimTypeReferenceId="givenName" />
            <InputClaim ClaimTypeReferenceId="surname" />
            <InputClaim ClaimTypeReferenceId="consents" />
            <InputClaim ClaimTypeReferenceId="civility" />
            <InputClaim ClaimTypeReferenceId="zipCode" />
            <InputClaim ClaimTypeReferenceId="gender" />
            <InputClaim ClaimTypeReferenceId="birthdate" />
          </InputClaims>
          <OutputClaims>
            <!-- Required claims -->
            <OutputClaim ClaimTypeReferenceId="executed-SelfAsserted-Input" DefaultValue="true" />

            <!-- Optional claims. These claims are collected from the user and can be modified. Any claim added here should be updated in the
                 ValidationTechnicalProfile referenced below so it can be written to directory after being updateed by the user, i.e. AAD-UserWriteProfileUsingObjectId. -->
            <OutputClaim ClaimTypeReferenceId="givenName" />
            <OutputClaim ClaimTypeReferenceId="surname" />
            <OutputClaim ClaimTypeReferenceId="consents" />
            <OutputClaim ClaimTypeReferenceId="civility" />
            <OutputClaim ClaimTypeReferenceId="zipCode" />
            <OutputClaim ClaimTypeReferenceId="gender" />
            <OutputClaim ClaimTypeReferenceId="birthdate" />
          </OutputClaims>
          <ValidationTechnicalProfiles>
            <ValidationTechnicalProfile ReferenceId="API-Update" />
            <ValidationTechnicalProfile ReferenceId="AAD-UserWriteProfileUsingObjectId" />
          </ValidationTechnicalProfiles>
        </TechnicalProfile>
        <TechnicalProfile Id="LocalAccountDiscoveryUsingEmailAddress">
          <DisplayName>Reset password using email address</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="IpAddressClaimReferenceId">IpAddress</Item>
            <Item Key="ContentDefinitionReferenceId">api.localaccountpasswordreset</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" />
          </CryptographicKeys>
          <IncludeInSso>false</IncludeInSso>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="Verified.Email" Required="true" />
            <OutputClaim ClaimTypeReferenceId="objectId" />
            <OutputClaim ClaimTypeReferenceId="userPrincipalName" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" />

          </OutputClaims>
          <ValidationTechnicalProfiles>
            <ValidationTechnicalProfile ReferenceId="AAD-UserReadUsingEmailAddress" />
          </ValidationTechnicalProfiles>
        </TechnicalProfile>
        <TechnicalProfile Id="LocalAccountWritePasswordUsingObjectId">
          <DisplayName>Change password (username)</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
            <Item Key="ContentDefinitionReferenceId">api.localaccountpasswordreset</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" />
          </CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="objectId" />

          </InputClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="newPassword" Required="true" />
            <OutputClaim ClaimTypeReferenceId="reenterPassword" Required="true" />
          </OutputClaims>
          <ValidationTechnicalProfiles>
            <ValidationTechnicalProfile ReferenceId="AAD-UserWritePasswordUsingObjectId" />
          </ValidationTechnicalProfiles>
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    <ClaimsProvider>
      <DisplayName>Session Management</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="SM-Noop">
          <DisplayName>Noop Session Management Provider</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.NoopSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
        </TechnicalProfile>
        <TechnicalProfile Id="SM-AAD">
          <DisplayName>Session Mananagement Provider</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.DefaultSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <PersistedClaims>
            <PersistedClaim ClaimTypeReferenceId="objectId" />
            <PersistedClaim ClaimTypeReferenceId="signInName" />
            <PersistedClaim ClaimTypeReferenceId="authenticationSource" />
            <PersistedClaim ClaimTypeReferenceId="identityProvider" />
            <PersistedClaim ClaimTypeReferenceId="newUser" />
            <PersistedClaim ClaimTypeReferenceId="executed-SelfAsserted-Input" />
          </PersistedClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="objectIdFromSession" DefaultValue="true" />
          </OutputClaims>
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    <ClaimsProvider>
      <DisplayName>Trustframework Policy Engine TechnicalProfiles</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="TpEngine_c3bd4fe2-1775-4013-b91d-35f16d377d13">
          <DisplayName>Trustframework Policy Engine Default Technical Profile</DisplayName>
          <Protocol Name="None" />
          <Metadata>
            <Item Key="url">{service:te}</Item>
          </Metadata>
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    <ClaimsProvider>
      <DisplayName>Token Issuer</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="JwtIssuer">
          <DisplayName>JWT Issuer</DisplayName>
          <Protocol Name="None" />
          <OutputTokenFormat>JWT</OutputTokenFormat>
          <Metadata>
            <Item Key="token_lifetime_secs">72000</Item>
            <Item Key="client_id">{service:te}</Item>
            <Item Key="issuer_refresh_token_user_identity_claim_type">objectId</Item>
            <Item Key="SendTokenResponseBodyWithJsonNumbers">true</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" />
            <Key Id="issuer_refresh_token_key" StorageReferenceId="B2C_1A_TokenEncryptionKeyContainer" />
          </CryptographicKeys>
          <InputClaims />
          <OutputClaims />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
  </ClaimsProviders>
  <UserJourneys>
    <UserJourney Id="SuSi">
      <OrchestrationSteps>
        <OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
          <ClaimsProviderSelections>
            <ClaimsProviderSelection ValidationClaimsExchangeId="LocalAccountSigninEmailExchange" />
          </ClaimsProviderSelections>
          <ClaimsExchanges>
            <ClaimsExchange Id="LocalAccountSigninEmailExchange" TechnicalProfileReferenceId="SelfAsserted-LocalAccountSignin-Email" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="2" Type="ClaimsExchange">
          <Preconditions>
            <Precondition Type="ClaimsExist" ExecuteActionsIf="true">
              <Value>objectId</Value>
              <Action>SkipThisOrchestrationStep</Action>
            </Precondition>
          </Preconditions>
          <ClaimsExchanges>
            <ClaimsExchange Id="SignUpWithLogonEmailExchange" TechnicalProfileReferenceId="LocalAccountSignUpWithLogonEmail-Unverified" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <!-- This step reads any user attributes that we may not have received when in the token. -->
        <OrchestrationStep Order="3" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="AADUserReadWithObjectId" TechnicalProfileReferenceId="AAD-UserReadUsingObjectId" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="4" Type="ClaimsExchange">
          <Preconditions>
            <Precondition Type="ClaimsExist" ExecuteActionsIf="true">
              <Value>newUser</Value>
              <Action>SkipThisOrchestrationStep</Action>
            </Precondition>
          </Preconditions>
          <ClaimsExchanges>
            <ClaimsExchange Id="ApiSetActivity" TechnicalProfileReferenceId="API-SetActivity" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="5" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="ApiGetUserConsents" TechnicalProfileReferenceId="API-GetUserConsents" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="6" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
      </OrchestrationSteps>
      <ClientDefinition ReferenceId="DefaultWeb" />
    </UserJourney>
    <UserJourney Id="ProfileUpdate">
      <OrchestrationSteps>
        <OrchestrationStep Order="1" Type="ClaimsProviderSelection" ContentDefinitionReferenceId="api.idpselections">
          <ClaimsProviderSelections>
            <ClaimsProviderSelection TargetClaimsExchangeId="LocalAccountSigninEmailExchange" />
          </ClaimsProviderSelections>
        </OrchestrationStep>
        <OrchestrationStep Order="2" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="LocalAccountSigninEmailExchange" TechnicalProfileReferenceId="SelfAsserted-LocalAccountSignin-Email" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="3" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="AADUserReadWithObjectId" TechnicalProfileReferenceId="AAD-UserReadUsingObjectId" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="4" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="ApiGetUserConsents" TechnicalProfileReferenceId="API-GetUserConsents" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="5" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="B2CUserProfileUpdateExchange" TechnicalProfileReferenceId="SelfAsserted-ProfileUpdate" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="6" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
      </OrchestrationSteps>
      <ClientDefinition ReferenceId="DefaultWeb" />
    </UserJourney>
    <UserJourney Id="PasswordReset">
      <OrchestrationSteps>
        <OrchestrationStep Order="1" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="PasswordResetUsingEmailAddressExchange" TechnicalProfileReferenceId="LocalAccountDiscoveryUsingEmailAddress" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="2" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="NewCredentials" TechnicalProfileReferenceId="LocalAccountWritePasswordUsingObjectId" />
          </ClaimsExchanges>
        </OrchestrationStep>
        <OrchestrationStep Order="3" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
      </OrchestrationSteps>
      <ClientDefinition ReferenceId="DefaultWeb" />
    </UserJourney>
  </UserJourneys>
</TrustFrameworkPolicy>

For information : Each {##Key##} or #{Key}# tokens are correctly replace during by their correct values.

I have found nothing about this problem.

Thank you for your help.

openfieldlive avatar Mar 20 '19 10:03 openfieldlive

I am aware that this is an old issue however it has arisen for other clients also. The actual issue above is that the "IgnoreServerCertificateErrors" metadata item is set to true on a restful provider and the policy does not have a deploymentmode of "development". As this is also not a currently documented metadata item (https://docs.microsoft.com/en-gb/azure/active-directory-b2c/restful-technical-profile#metadata) there was no immediate resolution. We will look into this further to 1. See if this metadata item is to be supported/documented. And 2. Resolve the error being displayed.

WhippsP avatar Nov 01 '21 02:11 WhippsP