2025/07/24

SAP CIAM機能

SAP CIAMへのデータ移行:ファイルインポートによる一括移行

顧客ID統合を行う際に大きな課題となるのがシステムのデータ移行です。
SAP Customer Identity and Access Management(SAP CIAM)ではファイルインポートによる一括移行機能が提供されています。
このコラムでは、当社のプロジェクトで実施した事例も含めてデータ移行の方法を解説します。

ファイルインポートによる一括移行の方法

ファイルインポートはSAP CIAMのData Flow機能(バッチ機能)を利用して実現します。
このData Flow機能では、AWS S3やSFTPサーバなどアップロードされたファイルを取り込み、SAP CIAMにアカウント作成するように実装します。

インポートのエラー内容やインポート成功したアカウントのUID(一意な識別子)を出力したり、インポートファイルに含まれていない固定値をアカウントに設定するなど、プロジェクトの要件に沿ってカスタマイズも行います。

移行データファイルの例

移行元システムにはSAP CIAMにインポートするファイルを作成し、AWS S3やSFTPサーバなどにアップロードいただきます。
SAP CIAMはCSVもしくはJSON形式でインポートが可能です。
作成いただくファイルの例は以下の通りです。

CSV形式の場合)

  password,profile_email,profile_lastName,profile_firstName
  gj2kIj5G7GcaEOoT14I1NA==,test1@example.com,Taro,Yamada
  /FY8uwPXeeq6RW3aXMD0Ng==,test2@example.com,Jiro,Suzuki
  

JSON形式の場合)

  [
      {
          "profile_email": "test1@example.com",
          "password": "gj2kIj5G7GcaEOoT14I1NA==",
          "profile_lastName": "Yamada",
          "profile_firstName": "Taro"
      },
      {
          "profile_email": "test2@example.com,",
          "password": "/FY8uwPXeeq6RW3aXMD0Ng==",
          "profile_lastName": "Suzuki",
          "profile_firstName": "Jiro"
      }
  ]
  

移行する個人情報に加えてハッシュ化したパスワードをファイルに含めていただくことで、SAP CIAM移行後にも以前のパスワードでログイン可能となります。

対応するパスワードハッシュ化アルゴリズム

SAP CIAMに直接インポート可能なパスワードハッシュ化アルゴリズムは以下の通りです(2025年6月時点)。

  md5, sha1, sha1_hashbytes, sha256, sha512, sha512Hexa, md5_double_salted, md5_crypt, bcrypt, pbkdf2, pbkdf2_sha256, pbkdf2_sha512, drupal, symphony2, php_hmac_sha256, sha1_nordjyske_custom, md5_variable_salt
  

参考)公式ドキュメント

上記アルゴリズムであればファイルにハッシュ化パスワードを含めることでSAP CIAMにインポートが可能です。
また、移行元システムのハッシュ化アルゴリズムに応じてソルトとラウンドも指定可能です。

対応していないパスワードハッシュ化アルゴリズムの移行方法

移行元システムが独自のハッシュ化アルゴリズムを利用している場合など、SAP CIAMに直接インポートできない際には以下の方法で対応が可能です。

⓪ 事前準備として、AWS Lambdaなどで移行元システムのハッシュ化アルゴリズムを検証する「パスワード検証エンドポイント」を用意する

① SAP CIAMにインポートするファイルに、ハッシュ化パスワードとパスワード検証エンドポイントのURLを含める

移行データの例)

    {
      "password": {
          "hashSettings": {
              "algorithm": "custom",
              "salt": "CCVhNngFHD+uaHr/cnfPqQ==",
              "url": "https://abcdef123456.execute-api.ap-northeast-1.amazonaws.com/passwordHashingEndpoint"
          },
          "hashedPassword": "CCVhNngFHD+uaHr/cnfPqQ=="
      }
    }
  

② エンドユーザがSAP CIAMに初回ログインする

③ SAP CIAMに初回ログイン時、SAP CIAMはパスワード検証エンドポイントに入力されたパスワードを送信する

④⑤ パスワード検証エンドポイントは入力されたパスワードを受け取り、移行元システムのアルゴリズムでハッシュ化してSAP CIAMに返却する

⑥ SAP CIAMは移行したハッシュ化パスワードとパスワード検証エンドポイントから返却されたハッシュ化パスワードを比較し、一致している場合はPBKDF2-SHA512(SAP CIAM標準アルゴリズム)でハッシュ化し直しSAP CIAMに保存する

⑦ 次回ログイン以降は、SAP CIAMに保存されたハッシュ化パスワードで認証されるようになる

システム停止時間を短縮する差分移行

SAP CIAMへのインポートは数百万件行うと半日程度の時間がかかります。
インポート件数が多い場合、新規会員登録と会員情報変更の停止が必要になりますが、サービスとしてはできるだけ停止期間を短くすることが求められます。
その場合、当社では以下のようにSAP CIAMへのインポートを2回に分ける差分移行を実施しています。

①1回目移行(事前)

  1. リリースの数日前などに移行元システムからデータ全量を抽出します。このとき、新規会員登録と会員情報変更は停止しません。
  2. 移行元システムから抽出したデータをSAP CIAMにインポートします。

②2回目移行(リリース当日)

  1. システムを停止し、1回目移行時から更新があったデータ(会員情報変更や新規会員登録されたアカウント)のみを抽出します。
  2. 更新があったデータをSAP CIAMにインポートします。更新があったデータのみとなるため、停止期間を短くすることが可能です。
  3. インポート完了後、Webサイトやアプリのリリース対応を実施しシステムを公開します。

おわりに

当社では本コラムでご紹介したファイルをインポートする移行方式のほかに、エンドユーザ自身の操作で旧システムとSAP CIAMの紐付けを行うユーザセルフ移行方式での実績もございます。
顧客ID統合におけるデータ移行にご興味がございましたら、ぜひ弊社までお問い合わせください。

SAP CIAM機能
最新のコラム

資料ダウンロード

CRMを成功に導く顧客ID統合に欠かせない3つのポイント

CRMを成功に導く顧客ID統合に欠かせない3つのポイント

GDPR対応など、顧客ID統合の検討時の3つのポイントと、「顧客ID&アクセス管理(CIAM)」がそれらをどのように解決するかについて解説します。