Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın Türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi

0
Angular ve Java da Token yapısı nasıl kullanılır?

Açık 2 Cevaplar 349 Gösterim Javascript
Angular uygulamasına login sayfası koymak isterken karşılaştığım Token mantığını java backend tarafında halletmek istedim ama çok fazla uğraştırdı.

Bunun daha kolay bir yöntemi var mıdır? Angular üzerinden http.post ile user credentials parametreleri ile java api çağrılır. Java tarafında bilgiler db den kontrol edilir. Eğer uygun ise bir token üretilir ve api ile angular a response olarak döner. Sonrasında Angular üzerinden backend e gittiğimiz her requestte(Get veya post farketmez) bu token'ı kullanmamız gerekiyor. Token browser da cookie olarak tutulabilir.

Ama bu şekilde çok fazla bir iş yükü ortaya çıktı bunun daha kolay bir yolu var mıdır?

Teşekkürler

2 Cevap

0

Aslında olması gereken herşeyi düzgünce anlatmışsın.

Tek sorum var. Token'i ürettikten sonra istemci tarafına indirdin diyelim. Sonrasında her seferinde sunucu tarafına yolluyorsun ve sunucuda da metodlarda elle mi kontrol ediyorsun?

Bunu yapmak için java tarafında otomatik kontrol eden bir yapı geliştirebilirsin. Java servlet ya da spring için filter diye bir kavram var onu biraz araştır.

İstemci tarafında zaten aldığın token'i sunucuya yollamaktan başka yapacağın birşey olmaması lazım. Decode işlemi felan yapmaya kalkarsan zaten tuttuğun veriyi ifşa etmiş olursun.

php ile bir örnek olsun diye sunucu taraflı birşeyler karalamıştım zamanında. Örneğini aşağıdaki linkde bulabilirsin.

https://github.com/commandito/php-samples/blob/master/jwt-test.php

(4.6k puan)
0

Öncelikle Java tarafında bu security işlemlerinde kullanılan teknolojileri bilmemiz gerekiyor. Özellikle Spring Security implementasyonu ile birlikte öne çıkan aut yöntemleri :

  1. Basic Aut (HTML)
  2. JWT Aut (JSON tabanlı token kontrollü - Sizin bahsettiğiniz)
  3. OAuth2 (Sosyal Medya destekli)

Basic Aut en basit ve güvenli olan yöntemdir. 

JWT (JSON Web Token) teknolojisi Angular ve React client'ler için kullanılan yaygın olan yöntemdir. Kullanıcı login olduğunda token oluşturulur ve front-end tarafına bildirilir ve her işlemde istekler bu token ile birlikte gönderilmesi gerekir. Bazı durumlarda daha kontrollü yapılar mevcuttur. Reslesh Token diye ayrıca bir Token bildirilir. Kullanılan token'ın süresi olur ve bittiğinde front-end tarafından reflesh token ile birlikte yeni token alması beklenir.

Örnek Uyguma : https://www.callicoder.com/spring-boot-spring-security-jwt-mysql-react-app-part-2/

OAuth2 yöntemi ise sosyal medya hesapları ile login ve register olmayı sağlayan security yöntemidir. Sosyal medya entegrasyonu isteniyorsa bu yöntem kullanılmalıdır.

Saygılarımla,

(164 puan)