

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Athena 如何存取向 Lake Formation 註冊的資料
<a name="lf-athena-access"></a>

本節所述的存取工作流程適用於在 Amazon S3 位置、資料目錄或針對向 Lake Formation 註冊的中繼資料物件執行 Athena 查詢時。如需詳細資訊，請參閱《AWS Lake Formation 開發人員指南》**中的[註冊資料湖](https://docs.aws.amazon.com/lake-formation/latest/dg/register-data-lake.html)。除了註冊資料之外，Lake Formation 管理員還會套用 Lake Formation 許可，以授予或撤銷對資料目錄中中繼資料 AWS Glue Data Catalog或 Amazon S3 中資料位置的存取權。如需詳細資訊，請參閱《AWS Lake Formation 開發人員指南》**中的[中繼資料與資料的安全性與存取控制](https://docs.aws.amazon.com/lake-formation/latest/dg/security-data-access.html#security-data-access-permissions)。

每當 Athena 主體 (使用者、群組或角色) 對使用 Lake Formation 註冊的資料執行查詢時，Lake Formation 都會驗證主體是否有適合查詢的資料庫、資料表和資料來源位置的適當 Lake Formation 許可。如果主體有權存取，Lake Formation 會將暫時性憑證*提供*給 Athena，且查詢會執行。

下圖顯示憑證販售如何在 Athena 中以逐次查詢為基礎運作，以便對 Lake Formation 中註冊之 Amazon S3 位置或資料目錄的資料表進行假設的 `SELECT` 查詢：

![Athena 資料表上的查詢的憑證販賣工作流程。](http://docs.aws.amazon.com/zh_tw/athena/latest/ug/images/lake-formation-athena-security.png)


1. 主體在 Athena 中執行 `SELECT` 查詢。

1. Athena 會分析查詢並檢查 Lake Formation 許可，以查看是否授予主體對資料表和資料欄的存取權。

1. 如果主體有權存取，則 Athena 會向 Lake Formation 請求憑證。如果主體*沒有*存取權，Athena 會發出存取遭拒錯誤。

1. Lake Formation 會在從 Amazon S3 或目錄讀取資料時發出憑證給 Athena，也會發出允許的資料欄之清單。

1. Athena 使用 Lake Formation 臨時憑證來查詢來自 Amazon S3 或目錄的資料。查詢完成後，Athena 會捨棄憑證。