---
title: 'Çoklu Oturum Açma'
source: 'https://academia.sh/tr/kurslar/kimlik-ve-kriptografi/coklu-oturum-acma'
course: 'Kimlik, Erişim ve Kriptografi'
language: tr
updated: '2026-08-17T18:08:37+00:00'
license: 'CC BY-SA 4.0'
---

# Çoklu Oturum Açma

Federasyonun iddia belgesi ekseninde ölçülmesi: 18 uygulamanın 15'inin tek sağlayıcıya bağlı olması ve 1562 kullanıcı bağlantısının 90 kaleme dayanması, iptal penceresini belgenin 5 dakikalık ömrünün değil uygulamanın 72 saate çıkan yerel oturumunun belirlemesi, anahtar döndürmenin 5 uygulamada elle kalem ve kesinti üretmesi.

Önceki ders erişim kararını ağa girişte ölçtü: 80 aygıt, 1348 bağlanma noktası, tek servis. Ağa
girmiş bir kullanıcı ise gün boyunca onlarca uygulamaya bağlanır ve her birinde ayrı ayrı
doğrulanması istenmez. **Çoklu oturum açma (single sign-on)** bu isteği karşılar: kullanıcı bir
kez doğrulanır, doğrulamanın sonucu uygulamalara **iddia belgesi (assertion)** olarak taşınır ve
her uygulama belgeyi kendi başına doğrular.

Belgenin üretimi, imza ile yayıncı denetimi, hedef kitle ve süre penceresi ile öznitelikten role
çevrim **Kimlik Doğrulama ve Yetkilendirme** kursunda ölçüldü; burada tekrarlanmaz. Bu dersin
ölçtüğü şey kurum ölçeğidir: kaç uygulama tek sağlayıcıya bağlı, kök kırılırsa kaç uygulama
düşer, belgenin ömrü ne kadar ve bir hesabın kapatılması hangi uygulamada ne kadar sürede
etkili oluyor.

## Tek Kök, On Beş Uygulama

**KK11:** çoklu oturum açmada uygulama kullanıcıyı kendisi doğrulamaz; kimlik sağlayıcısının
imzaladığı bir belgeyi kabul eder. Sağlayıcının imzalama anahtarı, ona bağlı bütün uygulamaların
**ortak** güven köküdür. **KK12:** iddia belgesinin ömrü ile uygulamanın kendi oturumunun ömrü
ayrı sayılardır; iptalin ne kadar sürede etkili olduğunu belirleyen ikincisidir. **KK13:** kök
anahtarın döndürülmesi, anahtarı kendisi çeken uygulamada bedavadır; elle yüklenen ya da
yapılandırmaya sabitlenen uygulamada bir elle kalem ve bir kesintidir.

KK11 kurumsal kimliğin en büyük tek kazancıdır. Kullanıcı tek bir parola tutar, hesap kapatma
tek yerde yapılır ve çok etmenli doğrulama tek noktada uygulanır. Aynı tasarım, kursun ölçüsünü
en keskin biçimde gösterir: kazancın kaynağı ile kırılganlığın kaynağı **aynı kalemdir**.

## On Sekiz Uygulama

Aşağıdaki envanter bir **modeldir**: kurgu bölgesel ölçüm ağı kurumunun uygulamaları. Gerçek
bir kurum, gerçek bir sağlayıcı ya da gerçek bir anahtar yoktur.

