Taito pääsisältöön

Pääsy yksityisiin tietoihin ERDDAP™

Monet monet ERDDAP™ Asennuksissa ei ole todennusta eikä näin ollen tarjoa mitään tapaa kirjautua sisään, eikä niillä ole yksityisiä tietoaineistoja.

Jotkut ERDDAP™ Asennukset on todennettu. Tällä hetkellä, ERDDAP™ Tukee vain tunnistamista Googlen hallinnoimien sähköpostitilien kautta, joka sisältää sähköpostitilejä NOAA ja monia yliopistoja. Jos ERDDAP™ autentikointi on sallittua, kuka tahansa, jolla on Googlen hallinnoima sähköpostitili, voi kirjautua sisään, mutta heillä on pääsy vain yksityisiin tietoaineistoihin, jotka ovat ERDDAP™ Hallinnoija on nimenomaisesti valtuuttanut heidät käyttämään niitä.

Päivitettyjä ohjeita​

Osa alla olevista tiedoista on vanhentunut. Kunnes tämä päivitetään, voit käyttää Tämä blogi Viimeisimmät vaiheet tietojen saamiseksi yksityisestä tietoaineistosta käsikirjoitusten avulla.

Ihmisiä selaimilla​

Ihmisen käyttäjät ERDDAP™ voi kirjautua sisään ERDDAP™ selaimessa saadakseen pääsyn yksityisiin tietoaineistoihin, joihin heillä on lupa käyttää.

Kirjaudu sisään:

  1. Klikkaa lokiin linkkiä vasemmalla puolella mistä tahansa ERDDAP™ verkkosivuilla. Jos linkkiä ei ole, ERDDAP™ Asennuksella ei ole todennusta eikä yksityisiä tietoaineistoja ole.  
  2. Klikkaa Kirjaudu sisään painike kirjautuaksesi Google-tilillesi. Painikkeen teksti muuttuu "Signed in".  
  3. Klikkaa sisään ERDDAP nappia. Verkkosivun pitäisi muuttua sanomaan Olet kirjautunut sisään kuin sinun Sähköposti . Jos näin ei ole, odota 5 sekuntia ja klikkaa Logia. ERDDAP Nappi taas. Äärimmäisissä tapauksissa joudut odottamaan ja yritä uudelleen muutaman kerran.  
  4. Älä käytä selaimesi Back-painiketta. Käytä " ERDDAP Linkki edellä mainitun yläreunassa ja käytä muita linkkejä ERDDAP™ Sivut, joista olet kiinnostunut. Jos napsautettu sivu sanoo, että et ole kirjautunut sisään, lataa sivu uudelleen.  

Käsikirjoitukset​

\[ Tämä on hieman muokattu Lynn DeWittin antamista tiedoista, jotka tekivät tämän vaikean työn. Lynn, kiitos paljon! Jos sinulla on korjauksia tai ehdotuksia, lähetä sähköpostia osoitteeseen erd.data @ noaa.gov. \]

On myös mahdollista kirjautua sisään ERDDAP™ Käytä yksityisiä tietoaineistoja käsikirjoituksen kautta. Tässä esimerkki, joka käyttää curl :

  1. Nämä ohjeet olettavat, että käytät gmail-osoitetta, jossa 2-tekijän todentaminen ei ole käytössä. Jos pääasiallisessa gmail-osoitteessa on 2-tekijän todentaminen, harkitse toisen gmail-osoitteen luomista 2-tekijän todennuksella.  
  2. Kirjaudu sisään ERDDAP™ manuaalisesti gmail-osoitteella, jota haluat käyttää käsikirjoituksessasi, ja hyväksy kaikki tarvittavat luvat ja kirjaudu sitten kokonaan ulos.  
  3. Avaa selaimen kehittäjätyökalut ja siirry verkkovälilehteen.  
  4. Klikkaa tästä ERDDAP™ "kirjaudu sisään" -linkki, sitten "Sign in" -painike ja valitse sopiva sähköpostiosoite, jos sitä pyydetään.  
  5. Kun "Sign in" -painike muuttuu "Signed in", Developer Tools Network -välilehti näyttää kaksi merkintää, jotka näyttävät seuraavilta. (Lähde: Firefox) :
iframerpc?action=issueToken&response loginGoogle.html

Käytä hiiren oikean klikkauksen kontekstivalikkoa "kopioimaan URL-osoitteena" molemmissa URL-osoitteissa ja liittämään ne tavalliseen tekstieditoriin.   6. Klikkaa "Log into" ERDDAP "painike ja "kopioi URL-osoitteena" linkki, joka näyttää:

login.html

ja liittää kolmannen curl komentaminen tekstitiedostoon.   7. Tekstitiedostossa on nyt kolme riviä, kuten seuraavat, joissa olet kirjautunut sisään ERDDAP™ Palvelin " https://host.somewhere.com/erddap > Ensimmäinen curl Komento saa käyttäjäprofiilisi "login \hint" ja tuottaa "id-tunnuksen". Toinen käyttää _id-tunnusta kirjautuakseen Googleen ja kolmas kirjautuu sitten sisään. ERDDAP .

