ODBC、SAML 2.0、Okta Identity Provider を使用してシングルサインオンを設定する
データソースに接続する際、 Amazon Athena では、PingOne、Okta、OneLogin を初めとしたアイデンティティプロバイダ (IdPs) を使用できます。Athena ODBC ドライバーのバージョン 1.1.13 および Athena JDBC ドライバーのバージョン 2.0.25 以降には、ブラウザの SAML プラグインが含まれており、任意の SAML 2.0 プロバイダで動作するように設定できます。このトピックでは、Okta の ID プロバイダを使用して Single Sign-On (SSO) 機能を追加するために、Amazon Athena ODBC ドライバーとブラウザベースの SAML プラグインを設定する方法について説明します。
前提条件
このチュートリアルのステップを完了するには、以下が必要です。
-
Athena ODBC ドライバーバージョン 1.1.13 以降。バージョン 1.1.13 以降には、ブラウザの SAML サポートが含まれています。ダウンロード用のリンクは、「ODBC を使用した Amazon Athena への接続」でご確認ください。
-
SAML で使用する IAM ロール。詳細については、「IAM ユーザーガイド」の「SAML 2.0 フェデレーション用のロールの作成 (コンソール)」を参照してください。
-
Okta アカウント。詳細については、okta.com
を参照してください。
Okta でのアプリケーション統合の作成
まず、Okta ダッシュボードを使用して、Athena へのシングルサインオン用の SAML 2.0 アプリケーションを作成して設定します。
Okta ダッシュボードを使用して Athena のシングルサインオンをセットアップするには
-
okta.com
の Okta 管理ページにログインします。 -
[ナビゲーションペイン] で、[Applications] (アプリケーション) をクリックした後に、もう一度 [Applications] をクリックします。
-
[Applications] (アプリケーション) ページで、[Create App Integration] (アプリケーション統合を作成) をクリックします。
-
[Create a new app integration] (新しいアプリケーション統合の作成) ダイアログボックスにある [Sign-in method] (サインイン方法) で、[SAML 2.0] を選択した上で、[Next] (次へ) をクリックします。
-
[Create SAML Integration] (SAML 統合の作成) ページの [General Settings] (全般設定) セクションで、アプリケーションの名前を入力します。このチュートリアルでは、この名前として [Athena SSO] を使用します。
-
[Next] を選択します。
-
[Configure SAML] (SAML の設定) ページの [SAML Settings] (SAML 設定) セクションで、以下の値を入力します。
-
[Single sign on URL] (シングルサインオン URL) には
http://localhost:7890/athena
を入力します。 -
[Audience URI] (対象者の URI) には
urn:amazon:webservices
を入力します。
-
-
[Attribute Statements (optional)] (属性ステートメント (オプション)) には、次の名前と値のペアを入力します。これらのマッピング属性は必須です。
-
[Name] (名前) に、次の URL を入力します。
https://aws.amazon.com/SAML/Attributes/Role
[Value] (値) に、IAM ロールの名前を入力します。IAM ロール形式の詳細については、「IAM ユーザーガイド」の「認証レスポンスの SAML アサーションを設定する」を参照してください。
-
[Name] (名前) に、次の URL を入力します。
https://aws.amazon.com/SAML/Attributes/RoleSessionName
[値] に「
user.email
」と入力します。
-
-
[Next] (次へ) を選択し、[Finish] (完了) を選択します。
Okta がアプリケーションを作成する際、同時にログイン URL も作成され、これは次で取得できます。
Okta ダッシュボードからのログイン URL の取得
この段階まででアプリケーションが作成されたので、Okta ダッシュボードからログイン URL およびその他のメタデータを取得できます。
Okta ダッシュボードからログイン URL を取得するには
-
Okta のナビゲーションペインで、[Applications] (アプリケーション) をクリックした後、もう一度 [Applications] をクリックします。
-
ログイン URL を確認するアプリケーション (たとえば、AthenASSO) を選択します。
-
アプリケーションのページで、[Sign On] (サインオン) をクリックします。
-
[View Setup Instructions] (セットアップ手順を表示) をクリックします。
-
[How to Configure SAML 2.0 for Athena SSO] (Athena SSO 用の SAML 2.0 を設定するには) ページで、[Identity Provider Issuer] (ID プロバイダの発行者) の URL を探します。Okta ダッシュボード内の一部では、この URL を [SAML issuer ID] (SAML 発行者 ID) として参照します。
-
ID プロバイダシングルサインオン URL の値をコピーまたは保存します。
次のセクションで ODBC 接続を設定する際に、ブラウザの SAML プラグイン用の接続パラメータ [Login URL] (ログインURL) として、この値を指定します。
ブラウザ SAML ODBC による Athena への接続の設定
この段階で、Windows の ODBC データソースプログラムを使用して、Athena へのブラウザの SAML 接続を設定するための準備が整いました。
ブラウザの SAML ODBC による Athena への接続を設定するには
-
Windows で、[ODBC Data Sources] (ODBC データソース) プログラムを起動します。
-
[ODBC Data Source Administrator] (ODBC データソースの管理者) プログラムで、[Add] (追加) をクリックします。
-
[Simba Athena ODBC Driver] (Simba Athena ODBC ドライバー) を選択し、[Finish] (完了) をクリックします。
-
左[Simba Athena ODBC Driver DSN Setup] (Simba Athena ODBC ドライバーの DSN セットアップ) ダイアログで、以下に記述されている値を入力します。
-
[Data Source Name] (データソース名) には、使用するデータソースの名前 (例:Athena ODBC 64) を入力します。
-
[Description] (説明) に、データソースの説明を入力します。
-
[AWS リージョン] には、使用している AWS リージョン (例:
us-west-1
) を入力します -
[S3 Output Location] (S3 出力場所) には、出力を保存する先の Amazon S3 パスを入力します。
-
-
[Authentication Options] (認証オプション) をクリックします。
-
[Authentication Options] (認証オプション) ダイアログボックスで、以下の値を選択または入力します。
-
[Authentication Type] (認証タイプ) で、[BrowserSAML] を選択します。
-
[Login URL] (ログインURL) には、Okta ダッシュボードから取得した、[Identity Provider Single Sign-On URL] (ID プロバイダのシングルサインオン URL) を入力します。
-
[Listen Port] (リッスンするポート) には、「7890」と入力します。
-
[Timeout (sec)] (タイムアウト (秒)) に、接続のタイムアウト値を秒単位で入力します。
-
-
[OK] をクリックして、[Authentication Options] (認証オプション) を閉じます。
-
接続をテストするには [Test] (テスト) を、終了するには [OK] をクリックします。