```js
// coklu/uygulama.mjs — kurgu bolgesel olcum agi kurumunun uygulamalari ve merkezi kimlik
// saglayicisina baglanma bicimi (model): gercek bir kurum, gercek bir saglayici ya da gercek
// bir anahtar yok. Rastgelelik yok.

// KK11: coklu oturum acmada uygulama kullaniciyi kendisi dogrulamaz; kimlik saglayicisinin
// imzaladigi bir iddia belgesini kabul eder. Saglayicinin imzalama anahtari, ona bagli
// butun uygulamalarin ortak guven kokudur.
// Sutunlar: kip = federe (yalniz saglayiciyla girilir), karma (federe ve yerel hesap birlikte),
// yerel (saglayiciya bagli degil); belgeDk = iddia belgesinin gecerlilik suresi, dakika;
// oturumSaat = uygulamanin kendi oturumunu tuttugu sure; anahtar = imzalama anahtarinin
// uygulamaya nasil ulastigi (kume: anahtar kumesinden cekilir; elle: elle yuklenir;
// sabit: parmak izi yapilandirmaya sabitlenmis).
export const UYGULAMA = `
  faturalama            federe   142   5    8    kume
  is-emri               federe   118   5   12    kume
  olcum-arsivi          federe    64   5    4    kume
  rapor-portali         federe   173   5    8    kume
  saha-mobil-uc         federe   140   5   72    elle
  varlik-envanteri      federe    47   5    8    kume
  ik-portali            federe   206   2    2    kume
  gider-onayi           federe    88   5    8    sabit
  belge-arsivi          federe   151   5   24    kume
  egitim-portali        federe    96  10   24    elle
  tedarik-portali       karma     39   5    8    elle
  bakim-plani           karma     55   5   12    kume
  cagri-merkezi         karma    104   5    4    sabit
  bilet-sistemi         federe    77   5    8    kume
  veri-panosu           federe    62   5    2    kume
  bellenim-sunucusu     yerel     11   0    0    yok
  yedekleme-konsolu     yerel      7   0    0    yok
  eski-scada-konsolu    yerel      9   0    0    yok`
  .trim().split("\n").map((r) => {
    const p = r.trim().split(/\s+/);
    return { ad: p[0], kip: p[1], kul: +p[2], belgeDk: +p[3], oturumSaat: +p[4], anahtar: p[5] };
  });

// KK12: iddia belgesinin omru ile uygulamanin kendi oturumunun omru ayri sayilardir; iptalin
// etkili olma suresini belirleyen ikincisidir.
// KK13: kok anahtarin dondurulmesi, anahtari kendisi ceken uygulamada bedava, elle yuklenen
// ya da sabitlenen uygulamada elle kalem ve kesintidir.
export const ZINCIR = ["imzalama anahtari", "anahtar dagitim noktasi", "hedef kitle kaydi",
  "oznitelik eslemesi", "saat penceresi", "yerel oturum kaydi"];
export const federe = (u) => u.kip !== "yerel";
```

```js
// coklu/sayim.mjs — kac uygulama tek saglayiciya bagli, kok kirilirsa kac uygulama duser,
// iddia belgesinin omru ne, iptal kac saatte etkili oluyor ve anahtar dondurme ne tutar.
import { UYGULAMA, ZINCIR, federe } from "./uygulama.mjs";

const yaz = (g, ...s) => console.log(s.map((v, i) =>
  (g[i] < 0 ? String(v).padEnd(-g[i]) : String(v).padStart(g[i]))).join(""));
const topla = (f, s = UYGULAMA) => s.reduce((a, x) => a + f(x), 0);
const bagli = UYGULAMA.filter(federe);
const yerel = UYGULAMA.filter((u) => !federe(u));

console.log(`${UYGULAMA.length} uygulama, ${bagli.length} tanesi tek saglayiciya bagli, ` +
  `${topla((u) => u.kul, bagli)} kullanici baglantisi, zincir ${ZINCIR.length} kalem`);
console.log(`koke bagli kalem ${bagli.length * ZINCIR.length}, ` +
  `koke bagli olmayan uygulama ${yerel.length} (${topla((u) => u.kul, yerel)} hesap)`);

const A = [-8, 10, 10, 13, 14];
console.log("\n1. baglanma kipine gore");
yaz(A, "kip", "uygulama", "kullanici", "kok kirilsa", "belge dk ort");
for (const k of ["federe", "karma", "yerel"]) {
  const s = UYGULAMA.filter((u) => u.kip === k);
  const dk = s.filter((u) => u.belgeDk > 0);
  yaz(A, k, s.length, topla((u) => u.kul, s), k === "yerel" ? 0 : s.length,
    dk.length ? (topla((u) => u.belgeDk, dk) / dk.length).toFixed(1) : "-");
}

const B = [-14, 10, 11, 15, 16];
console.log("\n2. iptal penceresi: hesap devre disi birakildiktan sonra erisim ne kadar surer");
yaz(B, "pencere", "uygulama", "kullanici", "kalan belge dk", "kalan oturum sa");
for (const [ad, alt, ust] of [["0-4 saat", 0, 4], ["5-12 saat", 5, 12],
  ["13-24 saat", 13, 24], ["25 saat ustu", 25, 999]]) {
  const s = bagli.filter((u) => u.oturumSaat >= alt && u.oturumSaat <= ust);
  yaz(B, ad, s.length, topla((u) => u.kul, s), topla((u) => u.belgeDk, s),
    topla((u) => u.oturumSaat, s));
}
const enUzun = bagli.reduce((a, u) => (u.oturumSaat > a.oturumSaat ? u : a));
console.log(`en uzun pencere ${enUzun.oturumSaat} saat (${enUzun.ad}), ` +
  `belge omru ${enUzun.belgeDk} dakika; oran ${(enUzun.oturumSaat * 60 / enUzun.belgeDk)}x`);

const C = [-8, 10, 11, 12, 12];
console.log("\n3. imzalama anahtarini dondurmek ne tutar");
yaz(C, "anahtar", "uygulama", "kullanici", "elle kalem", "kesinti uyg");
for (const a of ["kume", "elle", "sabit"]) {
  const s = bagli.filter((u) => u.anahtar === a);
  yaz(C, a, s.length, topla((u) => u.kul, s), a === "kume" ? 0 : s.length,
    a === "kume" ? 0 : s.length);
}

const D = [-24, 8, 10, 20];
console.log("\n4. kok kirilirsa dusen kalem");
yaz(D, "kalem", "sayi", "dusen", "yenileme");
const elle = bagli.filter((u) => u.anahtar !== "kume").length;
for (const s of [
  ["saglayiciya bagli uyg", bagli.length, bagli.length, "yeniden guvenilir"],
  ["kullanici baglantisi", topla((u) => u.kul, bagli), topla((u) => u.kul, bagli), "yeniden giris"],
  ["imzalama anahtari", 1, 1, "1 kalem uretilir"],
  ["elle tasinan anahtar", elle, elle, `${elle} uygulama elle`],
  ["yerel hesapli uygulama", yerel.length, 0, "etkilenmez"],
]) yaz(D, ...s);
```

