Select to view content in your preferred language

Installing ArcGIS Pro in a Lab Environment and Updating Licensing Settings

1277
0
10-09-2024 11:10 AM
BrianBaldwin
Esri Regular Contributor
3 0 1,277

The following documentation pertains to ArcGIS Pro 3.3. Prior (or newer) versions may have options and settings that differ from the screenshots and workflow outlined.

With single use and concurrent use licenses removed from education agreements, the method for licensing your university users is through ‘named users’. We have recommended setting up SAML or single-sign-on (SSO) for use with ArcGIS Online, to make the licensing process for users as seamless as possible.

To make it even EASIER for users in lab machines, there is the ability to install ArcGIS Pro silently with a number of default settings that make sign-ins a breeze.

If you already have ArcGIS Pro installed on lab machines and want to update the settings across many installations, this can be accomplished by updating Windows Registry settings. That workflow is outlined in the 2nd part of this blog.

Getting things ready in ArcGIS Online

In ArcGIS Online, you have the ability to configure the login page for your users.

We recommend only enabling the SAML login as shown here:

BrianBaldwin_0-1728496860042.png

 

With this setting enabled, users can go to your ArcGIS Online URL (https://baldwinuniversity.maps.arcgis.com) and it will automatically attempt to sign them in via your universities SAML credentials. They won’t need to enter a URL or get confused by a ‘named user’ sign-in box.

Users with built-in ‘named user’ credentials (non-SAML/SSO) can still log into your organization by navigating to the global ArcGIS Online login url at: https://www.arcgis.com and logging in.

Also – as we will see in a minute, this will also streamline user access to ArcGIS Pro.

Lastly – you can also set an ‘access notice’ that will be presented to users when they log into ArcGIS Online or ArcGIS Pro (example included in the short GIF further down).

BrianBaldwin_1-1728496860045.png

 

Here is a basic demonstration of what the experience will look like to users (as a note, I didn’t need to enter my SAML credentials because my most recent login was still cached):

Pro_Login.gif

 

To enable this experience for users by default when they launch ArcGIS Pro, you can pass these variables through with an install.

ArcGIS Pro Silent Install

ArcGIS Pro has the option to be installed ‘silently’ with a number of settings preconfigured by a power user.

The full documentation can be found here: https://pro.arcgis.com/en/pro-app/latest/get-started/arcgis-pro-installation-administration.htm

Before running this script, ensure that you have the ArcGIS Pro installation files in a location where they can be accessed. Also, you will need to ensure that each machine has the Microsoft .Net 8.0 Runtime installed, or the installation will not proceed.

From a windows command prompt, the following script can be run:

 

 

 

msiexec.exe /i "C:\ArcGISPro.msi" /qb ALLUSERS=1 ACCEPTEULA=YES SOFTWARE_CLASS=Professional AUTHORIZATION_TYPE=NAMED_USER LICENSE_URL="https://baldwinuniversity.maps.arcgis.com" LOCK_AUTH_SETTINGS=TRUE CHECKFORUPDATESATSTARTUP=0

 

 

 

So – what is the script doing? Here are the details for all of the options that we are setting with the installation.

  • "C:\ArcGISPro.msi"
    • This is the location of the ArcGIS Pro installer and all related files (after unpacking the ArcGIS Pro EXE)
  • ALLUSERS=1
    • setting the install as a 'per machine' installation vs a per-user install
  • ACCEPTEULA=YES
    • simply accepting the Esri End User Agreement
  • SOFTWARE_CLASS=Professional
    • Sets the license level for ArcGIS Pro
  • CHECKFORUPDATESATSTARTUP=0
    • disables automatic updates (set to 1 to enable them)
  • AUTHORIZATION_TYPE=NAMED_USER
    • will use a ‘named user’ for licensing vs. a single use or concurrent use license
  • LICENSE_URL=”https://baldwinuniversity.maps.arcgis.com
    • will populate the the licensing URL
  • LOCK_AUTH_SETTINGS=TRUE
    • licensing settings will apply to all Pro users on a machine

After some non-exhaustive testing, I found that the silent installation process took only about 5 minutes. After it completes, you are ready to go!

Updating ArcGIS Pro licensing settings

When you install ArcGIS Pro, Windows Registry settings get applied at the local user or local machine level. In order to update the licensing settings, you can update ArcGIS Pro via the UI, or via the Windows Registry.

If you want to make changes via the ArcGIS Pro UI, you can navigate to Settings, and then Licensing, Configure your licensing options, change the License Type to ‘Named User License’, and then enter in the portal URL ex. ‘https://baldwinuniversity.maps.arcgis.com/’

BrianBaldwin_0-1728496957894.png

 

If you need to make changes across dozens, or hundreds of machines, you can also make these changes via registry updates.

Please know that updating registry settings CAN have a detrimental impact on your machine(s), please do not edit the Windows Registry unless you understand what updates you are making.

Re-install ArcGIS Pro

A reinstall of ArcGIS Pro will not overwrite the registry settings in USER profiles. It will apply changes at the LOCAL_MACHINE level and any new users will have the settings applied when they launch ArcGIS Pro. To ensure that users with existing profiles on the machine have the license settings applied, please read the ‘USERS updates’ section below to understand what keys to either delete or update.

Update ArcGIS Pro license settings without reinstalling – via Windows Registry Editor

For those that have already installed ArcGIS Pro in a lab and are using single use or concurrent use licensing, you have asked how you can update multiple machines to named user licensing.

The following process will walk through how this can be accomplished via the Windows Registry Editor.

When ArcGIS Pro is installed, it created registry keys at the LOCAL_MACHINE level and USER keys are generated when a user logs in and opens ArcGIS Pro.

To ensure that NEW and OLD users will have the licensing changes applied, you will need to run registry key updates for the LOCAL_MACHINE and any USER profiles (or delete specific keys in the USER profiles).

LOCAL_MACHINE updates

In the Windows Registry Editor, under HKEY_LOCAL_MACHINE, Software, Esri, ArcGIS Pro, you should find 2 keys (Licensing and Settings) that look similar to the ones below. These screenshots are from installation that used a single use license with the silent install.

BrianBaldwin_0-1728497027235.png

 

BrianBaldwin_1-1728497027240.png

 

Under Licensing, the following changes need to be made:

  • AUTHORIZATION_TYPE from SINGLE_USE to NAMED_USER
  • SEAT_PREFERENCE - deleted value (Fixed)
  • SOFTWARE_TYPE - deleted value (CLASSIC)

Under Settings, the following changes need to be made:

After you make the changes, it should look like the following screenshots:

BrianBaldwin_2-1728497027250.png

 

BrianBaldwin_3-1728497027258.png

 

USERS updates

So – you have now created the settings for any ‘new’ user that logs onto the machine via the LOCAL_MACHINE registry settings, but we also need to update the settings for any existing user profiles, or delete existing keys.

For all existing user profiles, you can either delete the following keys (the entire 'folder' listed in bold):

  • HKEY/Software/Esri/ArcGIS Online for Pro
  • HKEY/Software/Esri/ArcGISPro

Or, you can update values in those keys.

PowerShell Script - delete all USERS

The following is a PowerShell script that loops through all users, loads their HIVE, and then deletes the 2 ArcGIS registry keys.

Modified by: Joe Youn & Mike Stoppay, Computer Operations for Research and Education, College of Science and Mathematics, Montclair State University Based on: https://www.pdq.com/blog/modifying-the-registry-users-powershell/

 

 

# Get Username, SID, and location of ntuser.dat for all users 
$ProfileList = gp 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\*' | Where-Object {$_.PSChildName -match $PatternSID} |
     Select  @{name="SID";expression={$_.PSChildName}},
             @{name="UserHive";expression={"$($_.ProfileImagePath)\ntuser.dat"}},
             @{name="Username";expression={$_.ProfileImagePath -replace 
 '^(.*[\\\/])', ''}}

 # Get all user SIDs found in HKEY_USERS (ntuder.dat files that are loaded) 
 $LoadedHives = gci Registry::HKEY_USERS | ? {$_.PSChildname 
 -match $PatternSID} | Select @{name="SID";expression={$_.PSChildName}}

 # Get all users that are not currently logged 
 $UnloadedHives = Compare-Object $ProfileList.SID $LoadedHives.SID | Select 
 @{name="SID";expression={$_.InputObject}}, UserHive, Username

 # Loop through each profile on the machine 
 Foreach ($item in $ProfileList) {
     # Load User ntuser.dat if it's not already loaded
     IF ($item.SID -in $UnloadedHives.SID) {
         reg load HKU\$($Item.SID) $($Item.UserHive) | Out-Null
     }

     #####################################################################
     # List users and find registry keys
     # uncomment Remove-Item lines to delete keys
     "{0}" -f $($item.Username) | Write-Output
     Get-Item -path
 registry::HKEY_USERS\$($Item.SID)\Software\ESRI\ArcGISPro -ErrorAction Ignore | Select-Object -ExpandProperty Name
     #Remove-Item -path
 registry::HKEY_USERS\$($Item.SID)\Software\ESRI\ArcGISPro -Recurse -ErrorAction Ignore
     Get-Item -path
 "registry::HKEY_USERS\$($Item.SID)\Software\ESRI\ArcGIS Online for Pro" -ErrorAction Ignore | Select-Object -ExpandProperty Name
     #Remove-Item -path
 "registry::HKEY_USERS\$($Item.SID)\Software\ESRI\ArcGIS Online for Pro" -Recurse -ErrorAction Ignore

     
 #####################################################################

     # Unload ntuser.dat
     IF ($item.SID -in $UnloadedHives.SID) {
         ### Garbage collection and closing of ntuser.dat ###
         [gc]::Collect()
         reg unload HKU\$($Item.SID) | Out-Null
     }
 }

 

 

Manual Process To Update USERS

The following description explains how one could do this manually, but this process would need to be scripted in order to update the large number of user profiles on each machine.

The following screenshots show the CURRENT_USER keys for ‘Portals’, ‘SignIn’, and ‘Licensing’ after the user opened ArcGIS Pro in a single-use license deployment.

BrianBaldwin_4-1728497081571.png

 

BrianBaldwin_5-1728497081577.png

 

BrianBaldwin_6-1728497081583.png

 

Under Portals, the following changes need to be made:

Under SignIn, the following changes need to be made:

Under Licensing, the following changes need to be made:

  • Update ‘SOFTWARE_TYPE’ to ArcGIS Pro
Contributors
About the Author
Brian works as a Lead Engineer at Esri to support customers in Education. Brian has worked as a lecturer in GIS, supported non-profits through his community planning work, and honestly just loves working with users to help solve their geospatial quandaries!