Czym jest OAuth?
OAuth 2.0 to otwarta platforma autoryzacji umożliwiająca aplikacji trzeciej strony uzyskanie ograniczonego dostępu do zasobów użytkownika w innej usłudze — takich jak jego profil lub dane — bez konieczności udostępniania hasła użytkownika tej stronie trzeciej.
Znane również jako: OAuth 2.0, OAuth2, open authorization
OAuth rozwiązuje konkretny problem: jak przyznać aplikacji dostęp do twoich danych w innej usłudze bez podawania jej hasła? Przed OAuth odpowiedzią było często bezpośrednie przekazanie poświadczeń — praktyka zapewniająca nieograniczony dostęp bez możliwości selektywnego unieważnienia. OAuth wprowadza koncepcję delegowanej autoryzacji przez tokeny dostępu z ograniczonym zakresem i czasem życia.
Przepływ OAuth 2.0 obejmuje cztery strony: właściciela zasobu (użytkownika), klienta (aplikację trzeciej strony), serwer autoryzacji (wydający tokeny) i serwer zasobów (przechowujący dane użytkownika). Użytkownik uwierzytelnia się na serwerze autoryzacji, przyznaje klientowi określone uprawnienia, a klient otrzymuje token dostępu. Ten token służy do dostępu do zasobów użytkownika bez ujawniania klientowi hasła użytkownika.
OAuth 2.0 definiuje kilka typów przepływów dla różnych scenariuszy: przepływ kodu autoryzacyjnego (dla aplikacji serwerowych), przepływ kodu autoryzacyjnego z PKCE (dla klientów publicznych, jak aplikacje mobilne i jednostronicowe), poświadczenia klienta (dla komunikacji między maszynami) i przepływ kodu urządzenia (dla urządzeń z ograniczonym wejściem). Platforma jest rozszerzana przez OpenID Connect (OIDC), który dodaje ustandaryzowaną warstwę tożsamości dla uwierzytelniania na bazie możliwości autoryzacji OAuth.
Jak Vaulted używa OAuth
Vaulted nie implementuje OAuth, ponieważ nie posiada kont użytkowników, integracji z podmiotami zewnętrznymi ani potrzeby delegowanej autoryzacji. Tokeny OAuth są jednak powszechnym rodzajem poufnych poświadczeń wymagających bezpiecznego przesłania — na przykład udostępnienie sekretu klienta konta usługi zespołowi wdrożeniowemu. Vaulted zapewnia bezpieczny kanał do przekazywania takich tokenów bez ujawniania ich w wiadomościach Slack, e-mailach czy systemach zgłoszeń, gdzie pozostawałyby bezterminowo.