Claris FileMaker Data API で取得したオブジェクトフィールドの参照用URLからデータを取得する上での注意点

Claris FileMaker Server 上に公開されているカスタム App に Data API を使ってアクセスした場合、オブジェクトフィールドの値は参照用の URL として取得できます。その URL にアクセスすればオブジェクトフィールドの内容(画像など)にアクセスできるようになっているわけですが注意が必要です。

この取得した URL は、誰でもその内容にアクセスできるようになっているためセキュリティ的に問題があるということで、Claris FileMaker Server 19.3.1 のアップデートで対策がされています。

「Claris FileMaker Server 19.3.1 リリースノート」

オブジェクトデータのリクエストに FileMaker Data API が使用される場合、オブジェクトデータのストリーミングまたは表示に使用する場合に返される URL にセッショントークンが必要になることで、さらにセキュリティが向上しました。

これにより単に URL にアクセスするだけではオブジェクトフィールドの内容を取得することができず、アクセストークンも含めてリクエストするプログラムを用意する必要があります。

しかしながら専用のプログラムを準備できないところでは困ったことになりました… これを受けて Claris も続けてのアップデートを公開しています。

「Claris FileMaker Server 19.3.2 リリースノート」

次の FileMaker Admin API コマンドを使用すると、管理者は Claris FileMaker Data API を使用してオブジェクトデータを要求するときに明示的な認証なしにストリーミング URL の共有設定を表示および変更できます。FileMaker Server 19.3.1 でセキュリティ機能強化が追加され、ストリーミング URL へのアクセスが制限されました。

運用する環境によっては専用のプログラムを用意することが難しい場合もあるため、オブジェクトフィールドの内容がセキュリティ的に問題があるものではなかったり、URL の取得や取得した URL の管理に一定のセキュリティ上の担保がされている場合は、Claris FileMaker Server の設定を変更することで従来と同じく URL にアクセスするだけでオブジェクトフィールドの内容にアクセスすることができるようになりました。

設定方法は、上記リリースノートに記載されています。

FileMaker Admin API

コマンド: FileMaker Server の 「AuthenticatedStream」の設定状況を確認
・メソッド: GET
・URI: /fmi/admin/api/v2/server/config/authenticatedstream
・ヘッダ: Content-Type: application/json

コマンド: FileMaker Server の 「AuthenticatedStream」の設定を変更
・メソッド: PATCH
・URI: /fmi/admin/api/v2/server/config/authenticatedstream
・ヘッダ: Content-Type: application/json
・ボディ: {"authenticatedStream":2}

Windows 環境のコマンドプロンプト、または Mac 環境のターミナル、または Ubuntu 環境の CLI

コマンド: FileMaker Server の 「AuthenticatedStream」の設定状況を確認
fmsadmin get serverprefs AuthenticatedStream

コマンド: FileMaker Server の 「AuthenticatedStream」の設定を変更
fmsadmin set serverprefs AuthenticatedStream=2

authenticatedStream 引数を 2 に設定するとストリーミング URL のセキュリティ機能強化を無効にして明示的な認証なしにストリーミング URL を共有することができます。authenticatedStream 引数を 1 に設定するとデフォルト動作となりセキュリティ機能強化が再度有効になります。

Clarsi FileMaker Server 19.3.1 のアップデートでの Data API でのオブジェクトフィールドの取得に際して仕様変更があったことを知らない方も多く、データ取得できなくなったと困っている方は上記設定をお試しください。

1 COMMENT

Claris FileMaker Data API で取得したオブジェクトフィールドの参照用URLからデータを取得する上での注意点 その2 - 株式会社寿商会

[…] 前回は、Claris FileMaker Server 上に公開されているカスタム App に Data API でアクセスして取得したオブジェクトフィールドの参照用の URL からデータをダウンロードするために、FileMaker Server の設定「 AuthenticatedStream 」を変更することで対応する方法を紹介しました。 […]

現在コメントは受け付けておりません。