# Tek seferlik

Tek Oturum Açma (SSO), kullanıcıların yalnızca bir kullanıcı kimlik bilgisini kullanarak birden fazla uygulama ve web sitesine güvenli bir şekilde kimlik doğrulamasını sağlayan bir kimlik doğrulama yöntemidir.

## Nasıl Çalışır?

Kullanıcılarınıza kendi SSID'lerini ve bu SSID'lerden kimlik belirteçleri oluşturmalarını sağlarsınız. Hizmetinize giriş yapmak için, sadece kimlik belirteçlerinin kimlik numaralarını girmeleri gerekecektir.

Arka planda, kimlik belirteçlerinin (NFT'ler) gerçekten kullanıcılara ait olup olmadığını kontrol eder ve eğer öyleyse, kimlik belirteçlerinden SSID'yi alırsınız.

Bir kimlik belirteçten SSID almak için, kimlik belirteci kimliği ile SSI sözleşmesinin **metadata** fonksiyonunu sorgulamanız gerekir:

```solidity
// Örnek kod
ISSI(ssiContract).metadata(kimlik_belirteci_id)
```

Bu, aşağıdaki formatta bir meta veri nesnesi döndürecektir:

```solidity
struct SSIData {
    uint gönderenProfilKimliği;
    uint alıcıProfilKimliği;
    uint denetleyiciProfilKimliği;
    uint son_tarih;
    string soru;
    string cevap;
    ProofType ispatTürü;
}
```

Gerçek SSID'yi almak için, sorunun gerçekten SSID olup olmadığını doğruladıktan sonra cevap değişkenini alırsınız:

```solidity
// Tam kod
function getSSID(uint _kimlik_belirteci_id) dışardan returns(string hafıza) {
    SSIData hafıza veri = ISSI(ssiSözleşmesi).metadata(kimlik_belirteci_id);
    require(keccak256(abi.encodePacked(veri.soru)) == keccak256(abi.encodePacked("ssid")));
    return veri.cevap;
}
```

Kullanıcıların SSID verilerini, kimlik belirteçlerinden topladıktan sonra kimlik bilgileri olarak kullanır ve hızlı bir kontrol gerçekleştirdikten sonra onları oturum açar.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.payswap.org/turkish/use-cases/ssi/single-sign-on.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
