JWT (JSON Web Token) ve access token aynı kavramlardır
Access token, genellikle OAuth protokolü ile veri değişimi sırasında kullanılan, web içeriğine erişmek için gerekli olan bir bilet olarak düşünülebilir. JWT ise, taraflar arasında JSON objesi halinde, şifreli veya imzalı bilgi aktarılmasını sağlayan bir token türüdür
Token çeşitleri kullanım amaçlarına göre şu şekilde sınıflandırılabilir: Utility token (kullanım tokenı). Security token (menkul kıymet tokenı). Governance token (yönetim tokenı). Stablecoin. NFT (non-fungible token). Credit token. Equity token. Ayrıca, oyun içi tokenlar, sadakat programları tokenları ve merkeziyetsiz finans (DeFi) tokenları gibi daha spesifik token türleri de bulunmaktadır.
Token, en basit tanımıyla bir değeri veya varlığı temsil eden dijital bir varlıktır. Token'ın bazı anlamları: Blok zinciri tabanlı varlık. Ödeme aracı. Proje finansmanı. Hizmet veya ürün erişimi. Yatırım ve mülkiyet temsili. Token'lar, kullanım amaçlarına göre utility, security, governance, stablecoin ve NFT gibi farklı türlere ayrılır.
JWT (JSON Web Token) token, taraflar arasında veri alışverişini ve bunun doğrulamasını sağlayan açık bir standarttır. JWT token'ın kullanım alanlarından bazıları şunlardır: Kimlik doğrulama (authentication). Yetkilendirme (authorization). API'lar arası iletişim. Single Sign-On (SSO). JWT token, bilgilerin güvenli, taşınabilir ve kendi kendine yeten bir şekilde iletilmesini sağlar.
Spring Boot'ta JWT (JSON Web Token) kullanmak için aşağıdaki adımlar izlenebilir: 1. Proje Kurulumu: Spring Security ve JWT token için gerekli bağımlılıklar pom.xml dosyasına eklenir. 2. JWT Util Sınıfı: Jwt.util sınıfı oluşturulur ve bu sınıf içerisinde token oluşturma ve doğrulama için metodlar tanımlanır. 3. Güvenlik Yapılandırması: SecurityConfig.java sınıfında WebSecurityConfigurerAdapter'dan extend edilerek veritabanı yapılandırması yapılır. 4. Token Oluşturma: AuthenticationRequest.java sınıfı ile postman üzerinden kullanıcı adı ve şifre gönderilerek token oluşturulur. 5. Token Doğrulama: LoginController içinde post işlemi yapılarak JWT değeri alınır ve bu değer SecurityConfig içinde yetkilendirmede belirtilir. 6. Çalışma Prensibi: Kullanıcı tarafından yapılan HTTP isteği, JWTAuthFilter içerisindeki bir interceptor metoda gider ve token doğrulanarak kullanıcı bilgileri kontrol edilir. Daha detaylı bilgi ve örnekler için aşağıdaki kaynaklar incelenebilir: medium.com'da "Spring Boot ile JSON Web Token (JWT) Kullanarak Güvenli Oturum Yönetimi" başlıklı yazı; geeksforgeeks.org'da "Spring Boot 3.0 ile Spring Security kullanarak MySQL veritabanıyla JWT kimlik doğrulaması" başlıklı yazı.
Access token, bir uygulamanın bir API'ye erişim sağlamak için kullandığı güvenlik anahtarıdır. Access token'ın temel işlevleri: Kimlik doğrulama. Yetkilendirme. Veri erişimi. Access token'ın süresi dolduğunda veya geçerliliği sona erdiğinde, kullanıcı web uygulamasına refresh token ile yeni bir access token talep edebilir.
JWT (JSON Web Token) ile authentication (kimlik doğrulama) yapmak için aşağıdaki adımlar izlenir: 1. Kullanıcı Girişi: Kullanıcı, server'a kullanıcı adı ve şifre ile giriş yapar. 2. JWT Oluşturma: Sunucu, kimlik doğrulamasını yaptıktan sonra JWT oluşturur ve kullanıcıya gönderir. 3. Token Saklama: Kullanıcı, bu JWT değerini yerel depolama veya çerezlerde saklar. 4. Her İstekte JWT Gönderimi: Kullanıcı sisteme her giriş yapmak istediğinde, JWT değerini istek başlıklarında gönderir. 5. Sunucuda JWT Doğrulama: Sunucu, gelen JWT'nin bütünlüğünü ve doğruluğunu kontrol eder. JWT'nin yapısı: Header (Başlık): Kullanılan algoritmayı ve token türünü belirtir. Payload (Yük): Kullanıcı bilgileri ve claims (beyanlar) içerir. Signature (İmza): Token'ın doğruluğunu kontrol etmek için kullanılır. JWT ile authentication yaparken, token'ın güvenli bir şekilde saklanması ve doğrulanması önemlidir.
JWT (JSON Web Token) çalışma prensibi şu adımlardan oluşur: 1. Kullanıcı kimlik doğrulaması. 2. JWT oluşturma. 3. JWT kullanımı. 4. JWT doğrulaması. JWT'nin yapısı üç ana bölümden oluşur: Header (Başlık). Payload (Veri). Signature (İmza).
Teknoloji
Kare dalga ne işe yarar?
Jeotermal ne anlama gelir?
KabloNet arıza kaydı kaç günde gelir?
JWT ve access token aynı mı?
Kaput tutucu nasıl çalışır?
KEP sistemi nasıl çalışır?
Komut istemi ile mesaj gönderme nasıl yapılır?
Kalp emojisi kodu nedir?
Kauçuk conta nerelerde kullanılır?
Karbon kağıdı ve kopya kağıdı aynı mı?
Kanal D'yi hangi uydudan izleyebilirim?
Klavyede lamda işareti nerede?
JPEG sıkıştırma oranı nasıl ayarlanır?
Kombine dedektör ne işe yarar?
Keycloaks SSO nedir?
Kamera sistemi alırken nelere dikkat edilmeli?
Kent bilgi sistemindeki renkler ne anlama gelir?
Kimlik doğrulama nasıl yapılır?
Kombi sigortası 3 amper olursa ne olur?
Kobe'nin ölümünde pilotun suçu ne?
Kaydedilenler nereden silinir?
Kerosen ile hangi soba kullanılır?
Jupiter LED armatür hangi ülkenin malı?
Kl Pro 3.6 volt şarjlı matkap ne işe yarar?
Jeotermal enerji parası nereye ödenir?
Kalorimetre tesisat malzemeleri nelerdir?
Kombi konsol yüksekliği kaç cm olmalı?
Kerosen uçak yakıtı mı?
Kitap okumak için hangi uygulama?
KablONET şifre değiştirme kaç günde aktif olur?
Kara Sıva metrajı nasıl hesaplanır?
Kaydetmeden kapatılan dosyalar nereye kaydedilir?
Kepçe alırken nelere dikkat edilmeli?
Katran yalıtkan mı?
Karaca robotea pro 4in 1 cam çay makinesi nasıl kullanılır?
Kalite spesifikasyonu neleri kapsar?
Kimler iş analisti olabilir?
Kauçuk nedir ve ne işe yarar?
Kan tahlilinde hangi cihaz kullanılır?
Klavyede geri al nasıl aktif edilir?