0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

国産IDaaS Exticを使ってみる 10. CSV出力 / CSVインポートAPI

Last updated at Posted at 2025-03-27

前回の続きです。

CSV出力とは

Exticのユーザー情報を指定した形式でCSV化し、ローカルディスク上に保存するためのWebアプリケーションです。

設定

事前準備

管理コンソール > アプリケーションから「CSV(オンプレミス)」を選択します。
image.png
表示名を設定し、接続キーを発行して保存します。
スクリーンショット 2025-01-07 140839.png

Webアプリケーションの設定

csvagent.warをダウンロードします。
image.png
<tomcat_home>\webapps\以下にコピーしてデプロイします。
image.png
<tomcat_home>\webapps\csvagent\WEB-INF\classes\META-INF\application_setting.propertiesを開きます。
サブドメイン、接続キー、SQLiteのディレクトリを指定して保存、Tomcatを再起動します。
スクリーンショット 2025-01-07 142013.png
http://(ホスト名):(ポート番号)/csvagent/にアクセスし、管理者ロールを持つユーザーでログインします。
image.png
次の画面に遷移します。
image.png
右上プルダウンメニューから「設定」を選択します。
「CSV出力設定」では、出力先とモード(上書き/リネーム)、区切り文字などの出力ファイルに関する設定を行います。
image.png
「ユーザーマッピング設定」ではExticの属性とCSVの項目名のマッピングを行います。
今回はこのようにしました。パスワードはハッシュ(SHA256もしくは512)、暗号化文字列、平文で出力できます。
image.png

「後続処理実行機能」ではCSVの出力後に実行ファイルを実行することができます。引数として出力したCSVファイルを指定できます。
image.png
最後にポーリング間隔と開始時間、自動起動の設定を行って完了です。
image.png

確認

対象ユーザーのアプリケーション設定にて「使用する」設定にします。
image.png
アプリケーションを起動します。
まずはChangeType=ADDでCSVファイルが作成されます。
スクリーンショット 2025-01-07 145827.png
ユーザー情報を変更します。
image.png
設定の通り、ファイルがリネームされる形でChangeType=MODという行を持つCSVファイルが作成されます。
スクリーンショット 2025-01-07 150102.png
アプリケーションを「使用しない」設定にします。
image.png
設定の通り、項目usernameのみが記載されたChangeType=DELのCSVファイルが作成されます。
image.png

CSVインポートAPIとは

CSVファイルのインポート処理を行うAPIです。CSVファイル内の情報をAPIを介してExticに連携することが可能です。

実証

管理コンソール > 設定 > CSVインポートAPIより、任意のIDとパスワードを設定します。
image.png
入力元となるCSVファイルを作成します。CSVエクスポート機能などを使用してテンプレートとなるCSVを入手しましょう。
今回は既存のユーザーにメールアドレスを追加します。
ChangeTypeMODを指定し、該当のフィールドに値を書き込みます。
スクリーンショット 2025-01-07 152515.png
APIをコールします。

curl -X POST https://(テナント名).ex-tic.com/idm/api/1.3/operation/importCsv -H "Authorization:Basic <ID:パスワード の形式で連結した文字をBase64エンコードしたもの>" -H "Accept-Language:ja" -F "file_input=@(ファイル名)"

コールすると、ユーザー情報が更新されます。
スクリーンショット 2025-01-07 153910.png
image.png

連携処理ログの取得

コールした際のレスポンスとして返ってくるIDを付加した連携処理ログエンドポイントURIに向けてGETします。

curl -X GET  https://(テナント名).ex-tic.com/idm/api/1.3/logs/(ID) -H "Authorization:Basic <ID:パスワード の形式で連結した文字をBase64エンコードしたもの>" -H "Accept-Language:ja"

APIで実行した連携処理ログを入手できます。
スクリーンショット 2025-01-07 155902.png

このようにして、CSVの出力とCSVからの入力が可能です。
次回はパスワードの変更と変更後のパスワード情報を印刷できる、「パスワード通知書印刷機能」について検証します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?