```
18 uygulama, 15 tanesi tek saglayiciya bagli, 1562 kullanici baglantisi, zincir 6 kalem
koke bagli kalem 90, koke bagli olmayan uygulama 3 (27 hesap)

1. baglanma kipine gore
kip       uygulama kullanici  kok kirilsa  belge dk ort
federe          12      1364           12           5.2
karma            3       198            3           5.0
yerel            3        27            0             -

2. iptal penceresi: hesap devre disi birakildiktan sonra erisim ne kadar surer
pencere         uygulama  kullanici kalan belge dk kalan oturum sa
0-4 saat               4        436             17              12
5-12 saat              8        739             40              72
13-24 saat             2        247             15              48
25 saat ustu           1        140              5              72
en uzun pencere 72 saat (saha-mobil-uc), belge omru 5 dakika; oran 864x

3. imzalama anahtarini dondurmek ne tutar
anahtar   uygulama  kullanici  elle kalem kesinti uyg
kume            10       1095           0           0
elle             3        275           3           3
sabit            2        192           2           2

4. kok kirilirsa dusen kalem
kalem                       sayi     dusen            yenileme
saglayiciya bagli uyg         15        15   yeniden guvenilir
kullanici baglantisi        1562      1562       yeniden giris
imzalama anahtari              1         1    1 kalem uretilir
elle tasinan anahtar           5         5     5 uygulama elle
yerel hesapli uygulama         3         0          etkilenmez
```

Sayılar **ölçüm** sınıfındadır; girdileri KK11–KK13 ile uygulama envanteridir.

## Kaç Uygulama Tek Köke Bağlı

Başlık satırları kapsamı verir: 18 uygulamanın 15'i tek sağlayıcıya bağlıdır, 1562 kullanıcı
bağlantısı o bağın üzerinden geçer ve uygulama başına altı kalem sayıldığında toplam 90 kalem
aynı anda doğru olmalıdır. Kalan üç uygulama sağlayıcıya bağlı değildir ve 27 hesabı kendi
listesinde tutar.

Birinci tablo kipleri ayırır. On iki uygulama yalnız sağlayıcıyla girilir, üçü hem sağlayıcıyı
hem kendi yerel hesabını kabul eder. Karma kip bir kesinti önlemi olarak konur — sağlayıcı
düştüğünde 198 kullanıcı yerel hesapla girebilir. Aynı kalem ters yönde de çalışır: bir kişi
sağlayıcıda kapatıldığında o üç uygulamadaki yerel hesabı kapanmaz. **Karma kip erişilebilirliği
artırır ve iptali eksiltir**; ikisi aynı satırdan çıkar.

Yerel kip aynı örüntünün ilk derste görülen biçimidir. Üç uygulama kökten bağımsızdır ve kök
kırıldığında sıfır düşer; buna karşılık 27 hesabın kapatılması merkezî hiçbir işlemle olmaz.
Kökün dışında kalmak korunmak değildir; ayrı bir kırılma noktası eklemektir. Bu üç uygulamanın
27 hesabı, kurumun kimlik envanterinde hiçbir merkezî raporda görünmez ve kapatma listesi
hazırlanırken elle hatırlanmak zorundadır; hatırlanmadıklarında geride kalan hesap sayısı 27'dir ve bu sayı hiçbir gösterge panosunda okunmaz.

## Zincirin Altı Kalemi

Uygulama başına sayılan altı kalemin yalnız biri anahtardır; kalan beşi anahtarın çevresinde
duran ve aynı anda tutması gereken kayıtlardır. Anahtar dağıtım noktası, uygulamanın imzalama
anahtarını nereden aldığını söyler; o adres ulaşılamazsa doğrulama yapılamaz. Hedef kitle kaydı,
belgenin **hangi uygulama için** üretildiğini bağlar; yanlış yazıldığında bir uygulamaya
üretilmiş belge başka bir uygulamada kabul edilir.

Öznitelik eşlemesi, sağlayıcıdan gelen alan adlarını uygulamanın beklediği alanlara çevirir ve
yanlış eşleme kimliği doğru, yetkiyi yanlış kurar. Saat penceresi bu konuda üçüncü kez çıkar:
belgenin beş dakikalık ömrü iki tarafın saatine göre ölçülür ve saatler ayrıldığında geçerli
belge reddedilir. Altıncı kalem, uygulamanın kendi oturum kaydıdır ve bir sonraki bölümün
tamamı onun üzerinedir.

On beş uygulama için toplam 90 kalem, kurumun tek bir kişiyi tek bir uygulamaya sokabilmesi için
doğru tutması gereken bağımsız kayıt sayısıdır. Bu kalemlerin **hiçbiri** kriptografik değildir;
yalnız biri, listenin başındaki anahtar, kırılma yüzeyini oluşturur. **Kök tek kalemdir, kökün
çevresi seksen dokuz kalemdir** ve işletim yükünün tamamı ikincisindedir.

## İptal Penceresi

İkinci tablo bu dersin merkezidir. İddia belgesinin ömrü uygulamaların çoğunda beş dakikadır ve
bu sayı çoğu kez "kimlik sağlayıcısıyla bağ beş dakikada bir tazeleniyor" diye okunur. Öyle
değildir. Belge yalnız **girişi** taşır; uygulama girişi kabul ettikten sonra kendi oturumunu
açar ve sonraki her istekte belgeye değil o oturuma bakar.

Bu yüzden bir hesap devre dışı bırakıldığında erişimin bitme süresini belirleyen sayı, belgenin
ömrü değil uygulamanın oturum ömrüdür. Dört uygulamada bu süre dört saatin altındadır ve 436
kullanıcıyı kapsar; sekiz uygulamada beş ile on iki saat arasındadır. En uzun pencere saha mobil
ucundadır: **72 saat**. Aynı uygulamada belgenin ömrü beş dakikadır; iki sayı arasındaki oran
864 katıdır.

Sayının anlamı doğrudandır. Kurumdan ayrılan ya da hesabı askıya alınan bir kişi, merkezî depoda
kaydı kapatılmış olmasına rağmen o uygulamada üç gün daha çalışmaya devam eder ve hiçbir kayıt
bunu hata olarak göstermez. **Federasyonun iptal hızı, en uzun oturum ömrünü tutan uygulamanın
hızıdır**; ortalamalar bu ölçüde bir şey söylemez. Kurum ölçeğinde iptali hızlandırmanın yolu
belgeyi kısaltmak değil, uygulamaların oturum ömrünü kısaltmak ya da düzenli bir yeniden
doğrulama istemektir; ikisi de kullanıcıya günde birkaç ek adım olarak yazılır.

## Anahtarı Döndürmenin Bedeli

Üçüncü tablo KK13'ü sayar. On uygulama imzalama anahtarını sağlayıcının yayımladığı anahtar
kümesinden kendisi çeker; sağlayıcı yeni bir anahtar eklediğinde bu uygulamalarda hiçbir işlem
yapılmaz ve elle kalem sıfırdır. Kalan beş uygulamada anahtar ya elle yüklenmiştir ya da parmak
izi yapılandırmaya sabitlenmiştir; döndürme bu beşinde birer elle kalem ve birer kesinti üretir.

