In Beoordeling. Deze workflow is in beoordeling, implementeer deze alstublieft niet totdat deze spoiler is verwijderd. Onze excuses voor het ongemak.
Webverbindingen machtig ArcGIS Data Interoperability om te werken met ArcGIS Online-services via het Esri ArcGIS Connector-pakket, de Geocoder-transformer of andere REST-aanroepen naar de vele services die Online biedt. Uw autorisatie (machtigingen) voor elk van deze services is gekoppeld aan uw Online-account, maar u moet zich eerst authenticeren bij Online.
Er is veel verwarring rond de termen "authorize" en "authenticate". Strikt genomen verifieert authenticatie een identiteit, terwijl autorisatie bepaalt waartoe de identiteit toegang heeft met tokens die door Online worden verleend. Het gebruikte OAuth 2.0-protocol is een autorisatieframework, gebruikersauthenticatie wordt meestal tegelijkertijd afgehandeld door aanmeldlagen zoals OpenID Connect. We hoeven hier niet verder op in te gaan voor de doeleinden van deze blog.
We behandelen de aanbevolen manier om Webverbindingen met Online te configureren, namelijk als app-verbindingen. Dit proces bestaat uit twee stappen:
- Maak ontwikkelaarsreferenties aan in Online
- Maak een webverbinding aan in ArcGIS Data Interoperability
Volg de tutorial die in stap 1 hierboven is gelinkt, ook gedocumenteerd hier, log in bij Online en navigeer in de home-app naar uw Content naar de map die u zult gebruiken voor het OAuth 2.0-referentie-item. Gebruik de knop Nieuw item linksboven en kies om een Developer credentials-item aan te maken.
Kies vervolgens OAuth 2.0-referenties voor app-authenticatie.
Kies vervolgens alle eigenaarstoestemmingen tenzij u een reden hebt om deze te beperken.
Registreer vervolgens http://localhost als verwijzer.
Geef vervolgens beschrijvende metadata op.
Bevestig vervolgens de samenvatting en beveiligingsinstellingen en maak het item aan.
U wordt dan naar de nieuwe OAuth 2.0-referentiepagina geleid. Klik op de Instellingen weergave. Voer in het Algemene scherm https://www.arcgis.com in als URL. Deze wordt nergens gebruikt maar er is een stabiele URL vereist, ik gebruik https://www.arcgis.com. Klik vervolgens op Registreer Applicatie.
Voer vervolgens http://localhost in als redirect- en verwijzer-URL's en klik op Registreer het item. De applicatiedetails tonen nu Client ID en Client Secret, u heeft deze nodig voor de volgende stappen dus laat de itempagina openstaan.
Dat voltooit het maken van het referentie-item, nu gaan we verder met het maken van de Webverbinding in ArcGIS Data Interoperability. Zorg er eerst voor dat het Esri ArcGIS Connector pakket geïnstalleerd is en up-to-date is. De eenvoudigste manier is om het pakket te downloaden via bovenstaande link, open de Workbench-app en sleep het pakketbestand vanuit Windows Verkenner naar het canvas. Ga nu in Workbench naar het menu Utilities > FME Options > Web Connections >Manage Services, klik op het dropdownmenu bij de knop Web Service toevoegen en kies Maak Aan Vanuit de Esri ArcGIS Online OAuth (safe.esri-agol) sjabloon.
Het dialoogvenster Web Services beheren opent, wijzig de naam van de Web Service naar iets dat duidelijk maakt dat het voor Online is, bewerk de Client ID en Client Secret om de waarden van uw recent aangemaakte referentie-item over te nemen, stel de Redirect URI in op http://localhost en Redirect Strategy op Loopback Interface Redirect, en u bent klaar om de webverbinding te testen!
Klik op Testen en u wordt gevraagd om toestemming te geven dat de webservice toegang krijgt tot Online, klik Toestaan.
Uw browser zal u wat aanmoediging geven6hellip;
Ga terug naar Workbench en u krijgt een melding dat de webservice succesvol is geautoriseerd.
Sluit dit af en u wordt beloond met succes!
Nu de laatste stap, maak uw Webverbinding aan vanuit uw Web Service. Ga terug naar het menu Utilities > FME Options > Web Connections en klik linksonder op Webverbinding toevoegen (het grote + symbool, optie Toevoegen). Kies om deze te maken vanuit uw recent aangemaakte Web Service.
U wordt nogmaals gevraagd om toegang toe te staan en uw Webverbinding is klaar voor gebruik!