Uwierzytelnianie agentów AI: przypadki użycia i potrzeby dotyczące tożsamości
2025 to rok AI. W miarę rozwoju LLM-ów i doświadczeń z agentami pojawiają się nowe wyzwania w zakresie uwierzytelniania i autoryzacji. Ten artykuł bada interakcje agentów AI, podkreślając kluczowe scenariusze bezpieczeństwa i uwierzytelniania.
2025 zapowiada się jako rok AI. Z szybkim wzrostem LLM-ów i doświadczeń z agentami często pytamy: Jak przyjąć tę nową erę? Jakie są nowe przypadki użycia uwierzytelniania i autoryzacji agentów AI? W tym artykule zbadamy typowe doświadczenia z agentami i wskażemy scenariusze bezpieczeństwa i autoryzacji w drodze.
Doświadczenie uwierzytelniania agenta operatora ChatGPT
Niedawno kupiłem Operatora ChatGPT i przeanalizowałem kilka wspólnych przepływów pracy. Jednym z przykładów była rezerwacja pobytu w Tokio, Japonia. Operator uczynił to niezwykle prostym, znajdując odpowiedni pokój na podstawie mojego polecenia.
Podczas realizacji transakcji poprosił mnie o zalogowanie się, a następnie przekazał mi kontrolę.
To doświadczenie sprawiło, że poczułem się nieswojo. Mimo że miałem kontrolę i agent nie mógł się za mnie zalogować, musiałem wpisać swój e-mail i hasło w przeglądarce Operatora. Oznacza to, że jeśli logujesz się do swojej poczty (lub innej usługi) za pośrednictwem Operatora, twoje dane logowania są przechowywane w ciasteczkach.
Operator OpenAI stwierdza, że nigdy nie przechowuje danych logowania użytkowników i przestrzega standardów zgodności, takich jak SOC II. Jednak gdy agenci zewnętrzni wchodzą w interakcje z zewnętrznymi usługami w Twoim imieniu, ryzyko bezpieczeństwa znacząco rośnie.
Ogólnie rzecz biorąc, bezpośrednie przekazywanie agentowi dostępu do konta i danych logowania to zły pomysł.
Nadal istnieje dużo miejsca na poprawę. W następnej sekcji przeanalizuję różne podejścia do uwierzytelniania i zarządzania uprawnieniami, rozważając ich zalety i wady.
Jak omówiono w wątku X Threads.
Jak są obsługiwane dane logowania i jakie są zagrożenia bezpieczeństwa?
Bezpośrednie przekazywanie danych logowania agentowi AI
W tym podejściu AI wprowadza na twoim koncie dane logowania w postaci jawnego tekstu (takie jak e-mail i hasło). Na przykład agent AI może poprosić o Twoje dane logowania i wprowadzić je za Ciebie.
Jednak ta metoda niesie ze sobą ryzyko bezpieczeństwa, ponieważ może ujawniać wrażliwe informacje. W przypadku konieczności wdrożenia lepiej zintegrować menedżera haseł lub system zarządzania tajemnicami. Ponadto ograniczenie czasu przechowywania danych logowania może pomóc w zminimalizowaniu ryzyka wycieków.
Zamiast jawnego przekazywania danych, Personal Access Tokens (PATs) oferują bardziej bezpieczny sposób na przyznanie dostępu bez wymagania hasła lub interaktywnego logowania. PATs są przydatne w CI/CD, skryptach i zautomatyzowanych aplikacjach, które muszą programowo uzyskiwać dostęp do zasobów. Aby zwiększyć bezpieczeństwo, najlepiej ograniczyć zakres PATs, ustawić czasy wygaśnięcia i umożliwić ich odwoływanie, aby zapobiec wyciekom i przejęciom konta.
Delegacja użytkownika przez OAuth
OAuth (Open Authorization) to szeroko stosowany standard dla delegowanego uwierzytelniania w sieci. Umożliwia użytkownikom przyznanie ograniczonego dostępu aplikacji zewnętrznej do ich danych na innym serwisie bez udostępniania danych logowania.
W istocie OAuth rozwiązuje problem bezpiecznego delegowania dostępu: na przykład, można upoważnić aplikację podróżną do odczytania Twojego Kalendarza Google bez podawania aplikacji swojego hasła do Google. To jest osiągane poprzez uwierzytelnianie użytkownika u dostawcy danych (np. Google), a następnie wydanie tokenów do aplikacji zewnętrznej zamiast ujawniania danych logowania użytkownika.
Lepszym sposobem radzenia sobie z tym scenariuszem jest upoważnienie Operatora ChatGPT (lub innego agenta) do odczytywania i pisania na Airbnb bez udostępniania hasła lub danych logowania. Zamiast bezpośredniego logowania Operatora, możesz przyznać dostęp poprzez bezpieczny proces autoryzacji.
Moim zdaniem, jeśli Operator OpenAI chce zwiększyć zaufanie i bezpieczeństwo tożsamości, istnieje kilka sposobów na osiągnięcie tego celu.
-
Przenieś proces logowania poza Operatora: Obsługuj logowanie użytkownika poza Operatorem ChatGPT. Oznacza to, że możesz kliknąć przycisk „Zaloguj się za pomocą [Usługi]” i zostać przekierowanym na bezpieczną stronę logowania serwisu w celu uwierzytelnienia siebie, całkowicie poza czatem lub operatorem ChatGPT. Na przykład, gdyby istniała wtyczka Airbnb, zostałbyś wysłany na stronę internetową Airbnb, aby wprowadzić swoje dane logowania i upoważnić ChatGPT, a następnie wtyczka otrzymałaby token. ChatGPT otrzymuje tylko tymczasowy token dostępu lub klucz, który przyznaje ograniczony dostęp (np. „przeczytaj mój plan podróży”), zamiast widzieć twoje rzeczywiste hasło.
-
Ukończ przepływ zgody przed agentem AI wykonać jakieś zadania. To podejście jest podobne do tego, jak wiele produktów obsługuje integracje, rynki i połączone usługi.
Strony połączenia Notion
Oto kolejny przykład, podobnie jak integracja rynkowa Slacka z Notion. Slack żąda dostępu do konkretnego miejsca pracy Notion, może czytać artykuły i prezentować je w kanałach Slacka.
Równocześnie Slack również udostępnia stronę zgody, aby autoryzować Notion w dostępu do tej przestrzeni roboczej podczas tego procesu.
Operator ChatGPT powinien przyjąć podobne podejście, integrując OAuth, pozwalając tym samym agentowi na bezpieczny dostęp do wielu usług zewnętrznych. W ten sposób może uzyskać tokeny dostępu z niezbędnymi uprawnieniami do bezpiecznego wykonywania zadań.
Uwierzytelnianie krokowe dla działań wrażliwych
Agent AI może obsługiwać rutynowe zadania niezależnie i autonomicznie, ale dla działań wysokiego ryzyka wymagana jest dodatkowa weryfikacja w celu zapewnienia bezpieczeństwa, — such as przesyłanie funduszy lub zmiana ustawień bezpieczeństwa — użytkownik musi zweryfikować swoją tożsamość przez multi-factor authentication (MFA). To można zrobić za pomocą powiadomień push, one-time passwords (OTPs) lub potwierdzenia biometrycznego.
Jednak częste dodatkowe uwierzytelnianie może prowadzić do frustracji użytkownika, szczególnie jeśli wyzwalane jest zbyt często. Dlatego doświadczenie specyficzne dla agenta musi przemyśleć doświadczenie użytkownika na tej nowej paradygmacie.
Aby zwiększyć bezpieczeństwo bez konieczności kompromisów w zakresie doświadczenia użytkownika, adaptive authentication and MFA należy używać, aby określić, kiedy dodatkowa weryfikacja jest konieczna. Wyzwalacze oparte na ryzyku, takie jak zmiany adresu IP lub nietypowe zachowanie, pomagają zminimalizować niepotrzebne żądania uwierzytelniania.
Federacyjna tożsamość i single sign-On (SSO) dla ekosystemów z wieloma agentami
W ekosystemie przedsiębiorstwa z wieloma agentami, agenci AI często muszą wchodzić w interakcję z różnymi platformami. Aby usprawnić uwierzytelnianie, użytkownicy uwierzytelniają się raz za pośrednictwem dostawcy tożsamości (IdP), takiego jak Okta, Azure AD czy Google Workspace. Agenci następnie uwierzytelniają się używając SAML, OpenID Connect (OIDC), z dostępem zarządzanym przez role-based (RBAC) lub attribute-based (ABAC) kontrolę dostępu.
To podejście eliminuje konieczność wielokrotnego logowania się przez użytkowników, jednocześnie zwiększając bezpieczeństwo i zgodność dzięki scentralizowanemu zarządzaniu tożsamościami. Pozwala także na dynamiczne polityki dostępu, zapewniając, że agenci działają w ramach określonych uprawnień.
Zarządzanie zakresem i uprawnieniami
Ponieważ Operatorzy i Agenci mogą działać w imieniu użytkowników, ważne jest, aby zapewnić ludziom wystarczającą kontrolę i starannie zdefiniować uprawnienia agentów AI. Dwie kluczowe zasady, które należy przestrzegać, to:
- Minimalne przywileje – Udzielaj tylko tych uprawnień, które są niezbędne do wykonania zadania.
- Czasowy dostęp – Ogranicz czas trwania dostępu, aby zmniejszyć ryzyko bezpieczeństwa.
Role-Based Access Control (RBAC) pomaga zarządzać zakresem agenta, przypisując mu konkretne role do określonych zadań. Dla bardziej szczegółowej kontroli, Attribute-Based Access Control (ABAC) pozwala na dynamiczne, świadome kontekstu zarządzanie uprawnieniami, zapewniając, że agenci AI mają dostęp tylko do tego, czego potrzebują w danym momencie.
Połącz serwery MCP z Auth
MCP staje się coraz bardziej popularne w celu ulepszania agentów AI, dostarczając więcej informacji kontekstowych i poprawiając ogólną wydajność oraz doświadczenie użytkownika.
Dlaczego serwer MCP jest związany z uwierzytelnianiem i dlaczego ma to znaczenie?
Wcześniej napisaliśmy artykuł, aby pomóc Ci zrozumieć czym jest serwer MCP.
Serwer MCP jest kluczowym elementem Model Context Protocol, działającym jako pomost między modelami AI a zewnętrznymi źródłami danych. Umożliwia on rzeczywiste zapytania i pobieranie danych z usług, takich jak Slack, Gmail i Kalendarz Google. Tworząc serwer MCP, możesz połączyć te zdalne usługi z LLM-ami, ulepszając swoje aplikacje z wykorzystaniem AI lepszym kontekstem i mądrzejszym wykonywaniem zadań.
W przeciwieństwie do systemów Retrieval-Augmented Generation (RAG), które wymagają generowania embedingów i przechowywania dokumentów w bazach danych wektorowych, serwer MCP uzyskuje dostęp do danych bezpośrednio bez wcześniejszego indeksowania. Oznacza to, że informacje są nie tylko bardziej precyzyjne i aktualne, ale również integrują się z niższym obciążeniem obliczeniowym, bez kompromisów w zakresie bezpieczeństwa.
Odnośnik: https://norahsakal.com/blog/mcp-vs-api-model-context-protocol-explained
Dla agentów AI korzystających z serwera MCP, występuje wiele interakcji między MCP server
, LLM
, agent
a user
.
W dzisiejszym świecie napędzanym sztuczną inteligencją, gdzie agenci zarządzają wieloma zadaniami na różnych usługach, integracja z wieloma serwerami MCP staje się coraz bardziej pożądana.
Uwierzytelnianie agenta jest na wschodzie – twój produkt powinien się dostosować
Doskonałym przykładem jest Composio.dev, platforma integracji zorientowana na deweloperów, która upraszcza sposób, w jaki agenci AI i LLM-y łączą się z aplikacjami zewnętrznymi i usługami. Nazwana „Auth for AI Agents to Act on Users’ Behalf,” w gruncie rzeczy dostarcza kolekcji serwerów MCP (connectors), które mogą być łatwo zintegrowane z produktami wykorzystującymi AI.
Jako ktoś w dziedzinie uwierzytelniania, ale w rzeczywistości to tylko mała część szerokiego pola CIAM (Customer Identity and Access Management). To, co zbudowali, to de facto zbiór serwerów MCP (connectors) – użyteczne, ale tylko kawałek tego, co pełne rozwiązania CIAM obejmują.
Kontynuując wcześniejsze przykłady, jeśli weźmiemy pod uwagę Google Drive (usługi zdalne) jako serwer MCP zamiast Airbnb, staje się to więcej niż tylko integracją zewnętrzną — działa jako zewnętrzne źródło danych. Umożliwia to agentowi dostęp do informacji kontekstowych, interakcję z LLM i ewentualnie uzyskanie uprawnień do tworzenia, odczytu, aktualizacji i usuwania (CRUD) plików.
Jednak podstawowe wymagania dotyczące uwierzytelniania i autoryzacji pozostają takie same.
Użyj Logto do obsługi uwierzytelniania dla produktów agenta
Logto jest wszechstronnym rozwiązaniem CIAM, które wspiera produkty SaaS i agentów AI, sprawiając, że uwierzytelnianie i autoryzacja są bezproblemowe. Oto dlaczego:
- Zarządzane uwierzytelnianie dla produktów agentów AI – Logto wspiera OAuth 2.0, SAML, klucze API, Personal Access Tokens i JWT, umożliwiając łatwą integrację z wieloma serwerami MCP. Możesz nawet zbudować własny serwer MCP i podłączyć go do Logto, dzięki jego otwartemu standardowi.
- Możliwości dostawcy tożsamości (IdP) – Gdy twój produkt ma już ustalonych użytkowników, Logto może działać jako IdP, przekształcając twoją usługę w serwer MCP i integrując ją w ekosystemie AI.
- Zaawansowana autoryzacja
- Role-based access control (RBAC) do zarządzania rolami użytkowników
- Niestandardowy JWT-based ABAC do precyzyjnego, dynamicznego zarządzania dostępem
- Zwiększone bezpieczeństwo – Funkcje takie jak multi-factor authentication (MFA) i step-up authentication pomagają zabezpieczyć krytyczne działania i zwiększyć bezpieczeństwo agenta.
Masz pytania? Skontaktuj się z naszym zespołem, aby dowiedzieć się, jak Logto może poprawić twoje doświadczenia z agentami AI i spełnić twoje potrzeby w zakresie bezpieczeństwa.