Beş sayısı 1562 kullanıcının 467'sini kapsar. Döndürmenin planı bu beş uygulamanın etrafında
kurulur: yeni anahtar yayımlanır, beş uygulamada yapılandırma güncellenir, sonra eski anahtar
kaldırılır. Bu üç adımın ortasında bir pencere vardır ve pencere kapanmadan eski anahtar
düşürülürse beş uygulamada giriş durur.

Sayı, kurumun kökü ne sıklıkta yenilediğini belirler. Sıfır elle kalemli bir portföyde anahtar
döndürme rutin bir işlemdir; beş elle kalemli bir portföyde planlanmış bir bakım penceresi
gerektirir ve ertelenir. **Kök yenileme sıklığı, kökün özelliği değil, ona bağlı kalemlerin
otomasyon oranının özelliğidir.**

## Kök Kırılırsa

Dördüncü tablo kırılmayı sayar. İmzalama anahtarı ele geçtiğinde sağlayıcıya bağlı 15
uygulamanın 15'i ve 1562 kullanıcı bağlantısının tamamı düşer. Belge, hangi kullanıcı için
üretildiğini kendisi söyler; anahtarı bilen taraf istediği kullanıcı için geçerli belge
üretebilir ve bunu yapmak için **hiçbir parolaya, hiçbir ikinci etmene ihtiyaç duymaz**. Bu,
ikinci derste bilet veren servisin anahtarında görülen örüntünün uygulama katmanındaki
karşılığıdır.

Yenileme faturası şaşırtıcı biçimde küçüktür: üretilen anahtar bir kalemdir. Faturanın gerçek
kalemi, yeni anahtarın 15 uygulamaya ulaştırılmasıdır — onunda otomatik, beşinde elle. Kırılma
anında beş elle kalem, bakım penceresi beklenerek değil hemen yapılır ve o beş uygulamada
kesinti kaçınılmazdır.

Üç yerel uygulama yine sıfır düşer. Kök kırılmasında bu bir avantaj gibi görünür, ama aynı
kırılmada kurumun yapması gereken ilk iş 1562 bağlantıyı yeniden doğrulamaktır ve o üç
uygulamanın 27 hesabı bu işlemin dışında kalır: ne düşerler ne de yenilenirler. Merkezî
denetimin dışında olmak, olayın dışında olmak değildir. Kırılma sonrası yapılan envanterde bu üç
uygulama listeye hiç girmez ve girmediği için de yeniden gözden geçirilmez; kökün kapsamı
dışında kalan kalem, kök kırılmasının **soruşturmasının** da dışında kalır.

## Özet

- 18 uygulamanın 15'i tek kimlik sağlayıcısına bağlıdır; 1562 kullanıcı bağlantısı 90 kalemlik
  bir zincire dayanır.
- Karma kip erişilebilirliği artırır ve iptali eksiltir: sağlayıcı düştüğünde 198 kullanıcı
  girebilir, sağlayıcıda kapatılan hesap ise o uygulamalarda açık kalır.
- İptalin etkili olma süresini belgenin 5 dakikalık ömrü değil uygulamanın oturum ömrü belirler;
  en uzun pencere 72 saattir ve iki sayının oranı 864 katıdır.
- İmzalama anahtarını döndürmek 10 uygulamada sıfır, 5 uygulamada birer elle kalem ve birer
  kesinti tutar; kök yenileme sıklığını bu oran belirler.
- Kök kırıldığında 15 uygulama ve 1562 bağlantı düşer; üretilen yeni anahtar 1 kalemdir ama 5
  uygulamaya elle taşınır.

## Sonraki Adım

Bu ders tek bir doğrulamanın 15 uygulamaya taşındığını saydı; o tek doğrulamanın kendisi ise hâlâ
bir parolaya dayanıyor. Parola bilinirse 1562 bağlantının tamamı tek adımda açılır. Bu yüzden
kurumsal girişe ikinci bir etmen eklenir ve eklenen etmenin **hangi yolu kapattığı** ayrı bir
sorudur: her etmen türü aynı yolları kapatmaz ve hiçbiri hepsini kapatmaz. Sonraki ders etmen
türlerini kapattıkları yol cinsinden ölçer ve atlatma yollarının kaçının açık kaldığını sayar.
