

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggunakan otorisasi berbutir halus dengan SMART pada penyimpanan data yang diaktifkan FHIR HealthLake
<a name="reference-smart-on-fhir-fine-grained-authorization"></a>

[Cakupan](reference-smart-on-fhir-oauth-scopes.md#smart-on-fhir-scopes-rest) saja tidak memberi Anda kekhususan yang diperlukan tentang data apa yang diizinkan untuk diakses oleh pemohon di penyimpanan data. Menggunakan otorisasi berbutir halus memungkinkan tingkat spesifisitas yang lebih tinggi saat memberikan akses ke SMART di penyimpanan data berkemampuan FHIR. HealthLake Untuk menggunakan otorisasi berbutir halus, tetapkan `FineGrainedAuthorizationEnabled` sama dengan `IdentityProviderConfiguration` parameter `True` permintaan Anda. `CreateFHIRDatastore`

Jika Anda mengaktifkan otorisasi berbutir halus, server otorisasi Anda mengembalikan `fhirUser` cakupan `id_token` bersama dengan token akses. Hal ini memungkinkan informasi tentang Pengguna untuk diambil oleh aplikasi klien. Aplikasi klien harus memperlakukan `fhirUser` klaim sebagai URI dari sumber daya FHIR yang mewakili pengguna saat ini. Ini dapat berupa `Patient`, `Practitioner`, atau `RelatedPerson`. Respons server otorisasi juga mencakup `user/` ruang lingkup yang mendefinisikan data apa yang dapat diakses pengguna. Ini menggunakan sintaks yang ditentukan untuk cakupan yang terkait dengan cakupan spesifik sumber daya FHIR:

```
user/(fhir-resource | '*').('read' | 'write' | '*')
```

Berikut ini adalah contoh bagaimana otorisasi halus dapat digunakan untuk lebih menentukan akses data terkait jenis sumber daya FHIR.
+ `fhirUser`Kapan otorisasi `Practitioner` berbutir halus menentukan kumpulan pasien yang dapat diakses pengguna. Akses ke hanya `fhirUser` diperbolehkan untuk pasien di mana Pasien memiliki referensi ke `fhirUser` sebagai Dokter Umum. 

  ```
  Patient.generalPractitioner : [{Reference(Practitioner)}]
  ```
+ `fhirUser`Kapan `Patient` atau `RelatedPerson` dan pasien yang dirujuk dalam permintaan berbeda dari`fhirUser`, otorisasi berbutir halus menentukan akses ke `fhirUser` pasien yang diminta. Akses diizinkan ketika ada hubungan yang ditentukan dalam `Patient` sumber daya yang diminta.

  ```
  Patient.link.other : {Reference(Patient|RelatedPerson)}
  ```