見出し画像

Claris FileMaker Go 19でkintoneのセキュアアクセス用クライアント証明書を利用する

こんにちは、エミックの松尾です。前回の記事では、Claris FileMaker Pro 19でレコードIDを指定してkintoneのレコードデータを1件取得する方法について解説しました。今回の記事では、Claris FileMaker Go 19でkintoneのセキュアアクセス用クライアント証明書を利用してkintoneのレコードデータを取得する方法について記しています。

kintoneからクライアント証明書をダウンロード

今回は、kintoneの有料オプションサービスであるセキュアアクセスのクライアント証明書をClaris FileMaker Go 19で利用する方法について解説します。

クライアント証明書がすでに発行されている前提で解説を進めるので、セキュアアクセスの試用を開始する手順やクライアント証明書を発行する手順の詳細については以前の記事をご参照ください。

kintoneで自身のクライアント証明書をダウンロードするには、パソコンのWebブラウザーを使ってkintoneにアクセスします。クライアント証明書をダウンロードするには、kintoneにログイン後、画面右上の下矢印アイコンをクリックし、[アカウント設定]をクリックします。

kintoneで画面右上の下矢印アイコンをクリックして[アカウント設定]をクリック

次に、アカウント設定画面で[モバイルからのアクセス]をクリックします。

アカウント設定画面で[モバイルからのアクセス]をクリック

クライアント証明書のパスワードを手元に控えた上で、メールアドレスの末尾に「.pfx」という文字列が付加されているリンクをクリックすると、クライアント証明書ファイルをダウンロードできます。

セキュアアクセス用クライアント証明書をダウンロード

Claris FileMaker Proでカスタム Appを準備

前回の記事においてClaris FileMaker Proからkintoneのデータを取得する方法について解説しましたが、今回は前回の記事で利用したカスタム App(目安箱.fmp12)をClaris FileMaker Pro 19がインストールされているMacにコピーしてある前提で説明を進めていきます。

作業後にAirDropを利用する予定であるためMacを使いますが、何らかの方法でカスタム AppをiPhoneにコピーすることが可能であれば、MacではなくWindowsでカスタム Appを更新しても大丈夫です。

実際にカスタム Appを更新していきます。目安箱.fmp12をClaris FileMaker Pro 19で開いた後、[ファイル]メニューの[管理]>[データベース...]を選びます。

Claris FileMaker カスタムAppを開いた後[ファイル]メニューの[管理]>[データベース...]を選択

今回は、カスタム Appの中にクライアント証明書を格納するフィールドを用意する方針にします。フィールド名の欄に「証明書」と入力して、[タイプ]を「テキスト」から「オブジェクト」に変更し、[作成]をクリックします。

[データベースの管理]ダイアログボックスで証明書フィールドを作成

すべてのレコードで共有される1つの値のみが格納されるフィールドであるグローバルフィールドを使う場合、[オプション...]をクリックし、表示されたダイアログボックスで[データの格納]タブをクリックします。その後、[グローバル格納(すべてのレコードに1つの値)を使用する]にチェックをつけて、[OK]をクリックします。

証明書フィールドをグローバルフィールドにする

[データベースの管理]ダイアログボックスで[OK]をクリックすると、証明書フィールドが追加されます。

証明書フィールドを追加した後の画面

証明書フィールドにkintoneからダウンロードしたクライアント証明書ファイルをドラッグ&ドロップして保存します。

証明書フィールドにkintoneからダウンロードしたクライアント証明書をドラッグ&ドロップ

[URL から挿入]スクリプトステップのオプションを調整

前回の記事で作成した「レコードデータを取得」スクリプトを調整します。[スクリプト]メニューの[スクリプトワークスペース...]を選びます。

Claris FileMaker Proのスクリプトワークスペースでスクリプトを更新

「レコードデータを取得」スクリプトを選択します。

作成済みの「レコードデータを取得」スクリプトを選択

[URL から挿入]スクリプトステップの歯車アイコンをクリックして、オプションの[URL を指定]の右にある[指定...]をクリックします。

[URL から挿入]スクリプトステップオプションの[URL を指定]の右にある[指定...]をクリック

kintoneのサブドメイン名と「.cybozu.com」の間に「s.」を入力して、セキュアアクセスで利用するURLに変更します。

URLをセキュアアクセスで利用するURLに変更

[OK]を押した後、[cURL オプションの指定]の右にある[指定...]をクリックします。

[URL から挿入]スクリプトステップオプションの[cURL オプションの指定]の右にある[指定...]をクリック

次の文字列をコピーした後、[計算式の指定]ダイアログボックス内にペーストします。

Let ( $file = 目安箱::証明書; "--header \"X-Cybozu-API-Token: YOUR_TOKEN\" --cert $file:CERT_PASSWORD --cert-type P12" )

「YOUR_TOKEN」という文字列はkintoneの設定画面で生成したAPIトークンに、「CERT_PASSWORD」はkintoneで確認したクライアント証明書のパスワードに置き換えてください。パスワードについては実際には暗号化した上で利用したいところですが、今回はパスワードの暗号化や復号の処理を行わずに説明を進めることにします。

[OK]をクリックし、[スクリプト]メニューの[スクリプトの保存]を選ぶとスクリプトを保存できます。

[スクリプト]メニューの[スクリプトの保存]を選んで更新したスクリプトを保存

[スクリプト]メニューの[スクリプトの実行]を選び、kintoneの目安箱アプリに登録されているタイトルデータが表示されるか確認します。確認後にウインドウを閉じて、カスタム Appを閉じます。

AirDropでMacからiPhoneにカスタム Appをコピー

更新したカスタム AppをiPhoneにコピーします。Claris FileMaker カスタム AppをAirDrop経由でClaris FileMaker Go 19にコピーする手順については以前の記事を参照してください。

なお、転送先のiPhoneに複数のFileMaker Goがインストールされている場合には、どのバージョンでカスタム Appを開くか尋ねられる場合があります。今回は、バージョン19で利用できるようになったクライアント証明書を指定できるcURL オプションを使っているので、必ずバージョン19のClaris FileMaker Goで開くようにしてください。

Claris FileMaker Go 19でスクリプトを実行するには、画面左上にある丸いアイコンをタップした後、[スクリプト]をタップします。

Claris FileMaker Go 19でスクリプトを実行

今回更新した「レコードデータを取得」をタップすると、スクリプトが実行されます。

Claris FileMaker Goでkintoneのデータを取得するスクリプトを実行

スクリプトを実行後、kintoneの目安箱アプリに登録されているタイトルデータが表示されれば成功です。登録されたIPアドレス以外から接続した場合でも、kintoneからデータを取得できるか確認してみてください。

kintoneの目安箱アプリに登録されているタイトルデータが表示されれば成功

まとめ

Claris FileMaker Go 19でkintoneのセキュアアクセス用クライアント証明書を利用してkintoneのレコードデータを取得する方法について解説しました。kintoneでIPアドレス制限とセキュアアクセスを利用している環境では、接続時にクライアント証明書を利用する必要があります。Claris FileMaker 19で利用できるようになったクライアント証明書を指定できるcURL オプションを使用することで、Claris FileMakerからセキュアアクセス用クライアント証明書を使ってkintoneに接続できるようになっています。



この記事が気に入ったらサポートをしてみませんか?