De auteur probeerde een Google Workspace-account aan te maken voor zijn bedrijf, maar stuitte op een foutmelding die beweerde dat het gekozen domein een e-mailprovider was. Ondanks contact met Google Support, waarbij de suggestie werd gedaan om simpelweg een ander domein te gebruiken, bleef het probleem onopgelost.
Door de broncode van de aanmeldpagina te analyseren, ontdekte de auteur dat de fout wordt veroorzaakt door een lokale JavaScript-validatiefunctie. In deze functie wordt een regex-lijst (DHa) gebruikt die domeinen die beginnen met bepaalde termen, zoals web. en me., automatisch markeert als e-mailproviders. De auteur kon het registratieproces succesvol afronden door deze frontend-validatie uit te schakelen, wat bewijst dat de restrictie niet op de server-side wordt gehandhaafd.
Google Workspace denkt dat mijn domein een e-mailprovider is
Ik was een Google Workspace-account aan het maken voor mijn bedrijf. Zoals iedereen weet, is dit normaal gesproken een vrij eenvoudig aanmeldingsproces, totdat ik stuitte op een vreemde en verwarrende foutmelding bij het invoeren van mijn domeinnaam:
“Enter a valid domain name instead of an email provider” (Voer een geldige domeinnaam in in plaats van een e-mailprovider)
Ik vroeg me af wat dit betekende. Ik dacht dat mijn domein wellicht in het verleden als e-mailprovider was gebruikt, maar na het controleren van de geschiedenis van het domein bleek dat niet het geval te zijn.
Ik zocht naar de foutmelding, maar vond geen officiële documentatie van Google. Ik ontdekte echter dat ik niet de enige ben die dit probleem ervaart; er zijn verschillende community-threads waarin mensen om hulp vragen. Geloof het of niet, een van die threads was geplaatst door het Oekraïense Ministerie van Economie; zij kregen dezelfde foutmelding voor hun domein. En natuurlijk gaven de zogenaamde "experts" van de community, zoals gewoonlijk, de meest nutteloze reacties.
De interactie met support
Zonder oplossing was ik genoodzaakt contact op te nemen met de support van Google Workspace. Nadat ik door meerdere agenten was gevraagd: "Heeft u geprobeerd dit in een andere browser te doen?" — terwijl ik al had uitgelegd dat ik dat gedaan had — werd ik doorverwezen naar een supportspecialist van een hoger niveau, Karen. Zij vroeg me opnieuw om de aanmelding via een ander apparaat te proberen, waarop ik haar wederom vertelde dat ik dat al had gedaan.
Vervolgens vroeg ze me om een video-opname te maken, zodat hun productengineers dit konden beoordelen. Dat heb ik gedaan, en een paar uur later ontving ik een e-mail:
"Our engineers have reviewed the video and they've confirmed that the behavior is expected. The domain you are using is flagged as an email provider. We suggest you use another domain for your company." (Onze engineers hebben de video bekeken en bevestigd dat dit gedrag verwacht is. Het domein dat u gebruikt is gemarkeerd als een e-mailprovider. We adviseren u een ander domein voor uw bedrijf te gebruiken.)
Om dit in context te plaatsen: dit is een premiumdomein met een zeer hoge vernieuwingsprijs en uiteraard is er geen sprake van misbruik. Bovendien is de .one TLD een legitieme TLD die door legitieme bedrijven wordt gebruikt. Het lijkt erop dat zelfs hun productengineers het opgegeven hebben en een luie reactie gaven.
De technische analyse
Na een boze reactie terug te hebben gestuurd, was ik bijna klaar om Google volledig te verlaten en over te stappen naar Microsoft. Maar ik besloot het nog één laatste keer te proberen en de zaak zelf in handen te nemen.
Ik heb de broncode van hun aanmeldingspagina onderzocht en ontdekte dat de fout wordt geactiveerd door een lokale input-validatiefunctie. Er wordt gecontroleerd of het domein voorkomt in een regex-lijst van wat schijnbaar e-mailproviders zijn. Bij nader inzien staan er echter veel vreemde vermeldingen op die lijst, waaronder web\\..*, de boosdoener die mij verhinderde mijn domein aan te melden.
Blijkbaar hebben de engineers bij Google besloten dat alle web.[tld]-domeinen e-mailproviders zijn.
Daarnaast zorgt de vermelding me\\.. ervoor dat het domein van het Oekraïense Ministerie van Economie, me.gov.ua, niet wordt geaccepteerd, simpelweg omdat het subdomein me is. Een andere vreemde vermelding is alice\\.. — ik weet niet wat daarachter zit.
Voor de geïnteresseerden volgt hier het volledige codefragment van de Google Workspace-aanmeldingspagina:
var DHa, EHa;
DHa = "gmail\\..* hotmail\\..* yahoo\\..* myyahoo\\.com outlook\\..* aol\\..* inbox\\..* fastmail\\..* mail\\..{1,3}(\\..{2})?$ rediffmail\\..* lycos\\..* att\\..* comcast\\.net verizon\\..* talktalk\\..* laposte\\..* gmx\\..* web\\..* bk\\..* yandex\\..* rambler\\..* pochta\\..* live\\..* cox\\..* bellsouth\\..* me\\..* earthlink\\..* sbcglobal\\..* qq\\..* ceznam\\..* 163\\..* 126\\..* free\\..* sfr\\..* wanadoo\\..* aruba\\..* terra\\..* btinternet\\..* alice\\..* libero\\..* telenet\\..* corp\\.terra\\.com\\.co mac\\.com webstarts\\.com googlemail\\.com msn\\.com teleworm\\.com isbn10\\.net isbn13\\.net ymail\\.com mailinator\\.com pookmail\\.com trashymail\\.com dodgit\\.com spambob\\.com dotarai\\.co\\.th appspeople\\.dk indiamart\\.com pkt\\.pl naver\\.com seznam\\.cz hemsida24\\.se shaw\\.ca ncs\\.com\\.sg rogers\\.com rocketmail\\.com ukr\\.net charter\\.net uol\\.com\\.br ya\\.ru bigpond\\.com idwebhost\\.com vkios\\.com registar\\.com cpasitesolutions\\.com optonline\\.net iridiuminteractive\\.com data-typing-earns\\.info smartpillars\\.com nate\\.com list\\.ru o2\\.pl riaenjolie\\.com ii-ii-ii-ii\\.com wp\\.pl therapysites\\.com mef\\.gob\\.pe theiconweb\\.com hanmail\\.net nordicweb\\.com havealook\\.com ig\\.com\\.br skepy\\.com nameisp\\.com optusnet\\.com\\.au creativemotiondesign nifty\\.com ntlworld\\.com petamatic\\.com telus\\.net msa\\.hinet\\.net sympatico\\.ca bojan}.pl bing\\.com zlatestranky\\.cz xtra\\.co\\.nz sina\\.com bluewin\\.ch bol\\.com\\.br centrum\\.cz mindspring\\.com juno\\.com yourha\\.com photobiz\\.com aim\\.com videotron\\.ca blueyonder\\.co\\.uk email\\.cz tiscali\\.it tiscali\\.co\\.uk hosting\\.com\\.pe in\\.com teamunify\\.com sky\\.com idium\\.no family-address\\.ru pelsoftlabs\\.in pobox\\.com sakaryarehberim\\.com email\\.com iinet\\.net\\.au websites\\.ca globo\\.com code49\\.net xs4all\\.nl windowslive\\.com usa\\.net webtel\\.in bigpond\\.net\\.au vip\\.qq\\.com roadrunner\\.com pacbell\\.net sohu\\.com usa\\.com i\\.ua embarqmail\\.com batesville\\.com gobiernoenlinea\\.gov\\..* foxmail\\.com internode\\.on\\.net abv\\.bg paran\\.com t-online\\.de cfl\\.rr\\.com 139\\.com icloud\\.com newmail\\.ru nightmail\\.ru nm\\.ru pop3\\.ru rbcmail\\.ru smtp\\.ru hushmail\\.com aliceadsl\\.fr arcor\\.de centurytel\\.net chello\\.nl club-internet\\.fr facebook\\.com freenet\\.de frontier\\.net hetnet\\.nl home\\.nl neuf\\.fr orange\\.fr planet\\.nl skynet\\.be tin\\.it virgilio\\.it voila\\.fr windstream\\.net yahoogroups\\.com zonnet\\.nl proton\\.me protonmail\\.com protonmail\\.ch pm\\.me .*\\.ocn\\.ne\\.jp ocn\\.ne\\.jp .*\\.plala\\.or\\.jp plala\\.or\\.jp .*\\.biglobe\\.ne\\.jp biglobe\\.ne\\.jp .*\\.so-net\\.ne\\.jp so-net\\.ne\\.jp".split(" ");
EHa = "att.com sfr.com terra.co inbox.kitchen alice.app live.space live.lk live.synxis.com live.ink".split(" ");
_.Au = function(a) {
return EHa.includes(a) ? !1 : DHa.some(b => (b = a.match(b)) && b.index === 0)
}
;
De workaround
Ik was nieuwsgierig naar wat er zou gebeuren als ik deze functie uitschakelde. Tot mijn vreugde bleek het zo mogelijk om het aanmeldingsproces voor mijn domein succesvol te voltooien. Dit betekent dat er enkel sprake was van een frontend-validatie en niet van een server-side validatie.
Hoewel ik vermoed dat het Oekraïense Ministerie van Economie waarschijnlijk voor Microsoft 365 heeft gekozen.
Google Workspace denkt dat mijn domein een e-mailprovider is
Ik was een Google Workspace-account aan het maken voor mijn bedrijf. Zoals iedereen weet, is dit normaal gesproken een vrij eenvoudig aanmeldingsproces, totdat ik stuitte op een vreemde en verwarrende foutmelding bij het invoeren van mijn domeinnaam:
“Enter a valid domain name instead of an email provider” (Voer een geldige domeinnaam in in plaats van een e-mailprovider)
Ik vroeg me af wat dit betekende. Ik dacht dat mijn domein wellicht in het verleden als e-mailprovider was gebruikt, maar na het controleren van de geschiedenis van het domein bleek dat niet het geval te zijn.
Ik zocht naar de foutmelding, maar vond geen officiële documentatie van Google. Ik ontdekte echter dat ik niet de enige ben die dit probleem ervaart; er zijn verschillende community-threads waarin mensen om hulp vragen. Geloof het of niet, een van die threads was geplaatst door het Oekraïense Ministerie van Economie; zij kregen dezelfde foutmelding voor hun domein. En natuurlijk gaven de zogenaamde "experts" van de community, zoals gewoonlijk, de meest nutteloze reacties.
De interactie met support
Zonder oplossing was ik genoodzaakt contact op te nemen met de support van Google Workspace. Nadat ik door meerdere agenten was gevraagd: "Heeft u geprobeerd dit in een andere browser te doen?" — terwijl ik al had uitgelegd dat ik dat gedaan had — werd ik doorverwezen naar een supportspecialist van een hoger niveau, Karen. Zij vroeg me opnieuw om de aanmelding via een ander apparaat te proberen, waarop ik haar wederom vertelde dat ik dat al had gedaan.
Vervolgens vroeg ze me om een video-opname te maken, zodat hun productengineers dit konden beoordelen. Dat heb ik gedaan, en een paar uur later ontving ik een e-mail:
"Our engineers have reviewed the video and they've confirmed that the behavior is expected. The domain you are using is flagged as an email provider. We suggest you use another domain for your company." (Onze engineers hebben de video bekeken en bevestigd dat dit gedrag verwacht is. Het domein dat u gebruikt is gemarkeerd als een e-mailprovider. We adviseren u een ander domein voor uw bedrijf te gebruiken.)
Om dit in context te plaatsen: dit is een premiumdomein met een zeer hoge vernieuwingsprijs en uiteraard is er geen sprake van misbruik. Bovendien is de .one TLD een legitieme TLD die door legitieme bedrijven wordt gebruikt. Het lijkt erop dat zelfs hun productengineers het opgegeven hebben en een luie reactie gaven.
De technische analyse
Na een boze reactie terug te hebben gestuurd, was ik bijna klaar om Google volledig te verlaten en over te stappen naar Microsoft. Maar ik besloot het nog één laatste keer te proberen en de zaak zelf in handen te nemen.
Ik heb de broncode van hun aanmeldingspagina onderzocht en ontdekte dat de fout wordt geactiveerd door een lokale input-validatiefunctie. Er wordt gecontroleerd of het domein voorkomt in een regex-lijst van wat schijnbaar e-mailproviders zijn. Bij nader inzien staan er echter veel vreemde vermeldingen op die lijst, waaronder web\\..*, de boosdoener die mij verhinderde mijn domein aan te melden.
Blijkbaar hebben de engineers bij Google besloten dat alle web.[tld]-domeinen e-mailproviders zijn.
Daarnaast zorgt de vermelding me\\.. ervoor dat het domein van het Oekraïense Ministerie van Economie, me.gov.ua, niet wordt geaccepteerd, simpelweg omdat het subdomein me is. Een andere vreemde vermelding is alice\\.. — ik weet niet wat daarachter zit.
Voor de geïnteresseerden volgt hier het volledige codefragment van de Google Workspace-aanmeldingspagina:
var DHa, EHa;
DHa = "gmail\\..* hotmail\\..* yahoo\\..* myyahoo\\.com outlook\\..* aol\\..* inbox\\..* fastmail\\..* mail\\..{1,3}(\\..{2})?$ rediffmail\\..* lycos\\..* att\\..* comcast\\.net verizon\\..* talktalk\\..* laposte\\..* gmx\\..* web\\..* bk\\..* yandex\\..* rambler\\..* pochta\\..* live\\..* cox\\..* bellsouth\\..* me\\..* earthlink\\..* sbcglobal\\..* qq\\..* ceznam\\..* 163\\..* 126\\..* free\\..* sfr\\..* wanadoo\\..* aruba\\..* terra\\..* btinternet\\..* alice\\..* libero\\..* telenet\\..* corp\\.terra\\.com\\.co mac\\.com webstarts\\.com googlemail\\.com msn\\.com teleworm\\.com isbn10\\.net isbn13\\.net ymail\\.com mailinator\\.com pookmail\\.com trashymail\\.com dodgit\\.com spambob\\.com dotarai\\.co\\.th appspeople\\.dk indiamart\\.com pkt\\.pl naver\\.com seznam\\.cz hemsida24\\.se shaw\\.ca ncs\\.com\\.sg rogers\\.com rocketmail\\.com ukr\\.net charter\\.net uol\\.com\\.br ya\\.ru bigpond\\.com idwebhost\\.com vkios\\.com registar\\.com cpasitesolutions\\.com optonline\\.net iridiuminteractive\\.com data-typing-earns\\.info smartpillars\\.com nate\\.com list\\.ru o2\\.pl riaenjolie\\.com ii-ii-ii-ii\\.com wp\\.pl therapysites\\.com mef\\.gob\\.pe theiconweb\\.com hanmail\\.net nordicweb\\.com havealook\\.com ig\\.com\\.br skepy\\.com nameisp\\.com optusnet\\.com\\.au creativemotiondesign nifty\\.com ntlworld\\.com petamatic\\.com telus\\.net msa\\.hinet\\.net sympatico\\.ca bojan}.pl bing\\.com zlatestranky\\.cz xtra\\.co\\.nz sina\\.com bluewin\\.ch bol\\.com\\.br centrum\\.cz mindspring\\.com juno\\.com yourha\\.com photobiz\\.com aim\\.com videotron\\.ca blueyonder\\.co\\.uk email\\.cz tiscali\\.it tiscali\\.co\\.uk hosting\\.com\\.pe in\\.com teamunify\\.com sky\\.com idium\\.no family-address\\.ru pelsoftlabs\\.in pobox\\.com sakaryarehberim\\.com email\\.com iinet\\.net\\.au websites\\.ca globo\\.com code49\\.net xs4all\\.nl windowslive\\.com usa\\.net webtel\\.in bigpond\\.net\\.au vip\\.qq\\.com roadrunner\\.com pacbell\\.net sohu\\.com usa\\.com i\\.ua embarqmail\\.com batesville\\.com gobiernoenlinea\\.gov\\..* foxmail\\.com internode\\.on\\.net abv\\.bg paran\\.com t-online\\.de cfl\\.rr\\.com 139\\.com icloud\\.com newmail\\.ru nightmail\\.ru nm\\.ru pop3\\.ru rbcmail\\.ru smtp\\.ru hushmail\\.com aliceadsl\\.fr arcor\\.de centurytel\\.net chello\\.nl club-internet\\.fr facebook\\.com freenet\\.de frontier\\.net hetnet\\.nl home\\.nl neuf\\.fr orange\\.fr planet\\.nl skynet\\.be tin\\.it virgilio\\.it voila\\.fr windstream\\.net yahoogroups\\.com zonnet\\.nl proton\\.me protonmail\\.com protonmail\\.ch pm\\.me .*\\.ocn\\.ne\\.jp ocn\\.ne\\.jp .*\\.plala\\.or\\.jp plala\\.or\\.jp .*\\.biglobe\\.ne\\.jp biglobe\\.ne\\.jp .*\\.so-net\\.ne\\.jp so-net\\.ne\\.jp".split(" ");
EHa = "att.com sfr.com terra.co inbox.kitchen alice.app live.space live.lk live.synxis.com live.ink".split(" ");
_.Au = function(a) {
return EHa.includes(a) ? !1 : DHa.some(b => (b = a.match(b)) && b.index === 0)
}
;
De workaround
Ik was nieuwsgierig naar wat er zou gebeuren als ik deze functie uitschakelde. Tot mijn vreugde bleek het zo mogelijk om het aanmeldingsproces voor mijn domein succesvol te voltooien. Dit betekent dat er enkel sprake was van een frontend-validatie en niet van een server-side validatie.
Hoewel ik vermoed dat het Oekraïense Ministerie van Economie waarschijnlijk voor Microsoft 365 heeft gekozen.