

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

# Skenario contoh izin
<a name="security-permissions-example-scenario"></a>

Skenario berikut membantu menunjukkan bagaimana Anda dapat mengatur izin untuk mengamankan akses ke data. AWS Lake Formation

Shirley adalah administrator data. Dia ingin mendirikan danau data untuk perusahaannya AnyCompany. Saat ini, semua data disimpan di Amazon S3. John adalah manajer pemasaran dan membutuhkan akses tulis ke informasi pembelian pelanggan (terkandung dalam`s3://customerPurchases`). Seorang analis pemasaran, Diego, bergabung dengan John musim panas ini. John membutuhkan kemampuan untuk memberikan Diego akses untuk melakukan kueri pada data tanpa melibatkan Shirley. 

Mateo, dari keuangan, membutuhkan akses ke data akuntansi kueri (misalnya,`s3://transactions`). Dia ingin menanyakan data transaksi dalam tabel dalam database (`Finance_DB`) yang digunakan tim keuangan. Manajernya, Arnav, dapat memberinya akses ke. `Finance_DB` Meskipun ia seharusnya tidak dapat memodifikasi data akuntansi, ia membutuhkan kemampuan untuk mengubah data menjadi format (skema) yang cocok untuk peramalan. Data ini akan disimpan dalam bucket terpisah (`s3://financeForecasts`) yang dapat dimodifikasi.

Untuk meringkas:
+ Shirley adalah administrator data lake. 
+ John membutuhkan `CREATE_DATABASE` dan `CREATE_TABLE` izin untuk membuat database dan tabel baru di Katalog Data.
+ John juga membutuhkan`SELECT`,`INSERT`, dan `DELETE` izin pada tabel yang dia buat.
+ Diego memerlukan `SELECT` izin di atas meja untuk menjalankan kueri.

Karyawan AnyCompany melakukan tindakan berikut untuk mengatur izin. Operasi API yang ditunjukkan dalam skenario ini menunjukkan sintaks yang disederhanakan untuk kejelasan.

1. Shirley mendaftarkan jalur Amazon S3 yang berisi informasi pembelian pelanggan dengan Lake Formation.

   ```
   RegisterResource(ResourcePath("s3://customerPurchases"), false, Role_ARN )
   ```

1. Shirley memberi John akses ke jalur Amazon S3 yang berisi informasi pembelian pelanggan.

   ```
   GrantPermissions(John, S3Location("s3://customerPurchases"), [DATA_LOCATION_ACCESS]) )
   ```

1. Shirley memberi John izin untuk membuat database.

   ```
   GrantPermissions(John, catalog, [CREATE_DATABASE]) 
   ```

1. John membuat database`John_DB`. John secara otomatis memiliki `CREATE_TABLE` izin pada database itu karena dia membuatnya.

   ```
   CreateDatabase(John_DB)
   ```

1. John menciptakan tabel yang `John_Table` menunjuk ke`s3://customerPurchases`. Karena dia membuat tabel, dia memiliki semua izin di atasnya, dan dapat memberikan izin di atasnya.

   ```
   CreateTable(John_DB, John_Table)
   ```

1. John mengizinkan analisnya, Diego, akses ke meja`John_Table`.

   ```
    GrantPermissions(Diego, John_Table, [SELECT])
   ```

1. John mengizinkan analisnya, Diego, akses ke. `s3://customerPurchases/London/` Karena Shirley sudah terdaftar`s3://customerPurchases`, subfoldernya terdaftar di Lake Formation.

   ```
    GrantDataLakePrivileges( 123456789012/datalake, Diego, [DATA_LOCATION_ACCESS], [], S3Location("s3://customerPurchases/London/") )
   ```

1. John memungkinkan analisnya, Diego, untuk membuat tabel dalam database`John_DB`.

   ```
    GrantDataLakePrivileges( 123456789012/datalake, Diego, John_DB, [CREATE_TABLE], [] )
   ```

1. Diego membuat tabel `John_DB` di `s3://customerPurchases/London/` at dan secara otomatis mendapatkan`ALTER`,,`DROP`,, `SELECT``INSERT`, dan `DELETE` izin.

   ```
    CreateTable( 123456789012/datalake, John_DB, Diego_Table )
   ```