分析環境を管理する上で、認可されたユーザーのセキュリティとガバナンスは重要です。これを支援するために、ArcGIS GeoAnalytics for Fabricには、組織内のユーザーにアクセスを提供するためのAPIキーを作成(および削除)する機能が含まれています。これにより、ユーザー名とパスワードの代わりにAPIキーを使用できます。APIキーを使用すると、単一のGeoAnalytics for Fabricサブスクリプションを簡単に管理でき、必要に応じてAPIキーを共有、取り消し、ローテーションしてユーザーアクセスを制御できます。このブログ記事では、APIキー認証方法を作成および使用するために必要な手順を説明します。<\/P>
APIキーはそれ自体で一定のセキュリティと制御レベルを提供しますが、これらの資格情報を保護およびアクセスするために、Azure Key Vaultや類似のシークレット管理メカニズムの使用を推奨します。<\/P>
APIキーの作成<\/EM><\/STRONG><\/P>GeoAnalytics for FabricのAPIキーは、アカウントに関連付けられたGeoAnalytics for Fabricダッシュボードから作成されます。このセクションではAPIキー作成手順について説明します。<\/P>注意:<\/STRONG> GeoAnalytics for Fabric用APIキーの保存と使用に関するベストプラクティスについては、セキュリティ/ITチームと確認し、そのポリシーやガイドラインに従うことを推奨します。
<\/P>7Developer credentials8タブを選択し、「New developer credentials」ボタンをクリックします。
<\/span> <\/P><\/LI>「Create developer credentials」ポップアップウィンドウが表示されます。このウィンドウで有効期限日を設定し、「next」ボタンをクリックします。
<\/span> <\/P><\/LI>APIキーに一意のタイトル(例:APIキーが割り当てられるユーザーまたはグループに基づく)を付け、必要に応じて他の設定も入力してから、「next」ボタンをクリックします。
<\/span><\/LI>資格情報生成前にAPIキー設定を確認し、「next」ボタンをクリックします。<\/LI>今すぐまたは後でAPIキーを生成するオプションが表示されます。オプションを選択し、「next」ボタンをクリックします。<\/P>注意:<\/STRONG> APIキーは生成後すぐに安全な場所へコピーしてください。将来アクセス用には保存されません。APIキーセキュリティベストプラクティスに従うことでAPIキーの安全性が保たれます。
<\/P>
<\/span> <\/P><\/LI>「今すぐ」生成オプションが選択された場合、新しいポップアップウィンドウにAPIキーが表示されます。このAPIキーはGeoAnalytics for Fabricの認証に使用されます。上記ステップ5で述べたように、セキュリティベストプラクティスに従うことでAPIキーの安全性が保たれます。
<\/span><\/LI><\/OL>APIキーによるGeoAnalytics for Fabric認証<\/EM><\/STRONG><\/P>GeoAnalytics for Fabricを認証するには、まず「geoanalytics_fabric」モジュールをインポートします。その後、前ステップで生成したAPIキーまたは既存のAPIキーを文字列としてGeoAnalytics for Fabricのauthorization関数の「api_key」パラメーターに渡します。<\/P>import geoanalytics_fabric
geoanalytics_fabric.auth(api_key= "<ここにAPIキー>")<\/code><\/pre><P> <\/P><P>シークレット管理システムも利用可能で、APIキー(視覚的にはマスクされた状態)を安全に保持し、この文字列を直接api_keyパラメーターへ渡すことができます。<\/P><P>GeoAnalytics for Fabricが正常に認証されたか確認するには、<A href="https:\/\/developers.arcgis.com\/geoanalytics-fabric\/api-reference\/geoanalytics_fabric.html#auth-info" target="_blank" rel="noopener nofollow noreferrer">geoanalytics_fabric.auth_info()</A> を使用します。<\/P><pre class="lia-code-sample language-python"><code>geoanalytics_fabric.auth_info().show()<\/code><\/pre><P>認証が成功すると、この関数はGeoAnalytics for Fabric認証情報を含むテーブルを返します。APIキー使用時は、「auth」行の値が「token/apikey」となります。デモ目的で通常テーブルに返される他の行値は空白としています。<\/P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="SBattersby_6-1760552109859.png" style="width: 400px;"><img src="https:\/\/us.v-cdn.net\/6038851\/uploads\/images\/142048i78FC60608C2DF585\/SBattersby_6-1760552109859.png" role="button" title="SBattersby_6-1760552109859.png" alt="SBattersby_6-1760552109859.png" \/><\/span><br \/></P><P>もしAPIキーが無効または無効化されている場合、GeoAnalytics for Fabric認証関数は「not authorized」エラーを返し、「auth_info」テーブルは空になります。<br \/></P><P>さらにGeoAnalytics for Fabricが正常動作しているか確認するため、以下のサンプルコードを実行できます。<br \/></P><pre class="lia-code-sample language-python"><code># インポート
from geoanalytics_fabric.sql import functions as ST, Point
# DataFrame作成
data = [
(1, Point(2279074.576461232, 103019.15556246601)),
(2, Point(2278748.209109826, 103521.65548041835)),
(3, Point(2279243.741068326, 103250.88697086088))
]
df = spark.createDataFrame(data, ["id", "point"]) \
.withColumn("point", ST.srid("point", 6558))
df.printSchema()
df.show(truncate=False)
# DataFrameプロット
df_plot = df.st.plot(basemap= "light", xmargin=0.15, ymargin=0.3, figsize=(10,10));
df_plot.set_title("オレゴン州立大学の注目ポイント")
df_plot.set_xlabel("X (メートル)")
df_plot.set_ylabel("Y (メートル)");<br \/>

結論
このブログ記事では、GeoAnalytics for FabricがどのようにしてAPIキー方式で認証できるかについて見てきました。この投稿が分析ワークフローでこの認証方法を使い始める際のお役に立てば幸いです。この認証方法やその他のGeoAnalytics for Fabricのツール, SQL関数, または トラック関数についてご質問があれば、ぜひ下記コメント欄でフィードバックや質問をご自由にお寄せください。