# Hasta Onayı ile Klinik Erişim Talepleri (CIBA)

> Klinik erişim taleplerinin arkasındaki OpenID CIBA akışı: resepsiyonist hastanın e-postasını girer, hasta uygulamada veya e-posta ile 30, 90 veya 365 gün boyunca onaylar ve kliniğin uygulaması belirteçleri alır.

Source: https://developers.anpheros.com/tr/guides/clinic-access-request

**Bir klinik, hasta onayladığında Anpheros'taki hastanın kaydına ulaşır.** Kliniğin uygulaması, hastanın e-posta adresini ve ihtiyaç duyduğu erişimi belirten bir istek gönderir. Hasta bunu Anpheros uygulamasında ve e-posta ile alır, kimin ne için sorduğunu görür, ne kadar süreyle izin vereceğini seçer ve onaylar veya reddeder. Onaylarsa, kliniğin uygulaması belirteçleri alır ve erişim süresi dolana veya hasta geri çekene kadar kaydı okuyabilir.

Akış, standart OpenID Connect Client-Initiated Backchannel Authentication (CIBA) akışıdır, yoklama modunda. Bir resepsiyonistin hastaya bir telefon veya bağlantı vermesine gerek kalmaması için vardır: istek kliniğin ekranından değil, hastaya gider.

## Adım adım

1.  **Resepsiyon hastanın e-postasını girer.** Kliniğin uygulaması, kimlik bilgileriyle birlikte `POST /oauth/bc-authorize`'i, hasta e-postasını `login_hint` olarak, ihtiyaç duyduğu `scope`'ü ve hastanın göreceği kısa bir `binding_message`'ü çağırır.
2.  **Platform her adres için aynı şekilde yanıt verir.** Yanıt, Anpheros hesabı olup olmadığına bakılmaksızın bir `auth_req_id`, bir son kullanma tarihi ve bir yoklama aralığı içerir. Kaydı olan kişinin kim olduğunu açıklamaz. Hesabı olmayan bir kişi için yapılan istek basitçe süresi dolar.
3.  **Hasta karar verir.** Anpheros uygulamasında ve e-posta ile bir bildirim alırlar. İstek, kuruluşu, kapsamı ve mesajı gösterir. 30, 90 veya 365 günlük bir süre seçerler ve izin ver veya reddet düğmesine basarlar. E-postadaki bağlantı açıldığında hiçbir şeyi onaylamaz, çünkü posta tarayıcıları bağlantıları açar; hastanın düğmeye basması gerekir.
4.  **Klinik yoklama yapar.** Uygulama, `urn:openid:params:grant-type:ciba` ve `auth_req_id` ile birlikte `POST /oauth/token`'yı çağırır. Hasta henüz karar vermemişken yanıt `authorization_pending`'dur. Onaydan sonra jetonlar bir kez döndürülür. Red, `access_denied`'yu ve yanıtlanmamış bir istek `expired_token`'yi döndürür.
5.  **Klinik, verilen kapsam dahilinde okur ve yazar.** Her okuma kaydedilir ve hasta tarafından görülebilir. Bir klinik yalnızca kendi yazdığı şeyleri değiştirebilir veya silebilir.

## Hastayı ne korur

- **Yalnızca doğrulanmış e-posta.** Bir istek yalnızca e-postası doğrulanmış bir hesaba uyar, böylece kimse kendi adresleriyle bir hesap oluşturarak başkasının isteklerini alamaz.
- **Kapsamlı ve zaman sınırlı.** Erişim, belirtilen bir süre için kaynak türüne ve eyleme göredir. Kimsenin yanıtlamadığı bir istek varsayılan olarak bir gün içinde ve en fazla yedi gün içinde sona erer.
- **Her zaman geri alınabilir.** Geri alma, bir sonraki istekte yürürlüğe girer. Klinik, yolunu yenileyemez.
- **Görünür.** Hasta, uygulamadaki her bağlantıyı ve her erişimi görür. [Onay ve erişim modeline](https://developers.anpheros.com/tr/guides/consent) bakın.

## Bir kliniğin oluşturması gerekenler

- Platforma kayıtlı, gizli tutulan sırrı sunucuda saklanan gizli bir OAuth istemcisi.
- Aralığa uyan ve dört sonucu ele alan bir yoklama döngüsü.
- Hastanın kararını resepsiyona göstermenin bir yolu ("hastayı bekliyor", "…'ya kadar onaylandı", "reddedildi").
- Döndürülen belirteçlerin kısa ömürlü kimlik bilgileri olarak işlenmesi: erişim belirteçleri 30 dakika sürer ve yenileme belirteçleri her kullanımda döner. [Kimlik doğrulama ve OAuth](https://developers.anpheros.com/tr/guides/authentication) bölümüne bakın.

Örneğin masada, hastanın önünde bir onay sayfası açmayı tercih eden bir klinik için, PKCE ve SMART on FHIR bağımsız başlatma ile standart yetkilendirme kodu akışı da desteklenmektedir.

## Sıkça Sorulan Sorular

### Hastanın klinikte bulunması gerekiyor mu?

Hayır. Hastalar, bulundukları yerden kendi telefonlarından veya e-posta bağlantısından onay verebilirler. Bu nedenle, randevudan önce bir talep gönderilebilir ve yurt dışında bulunan bir hasta bile bu talebi onaylayabilir.

### Hastanın Anpheros hesabı yoksa ne olur?

Talep kabul edilir ve ardından karar verilmeden süresi dolar. Klinik, bir hesabın olup olmadığını bilemez. Hasta bir hesap oluşturabilir ve klinik yeni bir talep gönderebilir.

### Erişimin süresi ne kadar?

Hasta onaylarken 30, 90 veya 365 gün seçer. Daha erken geri çekebilir.

### Klinik kayıttaki her şeyi görebilir mi?

Yalnızca hastanın onayladığı kapsamı. Kapsamlar, kaynak türü ve eyleme göre ayarlanır ve kategoriye göre filtrelenebilir.

### Talep akışı standart mı?

Evet. OpenID Connect CIBA olduğundan, mevcut OAuth kütüphaneleri kullanılabilir. Daha geniş model için [hasta onayı ile sağlık API'si](https://developers.anpheros.com/tr/guides/healthcare-api-patient-consent) kılavuzuna bakın.

### Bu canlı mı?

Evet, platformda özel beta sürümünde. Üretim erişimi, doğrulanmış bir kuruluş ve imzalanmış bir veri işleme sözleşmesi gerektirir.

## İlgili

- [Klinikler ve hastaneler için hasta veri platformu](https://developers.anpheros.com/tr/guides/clinics-and-hospitals)
- [Sağlık uygulamaları için hasta onay platformu](https://developers.anpheros.com/tr/guides/patient-consent-platform)
- [SMART on FHIR ile hasta onayı nasıl uygulanır](https://developers.anpheros.com/tr/guides/smart-on-fhir-backend)
- [Güvenlik, gizlilik ve veri ikametgahı](https://developers.anpheros.com/tr/guides/security)
