Select to view content in your preferred language

ArcGIS named user license

134
1
a week ago
Labels (3)
abbasihuzaifa
New Contributor

I have developed an application and want to release it to one of my customers. I only need 2 or 3 instances of the application. From what I've read, I need a runtime license, which typically comes in packs. One option is using Named User licensing because standard packs are a bit expensive and I don't need that many licenses. The Named User license with standard privileges, such as VTPK load, seems like a suitable option. I understand that the Named User license requires the application to be online at least every 30 days to renew the license. While I can arrange for the application to go online for renewal, it will mostly be used offline. My question is: How does the engine ensure that the license reaches its expiry limit without an internet connection?

0 Kudos
1 Reply
Nicholas-Furness
Esri Regular Contributor

Hello.

Before I answer your question, I want to make sure we're talking about the right thing…

Firstly, named user vs license strings: As you mention, license strings for paid license levels (Basic, Standard, and Advanced) are purchased in packs. But the Lite level license string is free and can be used as much as you like. If the capabilities of your app are all included in the Lite license, that one Lite license string is all you'll need. See here for which capabilities are available at each level. And see here to get your Lite license string.

Next, you say "The Named User license with standard privileges, such as VTPK load, seems like a suitable option.". I want to make sure we're talking the same thing here. "Standard" is a license level that, in brief, allows you to open non-Esri-proprietary local data files, like GeoPackages, Shapefiles, ENC, local rasters, etc. (see this link again for full details of what you get at Standard). However, a VTPK is an Esri-proprietary file (like MMPKs, TPKs, TPKXs, etc.) and so can be opened locally at the Lite level. If that's what you need, Standard might be overkill and Lite might suffice.

Now, to the question of renewing licenses.

License strings can be used in perpetuity. There is no need to "refresh" the license (they are designed to encompass scenarios where a network may never be available). This is true for the free Lite license string, as well as the string(s) you get when you purchase any Basic, Standard, or Advanced deployment pack(s).

Named User licenses can be taken offline for 30 days, as you noted. The pattern is this (as described here) :

  1. While online, your user signs in.
  2. Your code then requests the license from the portal they signed in to.
  3. You apply the license in your app, and optionally serialize it to local storage for later use.
  4. Whenever your app is subsequently started (probably while offline), you can de-serialize that license and apply it. No network is required. Of course, if you have a network, your user could sign in again (returning to steps 1 and 2).

How does the SDK ensure the license reaches its expiry? The encoded license data downloaded in step 2 includes the expiry date, and the SDK compares that to the current date. Whenever you repeat steps 1 and 2, that new license data will effectively have a new 30 day countdown start date encoded in it.

I hope that helps.

0 Kudos