curl 'https://accounts.google.com/o/oauth2/iframerpc?action=issueToken&response\\_type=token%20id\\_token&scope=openid%20profile%20email&client\\_id=ABCDEFG.apps.googleusercontent.com&login\\_hint=XXXXXXXXXX&ss\\_domain=https%3A%2F%2Fhost.somewhere.com&origin=https%3A%2F%2Fhost.somewhere.com' --2.0 -H 'Host: accounts.google.com' -H 'User-Agent: useragentstuff' -H 'Accept: \\*/\\*' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Referer: https://accounts.google.com/o/oauth2/iframe' -H 'Cookie: lotsofcookiestuff' -H 'Connection: keep-alive' curl 'https://host.somewhere.com/erddap/loginGoogle.html' -H 'Host: host.somewhere.com' -H 'User-Agent: useragentstuff' -H 'Accept: \\*/\\*' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Referer: https://host.somewhere.com/erddap/login.html' -H 'Content-Type: application/x-www-form-urlencoded' -H 'Cookie: cookiestuff' -H 'Connection: keep-alive' --data 'idtoken=HUGELONGIDTOKEN' curl 'https://host.somewhere.com/erddap/login.html' -H 'Host: host.somewhere.com' -H 'User-Agent: useragentstuff' -H 'Accept: typeacceptstuff' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Referer: https://host.somewhere.com/erddap/login.html' -H 'Cookie: cookiestuff' -H 'Connection: keep-alive' -H 'Upgrade-Insecure-Requests: 1'
  1. Edellä mainitut kolme riviä, jotka kulkevat peräkkäin komentoriviltä, kirjaavat sinut sisään ERDDAP . Jotta voit käyttää näitä käsikirjoituksessa, sinun on kiinnitettävä id-token ensimmäisestä rivistä, syötettävä se toiseen riviin ja kirjoitettava eväste, joka on luettava myöhemmillä riveillä.  
  2. Kehittää käsikirjoitusta, juosta ensimmäinen ("""https://accounts.google.com) curl juuri sellaisena kuin se on kopioitu kehittäjän työkaluista, ja ottaa vastauksen (Saatat saada curl Virhe lipusta "-2.0" poista se) . FP:ssä näyttää seuraavalta:
$gcurlstuff="curl 'https://accounts.google.com/o/oauth2/iframerpc?action=issueToken&response\\_type=token%20id\\_token&scope=openid%20profile%20email&client\\_id=ABCDEFG.apps.googleusercontent.com&login\\_hint=XXXXXXXXXX&ss\\_domain=https%3A%2F%2Fhost.somewhere.com&origin=https%3A%2F%2Fhost.somewhere.com' -H 'Host: accounts.google.com' -H 'User-Agent: useragentstuff' -H 'Accept: \\*/\\*' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Referer: https://accounts.google.com/o/oauth2/iframe' -H 'Cookie: lotsofcookiestuff' -H 'Connection: keep-alive'"; //execute the curl command: exec($gcurlstuff,$output,$status); //the response is a json array in $output $response=json\\_decode($output\\[0\\],true); //the part you need is in "id\\_token": $id\\_token=$response\\["id\\_token"\\];

Kirjaudu sisään Googleen suorittamalla toisen rivin käyttämällä $idtokenia, poistamalla ensin "-H 'Cookie: Things" -parametri ja sen sijaan kertomalla. curl Kirjoita eväste:

$glcurlstuff="curl 'https://host.somewhere.com/erddap/loginGoogle.html' -H 'Host: host.somewhere.com' -H 'User-Agent: useragentstuff' -H 'Accept: \\*/\\*' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Referer: https://host.somewhere.com/erddap/login.html' -H 'Content-Type: application/x-www-form-urlencoded' -H 'Cookie: cookiestuff' -H 'Connection: keep-alive' --data 'idtoken=".$id\\_token."' -b cookies.txt -c cookies.txt" exec($glcurlstuff,$output1,$status);

Kirjaudu sisään ERDDAP™ poistaa "-H 'Cookie: tavarat' -parametrin ja käyttää aiemmin kirjoitettua evästettä:

$ecurlstuff="curl 'https://host.somewhere.com/erddap/login.html' -H 'Host: host.somewhere.com' -H 'User-Agent: useragentstuff' -H 'Accept: typeacceptstuff' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Referer: https://host.somewhere.com/erddap/login.html' -H 'Connection: keep-alive' -H 'Upgrade-Insecure-Requests: 1 -b cookies.txt"' exec($ecurlstuff,$output2,$status);

Voit nyt pyytää palvelimelta tietoja käyttämällä samaa evästettä:

$curlstuff="curl -s 'https://host.somewhere.com/erddap/tabledap/datasetid.csv?variablelist' -H 'Host: host.somewhere.com' -H 'User-Agent: useragentstuff' -H 'Accept: typeacceptstuff' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Connection: keep-alive' -H 'Upgrade-Insecure-Requests: 1' -b cookies.txt"; exec($curlstuff,$output3,$status); //$output3 will be data in csv!