---
title: "ユーザーシリアライズ"
slug: "user-serialization"
abstract: "ユーザーをシリアライズで管理・同期させましょう。"
---
# ユーザーシリアライズ

ユーザーをシリアライズでき、同期操作時に指定されたユーザーも考慮されます。

ユーザーシリアライゼーション機能により、ソリューション内のユーザーを管理し、同じプロジェクトの他の開発者と同期させたり、Sitecore環境全体でソース制御ユーザーの変更を促進したりできます。ユーザーはアイテムパッケージファイル(\*.itempackage)にも含めることができます。

> !注この機能は現在、\*.datファイル作成には利用できません。

## ユーザー設定を\*module.json

どのユーザーをシリアライズプロセスに含めるかを決めることができます。

ルートセクション内の任意の設定ファイルでユーザーを指定することができます \*module.json 。 usersプロパティは、2つのプロパティを持つユーザー述語項目の配列です。

-   domain - Sitecoreユーザードメイン。
-   pattern - ドメインに含める特定のユーザーを決定するための正則表現パターン。

例えば:

{
    ...
    "items": {
        ...
    },
    "users": 
      {
        "domain": "sitecore",
        "pattern": "Developer"
      },
      {
        "domain": "custom",
        "pattern": "User\*"
      },
      {
        "domain": "extranet",
        "pattern": "^MySite.\*$"
      }
    
}

> !注シリアライズされていないが設定の述語に合致する孤児ユーザーは自動的にSitecoreから削除されます。

## ser infoコマンドを使ってユーザーシリアライズを確認する

Sitecore CLI dotnet sitecore serialization infoコマンドを使ってユーザーのデータを確認できます。例えば:

ModuleWithUser
 Subtrees:
 ...
 Users: 1

さらに詳しい情報を表示するには、以下のコマンドで \--traceまたは \-tオプションを使えます:

dotnet sitecore serialization info

Maximum subtree-relative item path allowed: 120

ModuleWithUser
 File: C:\\Projects\\Example\\serialization\\src/ModuleWithUser/ModuleWithUser.module.json
 Subtrees:
 ...
 Users:
 domain :extranet
 pattern:^MySite.\\\*$

## サーバー側のユーザー同期設定

設定ファイルは以下の場所で見つけることができます <cm\_instance\_path>\\App\_Config\\Sitecore\\Services.GraphQL\\Sitecore.Services.GraphQL.Serialization.Users.config

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:role="http://www.sitecore.net/xmlconfig/role/">
    <sitecore>
       ...
        <settings>
            <setting name="Sitecore.DevEx.GraphQL.Serialization.Users.AllowUserSynchronization" value="true" />
 <setting name="Sitecore.DevEx.GraphQL.Serialization.Users.DefaultPassword" value="sitecore" />
 <setting name="Sitecore.DevEx.GraphQL.Serialization.Users.MinPasswordLength" value="8" />
        </settings>
    </sitecore>
</configuration>

-   AllowUserSynchronization - ユーザーのシリアライズ/デシリアライズを可能にします。
-   DefaultPassword - *新規ユーザーが* デシリアライズされる際、そのパスワードはこの値に設定されます。値が randomに設定されている場合、パスワードはランダムに生成された長い値に設定されます。それ以外の場合は、文字通りの値を使います。 random パスワードモードを使用する場合、管理者はユーザーのパスワードをリセットしなければ使用できません。
-   MinPasswordLength - デフォルトパスワードがランダムでない場合、この設定はユーザーのデシリアル化時に許容される最小パスワード長を定義します。長さは0より大きくなければなりません。デフォルトの長さは8です。

## sitecore.jsonにおけるCLI側のユーザー同期設定

孤児ユーザーの管理方法を指定できます。

例えば、孤児ユーザーを削除するには:

{
   ...
    "removeOrphansForUsers": true,
   ...
  },