What is the allowed naming restriction for HAT ID?


#1

Hi HatDex,

Can I check with you on any restrictions intended for username so that it is url-friendly? alvin.nogginhat.me and not just @!v-N.nogginhat.me. Also is there any length restriction to be imposed? Looking at the database schema, there doesn’t seem to have a soft limit on that.

Thanks.


#2

Hi @nivlaoh,

We follow the DNS standards:

Domain names may be formed from the set of alphanumeric ASCII characters (a-z, A-Z, 0-9), but characters are case-insensitive. In addition the hyphen is permitted if it is surrounded by characters, digits or hyphens, although it is not to start or end a label. Labels are always separated by the full stop (period) character in the textual name representation.

It is checked and enforced by the provisioning system, as the HAT core does not affect routing or addressing in any way.

With our current provisioning system, based on Kubernetes, subdomain length is limited to 22 characters:

Service names are restricted to DNS 952 labels (24 characters)
https://github.com/kubernetes/kubernetes/issues/3752

Of those 24 characters, 2 are used to indicate a HAT service, hence we are left with 22. In theory that would be 63 characters allowed by the DNS standard for subdomains, once that is supported:
https://github.com/kubernetes/kubernetes/pull/25041

Best,
Andrius


#3

Hi Andrius,

Thanks for the quick reply. That is definitely helpful for me to align the username standards to HatDex’s. For now, I’ll restrict the username to 24 characters until a time the service name is officially bumped up to 63 characters.

Thanks!