Trinn-for-trinn-instruksjoner for å koble Google Maps API Key til Divi-kartmodulen. Få en Google API-nøkkel

For enkelhets skyld for mange spillere har EVE-utviklere laget et api for muligheten til å få tilgang til/poste kontoinformasjon på andre ressurser. Mange seriøse selskaper krever utlevering av en nøkkel før de godtar en spiller. I denne artikkelen vil vi prøve å fortelle deg hva en Eve API-nøkkel er, hvordan du får tak i den og hva du kan gjøre med den.

Hva er en API-nøkkel? Hvordan kan jeg bruke det?

En API-nøkkel er en privat kode som identifiserer kontoen din og lar deg tredjeparts programmer og nettsteder, få tilgang til informasjon om karakterene dine og selskapene dine. Ved å bruke disse dataene kan slike verktøy bidra til å gi rettidige varsler om hendelser som er viktige for deg, alt fra interaksjoner med spillfunksjonalitet(salg/kalenderhendelser/planer/skipsstatus osv.), som avsluttes med interaksjon med andre spillere.

Det er trygt? Kan noen få tilgang til kontoen min uten min viten?

Det er trygt, andre nettsteder og applikasjoner har tilgang til informasjon om kontoen din så lenge du gir samtykke. De. du kan forby når som helst gitt tilgang hvis du tviler på sikkerheten til ressursen du ga informasjonen din på. Du kan også kontrollere hvilken informasjon som skal være tilgjengelig for andre brukere ved å bruke API-nøkkelen du opprettet.

Bruk av en API-nøkkel gir ikke folk tilgang til kontoen din. Dette er formålet med API-nøkler. API-nøkkelen lar deg bare se (lese) karakter- og selskapsdata. De vil ikke kunne logge på spillet, endre passordet ditt eller på annen måte hacke kontoen din.

Dette er den eneste sikker måte Gi programmer og nettsteder tilgang til dataene dine.

Jeg stoler fortsatt ikke på det.

Hvis du ikke er sikker på at et nettsted eller et program som ber om en API-nøkkel er sikker, vennligst ikke oppgi API-nøkkelen din! Du er eneansvarlig for all bruk av informasjon innhentet gjennom API-funksjonen.

Jeg ga noen API-nøkkelen min, og nå vil jeg at de ikke skal kunne bruke den!

Hvis du tror noen misbruker API-nøkkelen din, kan du fjerne den fra tillatelseslisten, eller ganske enkelt endre bekreftelseskoden. Vær oppmerksom på at alle programmer og nettsteder som bruker den gamle API-nøkkelen ikke lenger vil kunne få tilgang til dataene med mindre du gir dem en ny nøkkel med oppdatert informasjon.

Du kan se API-aktiviteten på kontoen din ved å bruke loggen. Få tilgang til API Hvis du mener at noen misbruker en av API-nøklene dine, må du endre bekreftelseskoden eller fjerne API-nøkkelen fra listen ovenfor.

Hvordan lage Eve API-nøkkel?

  1. For å opprette en nøkkel, følg lenken: https://community.eveonline.com/support/api-key/update
  2. Du må logge inn. Vær oppmerksom på adressen før du logger inn. Bare en slik adresse er adressen til OFF-siden til EVE.
  3. Etter pålogging vil du se et vindu med følgende informasjon:
  • Lommebokoperasjoner
  • Lommeboktransaksjonslogg
  • Markedsordrer
  • Saldo

Kommunikasjon

  • Chattekanaler
  • Varslingstekster
  • Varsler
  • Postmeldinger
  • E-postlister
  • Post
  • Kontaktvarsler
  • Kontaktliste

Offentlig informasjon

  • Karakterinformasjon
  • Finalebord
  • Priser
  • Dreplogg
  • Krigsstatistikk

Vitenskap og industri

  • Forskning
  • Industriell aktivitet

Privat informasjon

  • Bokmerker
  • Koordinater
  • Kontrakter
  • Status for en konto
  • Karakterinformasjon
  • Kalender for kommende arrangementer
  • Kø av ferdigheter som læres.
  • Ferdigheter lært
  • Karakterark
  • hendelseskalender
  • Liste over eiendeler

Likeså for nøkkeltype - Corporation. Klikk deretter på "send" og nøkkelen vil bli opprettet. Den er umiddelbart klar til bruk.

Hvor brukes denne nøkkelen?

Ofte er denne funksjonen implementert for selskaper (klansider) og andre. applikasjon for EVE-verdenen. Noe som forenkler informasjonsutveksling med korpsmedlemmer.

Det neste trinnet er å øke sikkerheten til den nye nøkkelen. I API-konsollen klikker du på "Påloggingsinformasjon"-knappen og går direkte til koblingen "API-nøkkel" i konsollen.

