Keycloack ile ben session bazlı bir login işlemi yapabilir miyim? Yapabilirsem java uygulama nasıl bağlayabilirim? Session timeout değerini nasıl ayarlayabilirim?
comments
1 references
// Comments are closed.
İlk olarak keycloak örneğimizi çalıştırmamız gerekiyor.Sonrasında yeni bir realm oluşturup herkese açık erişim türüne sahip client oluşturulur.
Keycloak bize session, tanımlama bilgisi ve token zaman aşımları üzerinde hassas denetim sağlar. Tüm bunlar, Realm Settings sol menü öğesindeki Tokens sekmesinde yapılır. Bu menüde:
SSO Session Idle: Oturumun boşta kalma süresi
SSO Session Max: oturumunun aktif kalabileceği maksimum süre
Offline Session Idle: çevrim dışı token iptal edilmeden önce oturumun boşta kalmasına izin verilen zaman
ayarlamaları yapılır.
Spring Boot projeniz olduğunu ve Maven kullandığınızı varsayarsak. Spring Boot ve Keycloak’ı entegre etmek için spring-boot-keycloak-starter kütüphanesi gerekiyor. Bu kütüphaneyi Maven veya Gradle build dosyasına eklemeliyiz. spring-boot-starter-security, org.keycloak.bom.keycloak-adapter-bom bağımlılıkları eklenmeli.
<dependencies>
<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-spring-boot-starter</artifactId>
<version>15.0.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.keycloak.bom</groupId>
<artifactId>keycloak-adapter-bom</artifactId>
<version>15.0.2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
Keycloak’ın gerektirdiği ayarlamalar Spring Boot properties ayarlarında yapılmalı.