GSS-API
Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från
versionen som granskades den 22 november 2019; verifiering kräver
1 redigering .
GSS-API ( GSS , GSSAPI , engelska Generic Security Services API , gemensamt programmeringsgränssnitt för säkerhetstjänster ) - API för åtkomst till säkerhetstjänster. Beskrivs i IETF- standarden . Designad för att lösa problemet med inkompatibilitet med liknande säkerhetstjänster.
Beskrivning
GSS-API:et tillhandahåller i sig inga säkerhetstjänster, utan tillhandahåller ett gränssnitt mellan applikationer och GSSAPI-implementeringar (vanligtvis bibliotek). Dessa bibliotek tillhandahåller ett GSS-API-kompatibelt gränssnitt, så att du kan bygga applikationer som kan fungera med olika säkerhetsbibliotek; så att bibliotek kan ersättas utan att behöva skriva om applikationer.
En utmärkande egenskap hos applikationer som implementeras med GSSAPI är användningen av privata meddelanden (tokens) som döljer implementeringsdetaljer från applikationer på högre nivå. Server- och klientsidan av applikationerna är designade för att interagera med GSSAPI-tokens. Tokens kan vanligtvis överföras över ett osäkert (offentligt) nätverk. Efter att parterna (klient och server) har utbytt ett visst antal meddelanden, informerar GSSAPI-biblioteket båda parter om interaktionen om upprättandet av ett säkert sammanhang .
När ett säkert sammanhang har etablerats kan skyddade programmeddelanden "lindas" (krypteras) med GSSAPI för säker överföring mellan server och klient.
Typiska säkerhetsaspekter som tillhandahålls av bibliotek som implementerar GSSAPI:
- sekretess
- integritet
- äktheten hos båda sidor av informationsutbytet
GSSAPI beskriver cirka 45 samtal. Huvudsakliga:
- GSS_Acquire_cred - Få ett användarbevis på identitet (oftast en privat nyckel, lösenord)
- GSS_Import_name - konvertera namnet på användaren, värd till ett formulär som låter dig definiera ett säkerhetsobjekt
- GSS_Init_sec_context - skapar en klienttoken för att skicka till servern (vanligtvis en utmaning, inom challenge-response (autentisering) -modellen )
- GSS_Accept_sec_context - Hanterar en token skapad med GSS_Init_sec_context och returnerar valfritt en svarstoken
- GSS_Wrap - Konverterar applikationsdata till ett säkert meddelandeformulär (vanligtvis kryptering)
- GSS_Unwrap - extraherar programdata från ett skyddat meddelande (vanligtvis dekryptering)
GSSAPI har standardiserats för C ( RFC 2744 ) och Java ( JSR-072 ).
Begränsningarna för GSSAPI inkluderar att den bara standardiserar autentisering , inte auktorisering , och att den antar en klient- serverarkitektur .
För att förutse uppkomsten av nya säkerhetsmekanismer inkluderar GSSAPI en speciell pseudo-mekanism , SPNEGO , som tillåter upptäckt och användning av mekanismer som inte fanns när applikationen byggdes.
Kommunikation med Kerberos
GSSAPI används ofta tillsammans med Kerberos . Till skillnad från GSSAPI är Kerberos API inte standardiserat (och inkompatibla API:er finns). GSSAPI låter dig använda olika implementeringar av Kerberos utan att ändra din applikationskod.
Relaterade teknologier
Grundläggande GSSAPI-villkor
- Namn (namn) - en binär sträng för att beteckna en identifierare (användarnamn, applikation, etc.) Till exempel använder Kerberos formatet 'användare@REALM för användare och tjänst/värdnamn@REALM för applikationer.
- Credential (identitet) - information som bevisar äktheten av ett objekt (vanligtvis ett lösenord eller privat nyckel).
- Kontext (kontext) - kommunikationskanalens tillstånd
- Token (token) - ett ogenomskinligt (till applikationen) meddelande som skickas under etableringsfasen av anslutningen eller under överföringen av ett säkert meddelande
- Mekanism - Den underliggande GSSAPI-implementeringen som tillhandahåller det faktiska namnet, identiteten och tokens. Typiska mekanismer: Kerberos, NTLM , DCE , SESAME , SPKM , LIPKEY .
- Initiator/acceptor (initiator/mottagare) - den part som skickar den första token är initiatorn ; den motsatta sidan är mottagaren . Vanligtvis är mottagaren servern och initiatorn är klienten.
Historik
- Juli 1991: IETF CAT (Common Authentication Technology) arbetsgruppen träffades i Atlanta under ledning av John Linn
- September 1993: GSSAPI version 1 publicerad ( RFC 1508 , RFC 1509 )
- Maj 1995: SSPI-implementering släppt med Windows NT 3.51
- Juni 1996: Kerberos-mekanismen för GSSAPI släpptes ( RFC 1964 )
- Januari 1997: GSSAPI version 2 ( RFC 2078 )
- Oktober 1997: SASL-standard publicerad, inklusive GSSAPI-mekanism ( RFC 2222 )
- Januari 2000: Uppdatering 1 för GSSAPI version 2 ( RFC 2743 , RFC 2744 )
- Augusti 2004: KITTEN arbetsgruppsmöte (fortsättning av CAT)
- Maj 2006: Standardiserad användning av GSSAPI för SSH ( RFC 4462 )
Se även
Länkar