Jos käytät Portalissa API:a, joka vaatii tokenien (Client ID:iden ja Client Secretien) käyttöä, tässä artikkelissa kerrotaan, kuinka ne luodaan.
Huomaa, että vain "owner"- ja "admin"-roolin käyttäjillä on pääsy API Configuration -sivulle. Suosittelemme luomaan erillisen admin-käyttäjän API-vuorovaikutusta varten. Esimerkiksi Shipment Data API:n kohdalla tämä antaa sinulle mahdollisuuden mukauttaa shipment viewer -profiilia vastaamaan täsmälleen haluamiasi tietoja ilman, että se vaikuttaa muiden käyttäjien käyttöliittymäkonfiguraatioon.
Jos et ole perehtynyt nShift Shipissä käytettyihin käyttäjätyyppeihin ja rooleihin, suosittelemme lukemaan tämän artikkelin: Käyttäjätyyppien ja roolien ymmärtäminen.
Client ID:n ja Client Secretin luominen
- Kirjaudu sisään nShift Portaliin owner-käyttäjälläsi.
- Napsauta Settings oikeassa yläkulmassa.
- Valitse API Configuration > Clients vasemmasta sivuvalikosta.
- Napsauta Clients-sivulla Add-painiketta.
- Täytä avautuvassa valintaikkunassa Display name ja Description. Valitse nimi ja kuvaus, jotka helpottavat tokenin tunnistamista myöhemmin. Valitse Enable-valintaruutu aktivoidaksesi tokenin heti. (Voit ottaa tokenin käyttöön tai poistaa sen käytöstä milloin tahansa luomisen jälkeen).
- Valitse Allowed Scopes eli API:t, joihin tarvitset pääsyn.
- Napsauta Save. Client Id ja Client Secret luodaan nyt ja näytetään näytöllä. Tärkeää: Kirjaa tokenit ylös, sillä Client Secret ei ole enää saatavilla, kun suljet ponnahdusikkunan.
- Napsauta Save viimeistelläksesi tokenin luomisen.
- Token näkyy nyt Clients-sivulla. Voit napsauttaa tokenia milloin tahansa muokataksesi tai poistaaksesi sen tai ottaaksesi sen käyttöön tai poistaaksesi sen käytöstä. Jos sinulla on pitkä lista tokeneita, voit käyttää yläosan suodatusvaihtoehto näyttääksesi vain käytössä olevat tai poistetut tokenit.
Scopejen yleiskatsaus
Tässä luettelossa selitetään eri scopejen käyttö. Turvallisuussyistä suosittelemme valitsemaan vain tarvitsemasi scopet. On parempi luoda useita Client ID:itä suppeilla scopeilla kuin yksi ID, joka kattaa useita scopeja.
-
Public Containers API (public_containers_api) – Tarvitaan container-API:n käyttämiseen konttien hallintaan. Lue lisää container-API:sta täältä. Tarvitset tämän scopen myös, jos haluat käyttää kontteja nShift On-premisessä, lue lisää täältä.
-
Public COP Cloud Access (public_cop_cloud_access) – Käytetään turvalliseen viestintään On-premisen ja Portalin välillä tilausten suorittamista varten.
-
ScanApp public Api (public_api_scanapp_consignor) – Tarvitaan konttien käyttämiseen nShift On-premisessä. Tämä scope antaa On-premiselle pääsyn hakea luettelo käytettävissä olevista Action Centereistä asennukseen liitetyn ownerin perusteella. Lue lisää konteista On-premisessä täältä.
-
Portal Shipment Data API (public_api_portal_shipment_data) – Tarvitaan, kun haluat käyttää Shipment Data API:a lähetystietojen hakemiseen Portalista. Lue lisää Shipment Data API:sta täältä.
- Shipment Server (public_api_shipmentserver) – Tätä scopea tarvitaan Shipment Server API:n version 2 käyttämiseen. Lue lisää täältä.
Käyttöoikeustokenin hakeminen
Käytä Client ID:täsi ja Client Secretiäsi luodaksesi käyttöoikeustokenin, jota tarvitaan muihin API-pyyntöihin. Tämä tehdään lähettämällä POST-pyyntö seuraavaan token-endpointiin:
https://account.nshiftportal.com/idp/connect/token
Määritä Client ID, Client Secret ja grant type yrityksesi käyttämällä ohjelmointikielellä ja kehyksellä.
Esimerkki:
POST https://account.nshiftportal.com/idp/connect/token
Cache-Control: no-cache
Host: www.nshiftportal.com
Content-Type: application/x-www-form-urlencoded
client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=client_credentials
Jos pyyntö on kelvollinen ja asiakas on määritetty oikein, saat takaisin JSON-vastauksen:
{
"access_token": "some-real-token-data-dskjfhsuijkdhfgjkasjdgfhqoeiefoiknsoidfgvoiltgjvpdrofjmwpkldujrftvoifgkhbnilsakjprotglijkqp2owrlfjkvmowrifgho2qw9ouejifpe9rodtuj3-0porfij9odtujgw0etioyh",
"expires_in": 3600,
"token_type": "Bearer"
}
Lisälukemista
Kaikki uudet API:mme tukevat OpenID-ratkaisua parannetun tietoturvan takaamiseksi. Lisätietoja saat OpenId- ja IdentityServer-standardin dokumentaatiosta: