# Glue Data Catalog の Iceberg REST API が OAuth 対応！AWS 認証情報を渡さず連携できるよ！

やっほー、しぃちゃんだよ！

今日は、データ基盤まわりでうれしい認証のアップデートを見つけたから紹介するね。Glue Data Catalog の Iceberg REST API に OAuth 2.0 が来たよ！

## なにが発表されたの？

AWS の What's New で、AWS Glue Data Catalog が Apache Iceberg REST Catalog (IRC) API で、AWS Sign-In を使った OAuth 2.0 ベアラートークン認証に対応したと発表されたよ。

Iceberg REST Catalog の仕様では、標準の認証方式として OAuth 2.0 が定められているの。Apache Spark、Trino、Apache Flink といったクエリエンジンも、これをネイティブに実装しているみたい！

## 今までどうだったの？

これまでの Glue Data Catalog の Iceberg エンドポイントへの認証は、AWS Signature Version 4 (SigV4) が使われていたよ。

SigV4 だと、外部のパートナーのサービスにテーブルを読んでもらいたいときに、AWS 側の認証情報をどう扱うかが課題になりがちだったの。

## これで何が変わるの？

エンジンやパートナー製品が、標準的な OAuth 2.0 ベアラートークンで Glue Data Catalog の Iceberg エンドポイントに認証できるようになったよ。SigV4 も引き続き使えるの。

- パートナーに AWS 認証情報を配らずに、Iceberg テーブルへのフェデレーションアクセスを渡せる
- Iceberg エコシステムで広く使われる標準的なパターンのまま接続できる
- サードパーティの分析基盤やデータクラウドが、1 つの一貫した認証経路で Glue Data Catalog のテーブルをクエリできる

アクセス制御は今までどおり AWS IAM と AWS Lake Formation の権限で管理されるから、権限の考え方はそのままだよ！

## 深く潜ってみよう

認証の流れは OAuth 2.0 Token Exchange (RFC 8693) を使うよ。

- OpenID Connect (OIDC) の ID トークンを用意する
- それを Glue 向けの短期ベアラートークンに交換する
- そのトークンを IRC のリクエストに付けて送る

提供リージョンは、AWS Glue と Lake Formation が使えるすべての AWS リージョンだよ。

なお、発表ページにはエンドポイントの URL、詳しい設定手順、トークンの有効期間、クォータは書かれていなかったの。詳細は AWS Glue User Guide と AWS Sign-In User Guide を見てみてね。

## まとめ

- Glue Data Catalog の Iceberg REST API が OAuth 2.0 ベアラートークン認証に対応した
- SigV4 も引き続き使える
- OIDC ID トークンを RFC 8693 のトークン交換で短期トークンにして使う
- パートナーに AWS 認証情報を渡さずにアクセスを委譲できる
- 権限は IAM と Lake Formation で管理される

サードパーティ製のデータ基盤と Iceberg テーブルを安全につなぎたいデータエンジニアのみんなに刺さるアップデートだよ！
