---
title: "文字の種類"
slug: "script-types"
abstract: "Sitecore Content Hubで様々な操作を行うために使われるウェブスクリプトの種類の概要。"
---
# 文字の種類

[ウェブスクリプトを作成する](https://doc.sitecore.com/ch/ja/developers/cloud-dev/work-with-scripts.html "Work with scripts")際は、スクリプトの種類を選択しなければなりません。

## アクションスクリプト

このタイプのスクリプトは [、アクション](https://doc.sitecore.com/ch/ja/developers/cloud-dev/actions.html "Actions") や [トリガー](https://doc.sitecore.com/ch/ja/developers/cloud-dev/triggers.html "Triggers")で使用できる唯一のスクリプトタイプです。これらのスクリプトは、複数のユースケースをカバーできるため、最も一般的に使われるスクリプトです。 **トリガー**と共に使用する場合、**アクション** は*Action*スクリプトを「 **プロセス** 中」(即時)または **「バックグラウンド**」のいずれかで実行できます。

アクションスクリプトフロー

![Action script type](https://doc.sitecore.com/api/markdown-image/ch/ja/developers/cloud-dev/images/how-action-scripts-work.png)

> !注UI関連のやり取りや時間のかかる操作には、**進行中のアクション** スクリプトの使用は控えることをお勧めします。

アクションスクリプトは以下のフェーズで実行できます:

-   **Pre-commit** - このフェーズでは、トリガーイベントの前に*Action*スクリプトが実行されます。例えば、トリガーイベントが*Entity modification*の場合、エンティティが修正される前に*Action*スクリプトが実行されます。 *プリコミット* アクションスクリプトを使ってデフォルト値を入力できます。
    
    > !重要 *プリコミット* フェーズはスクリプトがイベントデータを変更できる唯一のフェーズです。
    
-   **Security** - このフェーズでは、アプリケーションがトリガーユーザーの権限を主張した際に*Action*スクリプトが実行されます。 *Security Action*スクリプトは追加のセキュリティチェックや*SecurityException*のスローに使用できます。例えば、トリガーイベントが*Entity modification*されている場合、アプリケーションがトリガーユーザーがエンティティを変更できると主張したときに*Action*スクリプトを実行します。
    
-   **Validation** - このフェーズでは、アプリケーションがトリガーイベントのデータを検証する際に*Action*スクリプトが実行されます。 *Validation Action*スクリプトは追加の検証や*ValidationException*のスローに使用できます。例えば、トリガーイベントが*Entity modification*されている場合、アプリケーションがエンティティの修正値を検証する際に*Action*スクリプトを実行します。
    
-   **Audit** - この段階では、トリガーイベントのデータが最終化された後に*Audit Action*スクリプトが実行されます。 *Audit Action*スクリプトは監査メッセージを内部または外部のログシステムにログ記録するために使用できます。
    
-   **Post** - このフェーズでは、トリガーイベントが確定した後に*Action*スクリプトが実行されます。
    

## その他の文字の種類

以下の表に詳述されているように、他にもさまざまなスクリプトタイプが存在します。

文字の種類

概要

[メタデータ処理](https://doc.sitecore.com/ch/ja/developers/cloud-dev/media-processing-script.html)

システムは処理ワーカーを通じて資産を処理し、最終実行ステップを完了する前に **メタデータ処理** スクリプトを実行します。

[ユーザー事前登録](https://doc.sitecore.com/ch/ja/developers/cloud-dev/user-pre-registration-script.html)

ユーザー事前登録スクリプトは新しいユーザーが作成される前に実行されます。

[ユーザー登録後](https://doc.sitecore.com/ch/ja/developers/cloud-dev/user-post-registration-script.html)

ユーザー登録後スクリプトは新規ユーザーが作成された後に実行されます。

[ユーザーサインイン](https://doc.sitecore.com/ch/ja/developers/cloud-dev/user-sign-in-script.html)

**ユーザーがアプリケーションにログインするたびに、ユーザーのサインインスクリプトが実行されます。**  
  
\> \[!警告\]  
\> *ユーザーのサインイン* スクリプトにユーザーの検証が一貫していない場合、他のランタイムエラーがある場合、ユーザーをロックアウトすることがあります。このロックアウトは、REST APIまたはSDKを使ってスクリプトを無効化することで解決できます。

[共有](https://doc.sitecore.com/ch/ja/developers/cloud-dev/shared-script-referencing-another-script.html)

**共有**スクリプトを使って、よく使われるコードを別のスクリプトで維持・再利用し、そのスクリプトは1つ以上のスクリプトで参照可能です。  
  
\> \[!注\]  
\> 共有スクリプトを構築する際、依存関係のスクリプト(共有スクリプトを参照するもの)も再構築され、依存チェーン全体の整合性が保たれます。共有スクリプトは、すべてのスクリプトが正常にコンパイルできなければ公開できません。