共有ユーザー アカウント ストレージを使用しない異なるSitecoreインスタンス間で、ユーザー アカウントを転送する必要がある場合があります。
これは、Sitecoreパッケージを使用するか、あるインスタンスでユーザー アカウントをシリアル化し、別のインスタンスで逆シリアル化することで実現できます。
ただし、これらのアクションを実行した後、転送されたすべてのユーザーのパスワードは、(Sitecore パッケージを使用する場合)ランダムな値または(シリアル化を使用する場合)デフォルト値の「b」に設定されます。
これは、Sitecoreがユーザー パスワードをハッシュ形式で保存する一方、データベースから標準のメンバーシップAPIを介して元の値を取得できないために発生します。そのため、Sitecoreパッケージを生成するとき、またはシリアル化を実行するときに、ユーザー パスワードを別のストレージに適切に移行できません。
したがって、再配置後にユーザー パスワードを手動でリセットする必要がある場合があります。このプロセスは、転送されるユーザーが多い場合は不便である可能性があり、ユーザー パスワードを変更しないでおく必要がある場合は受け入れられない可能性があります。
以下の手順を使用して、転送されたユーザー アカウントのパスワードを移行することができます:
<hostname>/sitecore/admin/TransferUserPasswords.aspx
上記の手順を実行した後、選択したユーザーのパスワードがターゲットのコア データベースに転送されます。
注:この解決策は、Sitecoreが使用するデフォルトのSQL メンバーシップ プロバイダーにのみ適用されます。