Åpner ny skjerm, hvor du kan begrense bruken av API til bare ett nettsted. Dette betyr at ingen uautoriserte brukere kan ta API-nøkkelen din og deretter bruke den på et annet nettsted, og dermed kaste bort nøkkelens dagpenge på kartnedlastinger. Noe som nok vil koste penger hvis fakturering er inkludert.

Det er enkelt å begrense bruken av en nøkkel. Finn delen "Nøkkelbegrensninger" i vinduet som åpnes.


Hvis du trenger å vise kart på nettstedet ditt, velger du alternativet "HTTP-henvisningskilder (nettsteder)".

Dette åpner et nytt felt for å legge til domenet eller domenene dine der. Ikke glem å legge dem til i ønsket format:

*.example.com/*

hvor "example.com" er navnet på nettstedet.

Bruk en stjerne som jokertegn. Hvis du lar dette feltet stå tomt, vil forespørsler bli akseptert fra alle kilder. Stjerner, skråstreker og prikker skal formateres på samme måte som i malen.

Hvis du trenger å legge til flere domener, må du legge dem til ett om gangen på hver ny linje.

For å bruke Geocoding API må du få en API-nøkkel som du deretter kan legge til i mobilappen din, nettstedet eller Internett server. API-nøkkelen brukes til å spore API-forespørsler knyttet til prosjektet ditt for bruk og fakturering. For å lære mer om API-nøkler, se og .

Påminnelse: For å bruke Geocoding API, må du få en API-nøkkel og du må aktivere fakturering. Du kan aktivere fakturering når du får API-nøkkelen din (se ) eller som en separat prosess (se ). Merk: Før du flytter mobilappen, nettstedet eller webserveren til produksjon, anbefales det at du sikrer API-nøkkelen din ved å legge til en begrensning (se ).

Konsoll

Hurtiginnføring

Trinn 1: Få en API-nøkkel

Klikk på knappen nedenfor for å få en API-nøkkel ved å bruke . Du vil bli bedt om å (1) velge ett eller flere produkter, (2) velge eller opprette et prosjekt, og (3) sette opp en faktureringskonto. Når API-nøkkelen din er opprettet, vil du bli bedt om å begrense bruken av nøkkelen. (For mer informasjon, se.)

Kom i gang

Trinn 2: Legg til API-nøkkelen i forespørselen din

Når du laster inn geokodings-APIet, erstatter du YOUR_API_KEY i koden nedenfor med API-nøkkelen du fikk fra forrige trinn.

Https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key= YOUR_API_KEY

Detaljert veiledning

Detaljert veiledning for Premium Plan-kunder

For å bruke Geocoding API, må du autentisere forespørsler med enten en API-nøkkel eller

Velge en autentiseringsmetode for applikasjonen din

Autentiseringsmetoden du velger er basert på lisensen din:

  • Kunder med denne kan bruke en API-nøkkel eller en klient-ID og digital signatur.
  • Kunder med en må bruke en klient-ID og digital signatur.

Har du Premium Plan eller en tidligere lisens?
For å finne ut hvilken lisens du har:
> Klikk på i Google Cloud Support Portal Kart: Bruksrapport til venstre.
> Har ID-en øverst i rapporten følgende format?
gme-[ selskap]&proj-[ Antall] ([type])
Hvis ja, har du .
Hvis nei, har du en (Maps APIs for Work eller Maps API for Business).

Når du bestemmer deg for hvilken autentiseringsmetode du skal bruke, bør du vurdere følgende:

  • Autentisering ved hjelp av en API-nøkkel(Premium Plan-lisens)
    Ved å bruke en API-nøkkel for å autentisere applikasjonene dine, kan du:
    • Administrer alle API-ene dine i Google Cloud Platform Console.
    • Få tilgang til sanntidsbruksdata og 30 dagers historiske bruksdata for appen din i Google Cloud Platform Console.
    • Google Cloud Support Portal.
  • Autentisering ved hjelp av klient-ID og digital signatur(Premiumplan eller tidligere lisens)
    Ved å bruke klient-ID og digital signatur for å autentisere applikasjonen din, kan du:
    • Legg til kanalparameteren i forespørsler slik at du kan se mer detaljerte bruksrapporter.
    • Se bruksrapporter med mer enn 30 dager med data i Google Cloud Support Portal.
    • Bruk Maps Analytics-verktøy for Maps JavaScript API.

Autentisering av applikasjonen din ved hjelp av en API-nøkkel

Merk: For kunder med Premium Plan-lisens.

Følg disse trinnene for å få en API-nøkkel og legge til begrensninger:

Autentisering av applikasjonen din ved hjelp av en klient-ID og digital signatur

Merk: For kunder med Premium Plan eller tidligere lisens. #!/usr/bin/python # -*- koding: utf-8 -*- """ Signerer en URL ved hjelp av en URL-signeringshemmelighet """ import hashlib import hmac import base64 import urlparse def sign_url(input_url=Ingen, hemmelig =Ingen): """ Signer en forespørsels-URL med en URL-signeringshemmelighet. Bruk: fra urlsigner import sign_url signed_url = sign_url(input_url=my_url, secret=SECRET) Args: input_url - URL-adressen som skal signeres hemmelig - Din URL-signeringshemmelighet Returnerer : Den signerte forespørsels-URLen """ hvis ikke input_url eller ikke hemmelig: raise Exception("Både input_url og secret er påkrevd") url = urlparse.urlparse(input_url) # Vi trenger bare å signere banen+spørringsdelen av strengen url_to_sign = url.path + "?" + url.query # Dekode den private nøkkelen til dets binære format # Vi må dekode den URL-kodede private nøkkelen decoded_key = base64.urlsafe_b64decode(secret) # Opprett en signatur med den private nøkkelen og den URL-kodede #-strengen ved å bruke HMAC SHA1 . Denne signaturen vil være binær. signatur = hmac.new(decoded_key, url_to_sign, hashlib.sha1) # Kod den binære signaturen inn i base64 for bruk i en URL encoded_signature = base64.urlsafe_b64encode(signature.digest()) original_url = url.scheme + "://" + url.netloc + url.path + "?" + url.query # Returner signert URL return original_url + "&signature=" + encoded_signature if __name__ == "__main__": input_url = raw_input("URL til signering: ") secret = raw_input("URL signeringshemmelighet: ") print "Signert URL: " + sign_url(input_url, hemmelig)

Java

Eksemplet nedenfor bruker java.util.Base64-klassen tilgjengelig siden JDK 1.8 - eldre versjoner må kanskje bruke Apache Commons eller lignende. (Last ned koden.)

Importer java.io.IOException; import java.io.UnsupportedEncodingException; importer java.net.URI; import java.net.URISyntaxException; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; importer java.util.Base64; // Kun JDK 1.8 - eldre versjoner må kanskje bruke Apache Commons eller lignende. importer javax.crypto.Mac; importer javax.crypto.spec.SecretKeySpec; importer java.net.URL; import java.io.BufferedReader; import java.io.InputStreamReader; public class UrlSigner ( // Merk: Vanligvis bør du lagre din private nøkkel et trygt sted // og lese dem inn i koden din private static String keyString = "YOUR_PRIVATE_KEY"; // URL-en vist i disse eksemplene er en statisk URL som allerede burde // være URL-kodet. I praksis vil du sannsynligvis ha kode // som setter sammen URL-en din fra bruker- eller nettjenesteinndata // og kobler disse verdiene inn i parameterne. private static String urlString = "DIN_URL_TO_SIGN"; // Denne variabelen lagrer den binære nøkkelen, som beregnes fra strengen (Base64)-nøkkelen private statiske byte-nøkkel; offentlig statisk void main(String args) kaster IOException, InvalidKeyException, NoSuchAlgorithmException, URISyntaxException ( BufferedReader input = new BufferedReader(Read InputStre. in) ); String inputUrl, inputKey = null; // For testformål, tillat brukerinndata for URL-en. // Hvis ingen input er angitt, bruk den statiske URL-en definert ovenfor. System.out.println("Skriv inn URL-en ( må være URL-kodet) for å signere: "); inputUrl = input.readLine(); if (inputUrl.equals("")) ( inputUrl = urlString; ) // Konverter strengen til en URL slik at vi kan analysere den URL url = new URL(inputUrl); // For testformål, tillat brukerinndata for den private nøkkelen. // Hvis ingen inndata er angitt, bruk den statiske nøkkelen definert ovenfor. System.out.println("Skriv inn den private nøkkelen for å signere URLen: "); inputKey = input.readLine(); if (inputKey.equals("")) ( inputKey = keyString; ) UrlSigner signer = new UrlSigner(inputKey); String request = signer.signRequest(url.getPath(),url.getQuery()); System.out.println("Signert URL:" + url.getProtocol() + "://" + url.getHost() + request); ) public UrlSigner(String keyString) kaster IOException ( // Konverter nøkkelen fra "web safe" base 64 til binær keyString = keyString.replace("-", "+"); keyString = keyString.replace("_", " /"); System.out.println("Nøkkel: " + keyString); // Base64 er kun JDK 1.8 - eldre versjoner må kanskje bruke Apache Commons eller lignende. this.key = Base64.getDecoder().decode(keyString ); ) public String signRequest(String path, String query) kaster NoSuchAlgorithmException, InvalidKeyException, UnsupportedEncodingException, URISyntaxException ( // Hent de riktige URL-komponentene for å signere String resource = path + "? " + spørring; // Få en HMAC-SHA1-signeringsnøkkel fra rånøkkelbytene SecretKeySpec sha1Key = new SecretKeySpec(nøkkel, "HmacSHA1"); // Få en HMAC-SHA1 Mac-forekomst og initialiser den med HMAC-SHA1-nøkkelen Mac mac = Mac.getInstance("HmacSHA1"); mac.init(sha1Key); // beregne den binære signaturen for forespørselsbyten sigBytes = mac.doFinal(resource.getBytes()); // base 64 kode den binære signaturen / / Base64 er kun JDK 1.8 - eldre versjoner må kanskje bruke Apache Commons eller lignende. String signatur = Base64.getEncoder().encodeToString(sigBytes); // konverter signaturen til "nettsikker" base 64 signatur = signatur.replace( "+", "-"); signatur = signatur.replace("/", "_"); returressurs + "&signatur=" + signatur; ) )

Node JS

Eksemplet nedenfor bruker native node-moduler for å signere en URL. (Last ned koden.)

"bruk streng" const krypto = require("krypto"); const url = require("url"); /** * Konverter fra "nettsikker" base64 til ekte base64. * * @param (streng) safeEncodedString Koden du vil oversette * fra et nettsikkert skjema. * @return (streng) */ funksjon removeWebSafe(safeEncodedString) ( return safeEncodedString.replace(/-/g, "+").replace(/_/g, "/"); ) /** * Konverter fra sann base64 til "nettsikker" base64 * * @param (streng) encodedString Koden du ønsker å oversette til et * nettsikkert skjema. * @return (streng) */ funksjon makeWebSafe(encodedString) ( return encodedString.replace(/\+/g, "-").replace(/\//g, "_"); ) /** * Tar en base64-kode og dekoder den. * * @param (streng) kode De kodede dataene. * @return (streng) */ function decodeBase64Hash(code) ( // "new Buffer(...)" er utdatert. Bruk Buffer.from hvis den finnes. return Buffer.from ? Buffer.from(code, "base64" ) : new Buffer(kode, "base64"); ) /** * Tar en nøkkel og signerer dataene med den. * * @param (streng) nøkkel Din unike hemmelige nøkkel. * @param (streng) data Nettadressen som skal signeres. * @return (streng) */ function encodeBase64Hash(nøkkel, data) ( return crypto.createHmac("sha1", nøkkel).update(data).digest("base64"); ) /** * Signer en URL med en hemmelig nøkkel. * * @param (streng) bane Nettadressen du vil signere. * @param (streng) secret Din unike hemmelige nøkkel. * @return (streng) */ function sign(path, secret) ( const uri = url.parse(path); const safeSecret = decodeBase64Hash(removeWebSafe(secret)); const hashedSignature = makeWebSafe(encodeBase64Hash(safeSecret, uri.path) ); return url.format(uri) + "&signature=" + hashedSignature; )

C#

Eksemplet nedenfor bruker standard System.Security.Cryptography-biblioteket for å signere en URL-forespørsel. Merk at vi må konvertere standard Base64-koding for å implementere en URL-sikker versjon. (Last ned koden.)

Bruke System; bruker System.Collections.Generic; ved hjelp av System.Security.Cryptography; bruker System.Text; bruker System.Text.RegularExpressions; bruker System.Web; navneområde SignUrl ( offentlig struktur GoogleSignedUrl ( offentlig statisk streng Sign(string url, string keyString) ( ASCIIEncoding encoding = new ASCIIEncoding(); // konvertering av nøkkel til byte vil gi et unntak, må erstatte "-" og "_" tegn først .string usablePrivateKey = keyString.Replace("-", "+").Replace("_", "/");byte privateKeyBytes = Convert.FromBase64String(usablePrivateKey); Uri uri= ny Uri(url); byte encodedPathAndQueryBytes = encoding.GetBytes(uri.LocalPath + uri.Query); // beregne hash-algoritmen HMACSHA1 = new HMACSHA1(privateKeyBytes); byte hash = algorithm.ComputeHash(encodedPathAndQueryBytes); // konverter byte til streng og gjør url-sikker ved å erstatte "+" og "/" tegn string signatur = Convert.ToBase64String(hash).Replace("+", "-").Replace("/", " _"); // Legg til signaturen til den eksisterende URIen. returner uri.Scheme+"://"+uri.Host+uri.LocalPath + uri.Query +"&signature=" + signatur; ) ) class Program ( static void Main() ( // Merk: Vanligvis bør du lagre din private nøkkel et trygt sted // og lese dem inn i koden const string keyString = "DIN_PRIVATE_KEY"; // URL-en vist i disse eksemplene er en statisk URL som allerede skal // være URL-kodet. I praksis vil du sannsynligvis ha kode // som setter sammen URL-en din fra bruker- eller nettjenesteinndata // og kobler disse verdiene inn i parameterne. const string urlString = " YOUR_URL_TO_SIGN" ; string inputUrl = null; string inputKey = null; Console.WriteLine("Skriv inn URL-en (må være URL-kodet) for å signere: "); inputUrl = Console.ReadLine(); if (inputUrl.Length == 0 ) ( inputUrl = urlString; ) Console.WriteLine("Skriv inn den private nøkkelen for å signere URLen: "); inputKey = Console.ReadLine(); if (inputKey.Length == 0) ( inputKey = keyString; ) Console.WriteLine (GoogleSignedUrl .Sign(inputUrl,inputKey)); ) ) )

For testformål kan du teste følgende URL og private nøkkel for å se om den genererer riktig signatur. Vær oppmerksom på at denne private nøkkelen kun er for testformål og vil ikke bli validert av noen Google-tjenester.

  • URL: https://maps.googleapis.com/maps/api/geocode/json?address=New+York&client= klient-ID
  • Privat nøkkel: vNIXE0xscrmjlyV-12Nj_BvUPaw=
  • URL-del som skal signeres: /maps/api/geocode/json?address=New+York&client= klient-ID
  • Signatur: chaRF2hTJKOScPr-RQCEhZbSzIE=
  • Fullsignert URL: https://maps.googleapis.com/maps/api/geocode/json?address=New+York&client= clientID &signature=chaRF2hTJKOScPr-RQCEhZbSzIE=

Eksempler på flere språk

Eksempler som dekker flere språk er tilgjengelige i url-signeringsprosjektet.

Mer om din private kryptografiske nøkkel

Din private kryptografiske URL-signeringsnøkkel vil bli utstedt med din klient-ID og er en "hemmelig delt nøkkel" mellom deg og Google. Denne signeringsnøkkelen er din alene og er unik for din klient-ID. Av den grunn, vennligst oppbevar signeringsnøkkelen din. Denne nøkkelen skal ikke sendes i alle forespørsler, lagres på nettsteder eller legges ut på et offentlig forum. Alle som får tak i denne signeringsnøkkelen kan forfalske forespørsler ved å bruke identiteten din.

Merk: Denne private kryptografiske signeringsnøkkelen er ikke det samme som API-nøklene utstedt av Google Cloud Platform Console.

Hvis du har mistet din private kryptografiske nøkkel, logger du på Google Cloud Support Portal og klikker Kart: Administrer klient-ID for å hente den.

Begrenser en API-nøkkel

Google Kart APIer er tilgjengelige via HTTP-netttjenester, for nettlesere og Android- eller iOS-apper. APIer i enhver plattform kan bruke en ubegrenset API-nøkkel. Du kan eventuelt legge til en begrensning (for eksempel IP-adresser) til API-nøkkelen. Når den er begrenset, vil en nøkkel bare fungere på plattformer som støtter den typen begrensning.

Merk: Før du flytter appen eller nettstedet til produksjon, anbefales det at du sikrer API-nøkkelen din ved å legge til en begrensning. For å lære mer, se og Sikre en API-nøkkel.

For å legge til begrensninger for en API-nøkkel, gjør følgende:

Feilsøking av autentiseringsproblemer

Hvis forespørselen din er feilformet eller gir en ugyldig signatur, returnerer Geocoding API en HTTP 403 (Forbidden) feil.

For å feilsøke individuelle URL-er kan du bruke URL Signing Debugger . Den lar deg raskt validere en URL og signatur generert av applikasjonen din.

Alternativt kan Google Maps APIs Premium Plan-kunder feilsøke individuelle nettadresser ved å logge på Google Cloud Support Portal og velge Ressurser > Google Maps APIer Premium Plan online verktøy > URL Signing Debugger for Web Service og bilde APIer.

Med mindre annet er angitt, innholdet av denne siden er lisensiert under Creative Commons Attribution 3.0-lisensen, og kodeeksempler er lisensiert under Apache 2.0-lisensen. For detaljer, se vår. Java er et registrert varemerke for Oracle og/eller dets tilknyttede selskaper.

API-nøkler overføres i følgende form: nøkkel-ID og Ver.code
API-nøkkelen for å få utvidede rettigheter i selskapet vårt må sendes med post i spillet til Mrs First Teacher

For å få utvidede rettigheter i vårt selskap, trenger du alle de avmerkede elementene.

Vær oppmerksom på pilen ved siden av elementet "tegn". Ordet "Alle" skal være der. Dette er også veldig viktig. Selv om du bare har ett tegn på kontoen din.
Det bør også være en avmerkingsboks i avsnittet om nøkkelens utløpsdato.
Hvis du forlater selskapet vårt, kan denne nøkkelen alltid slettes og en ny opprettes.

Hva er API-nøkler

En API-nøkkel er en spesiallaget kombinasjon av et tall og en bekreftelseskode.
(Det er ikke knyttet til kontopålogging eller passord. Det er knyttet til tegnene og opprettes i kontoen.)
Den ble laget av utviklerne spesielt for skrivebeskyttet tilgang til informasjon om karakterer.
API-nøkler lar tredjepartsprogrammer bare se data om karakteren, hans selskap osv. De kan ikke endre parametere i spillet.
All informasjon gis kun i lesemodus; du kan ikke endre noe hvis du har en hvilken som helst type API-nøkkel!
Hvis du trenger en nøkkel som er forskjellig fra kravene våre, kan du få den på spillnettstedet på https://community.eveonline.com/support/api-key/
Ved å skrive inn denne adressen kommer du til påloggingssiden.
Etter å ha skrevet inn brukernavn og passord, vil du se nøkkelgenereringssiden.
Du kan velge hvilken informasjon som skal gis for nøkkelen.
Generelt kan du lage en rekke nøkler uten å slette gamle.
Nøkler kan opprettes, redigeres og slettes.

Instruksjoner i bilder:

Spillet har et støttenettsted, adressen er http://support.eveonline.com
Hvis du er i tvil, kan du alltid se i adressefeltet. Fra denne siden kan du gå til delen for å lage og redigere API-nøkler.
Vi kommer til siden for innlogging/passord. La oss gå inn.
Her er den, siden for å lage og redigere nøkler.


Slik ser siden for å lage en egen nøkkel ut. Vær oppmerksom på de uthevede fragmentene.
"Send"-knappen nederst er også tegnet av en grunn, den lagrer nøkkelen.

Nå som nøkkelen er lagret og klar, sørger vi nok en gang for at den oppfyller våre forespørsler og kopierer den direkte fra nettleseren til e-post eller chat der det er nødvendig.


Ved å klikke på "Send"-knappen nederst på denne siden, lagrer du nøkkelen og kommer tilbake til api-nøkler-siden:

Her er hva de svarer på spørsmålet "hva er en API-nøkkel?" KKP selv:

En API-nøkkel er en nøkkel for å få tilgang til informasjon om en karakter, uten hvilken programmer skrevet av spillere (som EVEMon) ikke vil kunne få tak i denne informasjonen. Hver konto kan ha flere nøkler (en liste over nøkler er tilgjengelig), men i utgangspunktet er det ingen i det hele tatt; de opprettes på denne siden, og for hver nøkkel bestemmes det nøyaktig hva den "åpner" - du kan for eksempel begrense deg til informasjon om pengeoverføringer i spillet (WalletJournal) og eiendom som eies av karakteren (AssetList), eller du kan åpne absolutt alt, inkludert e-post i spillet (MailMessages + MailBodies). Nøkler kan bli ødelagt når som helst, og fullstendig avskjære tilgangen til tredjepartsprogrammer. Spillet gir ikke ut noen virkelig viktig informasjon (pålogging, passord, for- og etternavn til kontoeieren, kredittkortinformasjon, etc.); Du (eller noen andre) vil ikke kunne endre noe i spillet ved å bruke EVE API.

Kravet om å gi selskapet en nøkkel er ganske vanlig. Lag en nøkkel med innstillingene spesifisert i opptaksreglene (eller på selskapsforumet) og gi den til vennene dine; å utstede en selskapsnøkkel er både et tegn på tillit og et bidrag til å sikre intern sikkerhet ("Misha, hvorfor har du et skip i din personlige hangar som Petya forlot på POS i går? Misha, hvorfor gjorde selskapet som vi kjemper med overføre deg 100kk? Misha, hvorfor laster du ned Defender Missiles på 5?”).

Introduksjon

Jeg vil starte med å oversette et lite spørreskjema som ligger på nøkkeladministrasjonssiden på det offisielle nettstedet EVE Online. Dette spørreskjemaet vil hjelpe deg med å raskt forstå problemet for de som nettopp har begynt å spille EVE og forstår ikke helt hvorfor de trengs i det hele tatt API-nøkler, og hele systemet EVE Online API i det hele tatt.

Hva er en "API-nøkkel"? Hvordan kan jeg bruke det?

API-nøkkel- en personlig kode som identifiserer kontoen din i spillet og lar tredjepartsapplikasjoner få informasjon om karakterene dine og bedriftene dine. Ved å bruke slik informasjon kan disse programmene for eksempel tillate deg å utvikle en karakterutviklingsplan for det kommende året, finne ut kostnadene for mineraler som er lagret på stasjonene dine (basert på historien om transaksjoner i markedet), etc.

Hvor kan jeg få tak i EVE Online API-nøkkelen?

Alle dine EVE Online API-nøkler er tilgjengelige på API-administrasjonssiden på spillets offisielle nettsted.

Det er trygt? Vil ingen stjele tilgang til kontoen min?

Overføring av en API-nøkkel til tredjepartsapplikasjoner gir ingen tilgang til å administrere kontoen din.. Du kan kun administrere din EVE Online-konto ved å bruke brukernavnet og passordet ditt, som du ikke må dele med noen. De som bruker API-nøklene dine vil ikke kunne gå inn i spillet og handle der på dine vegne, og ingen vil kunne poste på forumet med kun API-nøkkelen din. I tillegg er passordet ditt ikke på noen måte involvert i API-nøkkelgenereringsalgoritmen, så angripere vil ikke kunne skaffe passordet ditt basert på nøkkelen ved å dekode det på en eller annen måte.

Jeg er fortsatt ikke imponert, og jeg liker det ikke

Hvis du tror at API-nøklene dine i feil hender kan utgjøre en trussel mot sikkerheten til kontoen din, ikke gi dem til noen. Og du er ansvarlig for hvordan informasjonen innhentet gjennom API-nøklene dine brukes.

Jeg ga API-nøklene mine til andre mennesker, men nå vil jeg at de skal slutte å bruke dem

Hvis det ikke er noen annen måte å hindre andre i å bruke nøklene dine, kan du slette den tilsvarende nøkkelen på kontoadministrasjonssiden ( https://support.eveonline.com/api), eller bare endre parameteren Bekreftelseskode. Vær oppmerksom på at etter dette vil alle personer uten unntak miste muligheten til å bruke denne nøkkelen. Hvis du er imot bruken av nøklene dine av noen mennesker og ikke alle, gi oppdatert informasjon om nøklene dine til de du vil gi tilgang til å bruke dem.

Du kan også se historikken for bruken av nøklene dine (dette inkluderer informasjon om hvilken IP-adresse samtalen kom fra, navnet på den oppringte API-funksjoner og det nøyaktige tidspunktet det skjedde).

Bildet er klikkbart

Nøkkelfunksjoner til egendefinerte nøkler

CCP Elerhino skrev i sin devblogg om funksjonene til tilpassede API-nøkler:

  • opptil 10 nøkler på én konto;
  • tilpassbar API-tilgang + maler;
  • tilpassbar utløpsdato;
  • separat tilgang til bedrifts- og personlig informasjon;
  • taster både for et enkelt tegn og for alle tegn på kontoen.

Grunnlaget for det nye API-nøkkelsystemet er basert på to pilarer: kontroll over sammensetningen av informasjon som er tilgjengelig innenfor en gitt nøkkel og kontroll over tiden slik tilgang skal gis. Hvis du for eksempel vil gi direktøren for selskapet ditt informasjon om hvor mye du har ISK i lommeboken kan du opprette en nøkkel med riktig tilgang. Hvis du vil at han skal kunne finne ut slik informasjon først i dag, kan du gjøre de riktige innstillingene.

Egendefinerte taster lar deg gi tilgang til informasjon for både ett tegn og alle tegn på kontoen. Hvis piloten er administrerende direktør i et aksjeselskap eller en direktør, kan han opprette en bedriftsnøkkel.

Maler betyr muligheten til å generere en nøkkel med en forhåndsdefinert endelig tilgangsmaske. Dette punktet er beskrevet mer detaljert nedenfor - i avsnittet som beskriver automatisk nøkkelgenerering.

For å bruke nye nøkler vil det være nok å erstatte i samtaler API-funksjoner alternativer bruker-ID Og apiKeynøkkelID Og vCode(både navn og betydninger).

API Key Management

På det tidspunktet EVE Online: Incarna 1.1-oppdateringen ble installert, kan nøkkeladministrasjonssiden se slik ut:


Bildet er klikkbart

Nye nøkler er ennå ikke opprettet, og gamle nøkler er plassert i en egen tabell, med en merknad om at de er utdaterte. Vår oppgave er dette øyeblikket: forstå hvordan du oppretter en ny API-nøkkel. Så velg lenken " Opprett API-nøkkel" En side åpnes hvor nye nøkler kan opprettes og eksisterende kan redigeres.


Betydningen av feltene er som følger:

Navn. Dette feltet angir navnet på nøkkelen. Navnet vises i nøkkellistetabellen og er kun for din bekvemmelighet og brukes ikke i noen samtaler.

Bekreftelseskode. Bekreftelseskoden er et slags passord. Du kan angi det selv eller bruke "generer"-lenken for å generere et tilfeldig sett med tegn. Utviklerne anbefaler å bruke en kode hvis lengde vil være mer enn 20 tegn. Det ideelle alternativet er 64 tegn. Jo lengre koden er, desto vanskeligere er den å finne.

Karakter. Dette feltet angir hvilket tegn i kontoen din denne nøkkelen vil være knyttet til. Hvis "All"-verdien er valgt, kan tasten brukes til å få relevant informasjon om hver av tegnene.

Type. En tilpasset API-nøkkel lar deg skille karakter- og selskapsinformasjon. Det finnes to typer nøkler: bedriftsnøkler og personlig. For å opprette en bedriftsnøkkel, må tegnet valgt i forrige felt ha passende roller i bedriften. Hvis karakteren ikke har slike roller, eller "Tegn"-feltet er satt til "Alle", vil det ikke bli opprettet en bedriftsnøkkel. Settet med funksjoner som er tilgjengelige for å angi tillatelser, avhenger også av verdien til dette feltet. Du vil for eksempel ikke kunne velge CharacterInfo-funksjonen hvis nøkkelen er opprettet av en bedriftsnøkkel.

Tilgangsmaske. Dette feltet er til informasjonsformål. Det er umulig å legge inn informasjon i den, men den viser en sammendragsmaske for funksjonene du har valgt for denne tasten.

Utløper. Det er mulig å få nøkkelen til å slutte å virke etter en viss dato. Det er dette feltet er ment for. Nøkkelen fungerer til den angitte datoen (inklusive). Hvis avmerkingsboksen "Ingen utløp" er merket av, vil nøkkelen være gyldig for alltid.

keyID og vCode

Etter å ha opprettet nøkkelen, må vi finne ut verdiene nøkkelID Og vCode. MED vCode alt er klart - dette er verdien du har angitt i feltet " Bekreftelseskode" når du oppretter en nøkkel. Men ingen identifikator var synlig. Identifikator nøkkelID finnes i listen over nøkler.


Bildet er klikkbart

Bildet viser det nøkkelID for den opprettede nøkkelen er lik 1312 - den første kolonnen ( ID) i en tabell med en liste over nøkler.

Nøkkelbekreftelse

En API-funksjon ble opprettet for å bekrefte nøkkelen /account/APIKeyInfo.xml.aspx, som nøkkelID og vCode sendes som parametere. Funksjonskallet returnerer en XML-fil med informasjon om denne nøkkelen. For eksempel kan utgangen være slik:

    versjon="1.0" encoding="UTF-8" ?>

    > 2011-09-04 17:42:23>

    >

    "characterID,characterName,corporationID,corporationName">

    >

    >

    >

    > 2011-09-04 17:47:23>

    >

Fra listen ovenfor er det klart at dette er en personlig nøkkel for ett tegn, masken er 8192 (bare funksjonsanropet Medaljer), og nøkkelens gyldighetsperiode er ikke begrenset av tid.

Automatisk nøkkelgenerering

Skaperne av EVE Online API har gitt muligheten for automatisk generering for grupper av mennesker som må generere en nøkkel med et gitt sett med funksjoner. For eksempel er det en applikasjon som viser en liste over medaljer for en bestemt krets av mennesker. Utvikleren av denne applikasjonen, i stedet for å gå inn i lange forklaringer for hver person, tilbyr å bruke en lenke som vil bidra til å generere en nøkkel med den nødvendige tilgangsmasken. Hver interessert følger denne lenken, skriver inn navn på nøkkel og utløpsdato (dette er to felt som ikke fylles ut automatisk i dette tilfellet) og mottar en ferdig nøkkel med et minimum av oppstyr.

La oss se på hvordan dette generasjonssystemet fungerer.

Http://support.eveonline.com/api/Key/CreatePredefined/(accessMask)/(characterID)/(isCorporationKey(true/false))

  • (tilgangsmaske)- nøkkelmaske;
  • (karakter-ID)- identifikator for tegnet som denne nøkkelen er knyttet til;
  • (isCorporationKey(true/false))- mening ekte indikerer at dette er en bedriftsnøkkel, og falsk– fordi det er personlig.

Noen av disse parameterne kan være valgfrie i visse tilfeller. Ved generering av en personlig nøkkel kan du ikke spesifisere parameterverdiene (karakter-ID) Og (isCorporationKey). I dette tilfellet vil det bli opprettet en personlig nøkkel for alle karakterene på denne brukeren. Eksempler på lenker for automatisk nøkkelgenerering kan være:

  • Personlig: http://support.eveonline.com/api/Key/CreatePredefined/9830414 (for alle tegn på kontoen)
  • Personlig: http://support.eveonline.com/api/Key/CreatePredefined/9830414/150145448 (for tegn med ID 150145448)
  • Personlig: http://support.eveonline.com/api/Key/CreatePredefined/9830414/150145448/false (for et tegn med identifikator 150145448 og en eksplisitt indikasjon på at dette er en personlig nøkkel)
  • Bedrift: http://support.eveonline.com/api/Key/CreatePredefined/9830414/150145448/true (for et tegn med ID 150145448 og en eksplisitt indikasjon på at dette er en bedriftsnøkkel)

Forresten, en bedriftsnøkkel kan bare opprettes administrerende direktør selskaper. Eller regissøren.

En ting til om disse koblingene: pass opp for phishing-svindel. Noen skruppelløse mennesker kan gi deg, under dekke av en normal en, en lenke til nettstedet deres, som utad ikke kan skilles fra det offisielle nettstedet, der du, etter å ha vist uoppmerksomhet, skriver inn brukernavnet og passordet for kontoen din. Vær alltid oppmerksom på hva adressen inneholder support.eveonline.com, og ikke en annen server.