ServiceNow ITSMでMicrosoft 365申請ワークフローを運用管理する - SharePoint連携型システムの管理者ガイド
はじめに
本記事は、ServiceNow(以下SNOW)を使ったMicrosoft 365申請ワークフローシステムの運用管理者向けガイドです。SNOW全体の基盤管理は別部隊が担当し、あなたはM365申請領域の運用管理を担当する想定です。
想定読者: SNOWの操作経験が浅い方でも、手順通りに進めれば運用管理ができるよう記載しています。
1. システム概要と管理者の役割
1.1 システム全体構成
本システムは、SNOWで受け付けたM365に関する申請を、SharePointリスト経由で別システムに連携し、M365への設定反映を自動化する仕組みです。
申請フォーム] B -->|承認フロー| C[承認者] C -->|承認| D[Workflow
SharePoint Spoke] D -->|データ書込| E[SharePointリスト] E -->|データ読取| F[M365設定反映
システム] F -->|設定反映| G[Microsoft 365] F -->|結果書込| E H[SNOW定期ジョブ] -->|結果確認| E H -->|正常時| I[申請者へ完了通知] H -->|エラー時| J[管理者へ通知] J -->|確認・修正| K[管理者] K -->|再登録| E
1.2 9つの申請機能(例)
本システムでは以下のような申請機能を実装しています(例):
| No | 申請機能名 | 概要 |
|---|---|---|
| 1 | ユーザー作成申請 | 新規ユーザーアカウントの作成 |
| 2 | ユーザー削除申請 | ユーザーアカウントの削除 |
| 3 | グループ作成申請 | Microsoft 365グループの作成 |
| 4 | グループメンバー追加申請 | グループへのメンバー追加 |
| 5 | ライセンス割当申請 | ユーザーへのライセンス付与 |
| 6 | メールボックス設定変更申請 | メールボックス容量などの変更 |
| 7 | チーム作成申請 | Microsoft Teamsチームの作成 |
| 8 | 外部共有設定申請 | SharePoint外部共有の許可 |
| 9 | セキュリティグループ作成申請 | Azure ADセキュリティグループの作成 |
1.3 管理者の責任範囲
あなたが担当する範囲:
- M365申請ワークフローの日常運用監視
- エラー発生時の対応と再申請処理
- 申請フォーム・ワークフローの軽微な修正
- 申請者・承認者からの問い合わせ対応
- 運用レポートの作成
担当外(別部隊が対応):
- SNOWプラットフォーム全体のアップデート
- インフラ・ネットワーク設定
- SharePoint Spokeの初期インストール
- システム全体のバックアップ・リカバリー
2. 申請ワークフローの仕組み
2.1 Catalog Itemと申請フォームの確認方法
手順:
SNOWにログイン
- ブラウザで組織のSNOW URLにアクセス
- 管理者権限のあるアカウントでログイン
Service Catalogへ移動
- 左上の検索バー(Filter navigator)に
Service Catalogと入力 Service Catalog > Catalog Definitions > Maintain Itemsをクリック
- 左上の検索バー(Filter navigator)に
M365申請のCatalog Itemを確認
- リストから該当する申請(例: “ユーザー作成申請”)を検索
- Nameフィールドで絞り込み可能
- 該当レコードをクリックして開く
フォーム構成の確認
- 「Variables」タブで申請フォームの項目を確認
- 各変数の「Question」が申請者に表示される項目名
- 「Type」でデータ型(テキスト、日付、選択肢など)を確認
2.2 Workflow Editorの基本操作
ワークフローを開く手順:
Workflow Editorへアクセス
- Filter navigatorに
Workflow Editorと入力 Workflow > Workflow Editorをクリック
- Filter navigatorに
対象ワークフローを検索
- 画面上部の検索ボックスに申請名(例: “M365 User Create”)を入力
- 該当するワークフローをクリック
ワークフローの構造を理解
graph TD A[Start] --> B[Approval
承認処理] B -->|承認| C[Run Script
データ整形] C --> D[SharePoint Spoke
SPOリストへ書込] D --> E[Wait for Condition
結果待機] E --> F{結果確認} F -->|成功| G[Send Notification
申請者へ通知] F -->|エラー| H[Send Notification
管理者へ通知] G --> I[End] H --> I各アクティビティの確認方法
- ワークフロー図上のボックスをダブルクリック
- 設定内容が右側のパネルに表示される
2.3 SharePoint Spokeの設定確認
SharePoint Spoke接続の確認手順:
Connection & Credential Aliasの確認
- Filter navigatorに
Connection & Credentialと入力 Connections & Credentials > Connection & Credential Aliasesをクリック- “SharePoint M365"などの名前で登録されているエイリアスを探す
- Filter navigatorに
接続情報の確認
- エイリアスレコードをクリック
- 「Connections」関連リストで実際の接続先URLを確認
- 「Credentials」関連リストで認証情報を確認(パスワードは表示されません)
接続テスト(重要)
- エイリアスレコード上部の「Test Connection」ボタンをクリック
- 成功メッセージが表示されることを確認
- エラーが出た場合は基盤管理部隊にエスカレーション
2.4 SPOリストへのデータマッピング
ワークフロー内のSharePoint Spoke設定確認:
Workflow Editorで該当アクティビティを開く
- “Create Item in SharePoint List"などの名前のアクティビティをダブルクリック
リスト情報の確認
- Site URL: SharePointサイトのURL(例:
https://contoso.sharepoint.com/sites/M365Requests) - List Name: リスト名(例:
UserCreateRequests)
- Site URL: SharePointサイトのURL(例:
フィールドマッピングの確認
- 「Inputs」タブでSNOW側のフィールドとSPOリストのカラムのマッピングを確認
- 例:
申請番号→RequestNumberユーザー名→UserNameメールアドレス→Emailステータス→ProcessStatus(初期値: “待機中”)
必須フィールドの確認
- SPOリスト側で必須設定されているカラムが全てマッピングされているか確認
- 不足があるとワークフローがエラーになります
3. SharePointリストとの連携管理
3.1 SPOリスト構造の理解
SharePointリストへのアクセス手順:
SharePointサイトへアクセス
- ブラウザでSharePointサイトURLを開く
- M365アカウントでログイン(SNOW管理者には通常アクセス権が付与されています)
対象リストを開く
- 左側メニューまたはサイトコンテンツから該当リスト(例: “UserCreateRequests”)をクリック
リストの列(カラム)を確認
- ��スト画面で「+列の追加」の横にある⚙️(設定)をクリック
- 「リストの設定」を選択
- 「列」セクションで全カラムの一覧を確認
標準的なリスト構造例:
| カラム名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| RequestNumber | 1行テキスト | ✓ | SNOW申請番号(一意) |
| RequestType | 選択肢 | ✓ | 申請種別(UserCreate/UserDeleteなど) |
| RequestData | 複数行テキスト | ✓ | 申請内容(JSON形式) |
| ProcessStatus | 選択肢 | ✓ | 処理状態(待機中/処理中/完了/エラー) |
| ResultMessage | 複数行テキスト | - | 処理結果メッセージ |
| ErrorDetails | 複数行テキスト | - | エラー詳細 |
| CreatedDateTime | 日付と時刻 | ✓ | 作成日時 |
| ProcessedDateTime | 日付と時刻 | - | 処理完了日時 |
3.2 リストアイテムの確認方法
日常的な確認手順:
リストをフィルタリング
- リスト画面右上の「フィルター」アイコンをクリック
- ProcessStatusで「エラー」を選択してエラー案件のみ表示
- または「待機中」で処理待ちを確認
特定の申請を検索
- リスト画面上部の検索ボックスに申請番号を入力
- 該当アイテムをクリックして詳細を確認
ビューの切り替え
- リスト画面左上の「すべてのアイテム」ドロップダウンをクリック
- 事前作成されたビュー(例: “エラー案件”、“本日の申請”)を選択
3.3 SharePoint接続エラー時の対処
よくあるエラーと対処法:
| エラーメッセージ | 原因 | 対処法 |
|---|---|---|
| “Authentication failed” | 認証情報の有効期限切れ | 基盤管理部隊に連絡してCredential更新を依頼 |
| “List not found” | リスト名の変更/削除 | SharePoint側でリスト存在確認、SNOW側の設定確認 |
| “Access denied” | SNOWサービスアカウントの権限不足 | SharePointリストの権限設定を確認(編集権限が必要) |
| “Field not found” | リストカラムの変更 | フィールドマッピングとSPOリストのカラム名が一致するか確認 |
接続テストの再実行:
- Filter navigatorで
Connection & Credential Aliasesを検索 - SharePoint接続のエイリアスを開く
- 「Test Connection」ボタンをクリック
- 結果を確認してスクリーンショット保存(エラー時の報告用)
4. 定期ジョブ(Scheduled Job)の管理
4.1 SPOリスト監視ジョブの確認
ジョブの場所と開き方:
Scheduled Jobsへアクセス
- Filter navigatorに
Scheduled Jobsと入力 System Scheduler > Scheduled Jobs > Scheduled Jobsをクリック
- Filter navigatorに
M365関連ジョブを検索
- 「Name」列で “M365” や “SharePoint Result” などのキーワードで検索
- 該当するジョブ(例: “M365 Result Monitor Job”)をクリック
ジョブの基本情報を確認
- Name: ジョブ名
- Active: チェックが入っていることを確認(入っていないと実行されません)
- Run: 実行スケジュール
- 例:
0 */10 * * * ?= 10分ごとに実行 - 例:
0 0 * * * ?= 1時間ごとに実行
- 例:
4.2 実行スケジュールの設定
スケジュール設定の読み方(Cron形式):
秒 分 時 日 月 曜日
│ │ │ │ │ │
│ │ │ │ │ └─ 曜日 (0-6: 日曜=0)
│ │ │ │ └──── 月 (1-12)
│ │ │ └─────── 日 (1-31)
│ │ └────────── 時 (0-23)
│ └───────────── 分 (0-59)
└──────────────── 秒 (0-59)
よく使うパターン例:
0 */5 * * * ?→ 5分ごと0 0/10 * * * ?→ 10分ごと0 0 9-18 * * ?→ 9時から18時まで1時間ごと0 30 8 * * ?→ 毎日8:30
スケジュール変更手順:
- Scheduled Jobレコードを開く
- 「Run」フィールドをクリック
- Cron式を直接編集、または「When to run」タブで設定
- 画面上部の「Update」ボタンをクリックして保存
4.3 ジョブの処理ロジック確認
Script内容の確認方法:
Scheduled Jobレコードの「Script」フィールドを確認
典型的な処理フロー:
1 2 3 4 5 6// 1. SharePointリストから結果を取得 // 2. ProcessStatus='処理済み'かつSNOW未反映のアイテムを検索 // 3. 各アイテムについて: // - 正常完了の場合: 申請者へメール送信、SNOW申請レコードを'完了'に更新 // - エラーの場合: 管理者へメール送信、SNOW申請レコードを'エラー'に更新 // 4. SPOリスト側に'SNOW反映済み'フラグを立てるログ出力の確認
- スクリプト内に
gs.info()やgs.error()がある箇所がログ出力ポイント
- スクリプト内に
4.4 ジョブログの確認方法
実行履歴とログの見方:
System Logでログ確認
- Filter navigatorに
System Log > Allと入力 System Logs > System Log > Allをクリック
- Filter navigatorに
ジョブ実行ログを絞り込み
- 「Source」列でジョブ名を検索
- または「Created」列で時刻を絞り込み
エラーログの確認
- 「Level」列で
errorをフィルタ - 「Message」列でエラー内容を確認
- 「Level」列で
実行履歴の確認
- Scheduled Jobレコード内の「Executions」関連リストで過去の実行結果を確認
- 「State」列で成功/失敗を判別
ログ確認のベストプラクティス:
- 毎日定時にエラーログをチェック
- エラーが連続している場合は緊急対応
4.5 ジョブの停止・再開手順
一時停止が必要なケース:
- SharePoint側のメンテナンス中
- M365設定反映システムの停止時
- 大量エラー発生時の調査
停止手順:
- Scheduled Jobレコードを開く
- 「Active」チェックボックスを外す
- 「Update」ボタンをクリック
- 確認: レコードリスト画面で「Active」列が空白になっていることを確認
再開手順:
- Scheduled Jobレコードを開く
- 「Active」チェックボックスを入れる
- 「Update」ボタンをクリック
- 確認: 次回実行予定時刻が「Next action」フィールドに表示されることを確認
緊急時の即座実行:
- Scheduled Jobレコードを開く
- 画面上部の「Execute Now」ボタンをクリック
- 実行完了を待つ(数秒〜数分)
- System Logで実行結果を確認
5. 通知管理
5.1 申請者向け完了通知の設定
通知(Notification)の場所:
Notificationsへアクセス
- Filter navigatorに
Notificationsと入力 System Notification > Email > Notificationsをクリック
- Filter navigatorに
M365完了通知を検索
- 「Name」列で “M365 Completion” などを検索
- 該当レコードをクリック
通知設定の確認項目:
| 項目 | 説明 | 確認ポイント |
|---|---|---|
| Active | 有効/無効 | チェックが入っているか |
| Send when | 送信タイミング | “Record updated” + 条件式 |
| Who will receive | 送信先 | “Requested for”(申請者)など |
| Subject | 件名 | 変数展開が正しいか |
| Message HTML | 本文 | テンプレートの内容 |
5.2 メールテンプレートのカスタマイズ
件名の編集:
- Notificationレコードの「Subject」フィールドを編集
- 変数を使用可能(例:
${number}= 申請番号) - 例:
[M365申請] ${short_description} が完了しました (${number})
本文の編集:
「Message HTML」フィールドをクリック
HTMLエディタが開く
テンプレート例:
1 2 3 4 5 6 7 8 9 10 11<p>${requested_for} 様</p> <p>お申し込みいただいたMicrosoft 365申請が正常に完了しました。</p> <ul> <li>申請番号: ${number}</li> <li>申請内容: ${short_description}</li> <li>完了日時: ${processed_datetime}</li> </ul> <p>ご不明点がございましたら、管理者までお問い合わせください。</p>「Preview Notification」ボタンでプレビュー確認
「Update」で保存
使用可能な変数の確認方法:
- Notificationレコード内の「Insert/edit variable」アイコンをクリック
- 申請テーブル(例:
sc_req_item)のフィールド一覧が表示される - 使いたいフィールドを選択して挿入
5.3 管理者向けエラー通知の設定
エラー通知の作成/確認:
- Notificationsから “M365 Error Notification” を開く
- 重要な設定:
- When to send:
状態が'エラー'に変更されたとき - Who will receive: 管理者グループ(例: “M365 Admin Group”)
- When to send:
管理者グループの確認:
- Filter navigatorに
Groupsと入力 User Administration > Groupsをクリック- 該当グループ(例: “M365 Admins”)を開く
- 「Group Members」関連リストで自分が含まれているか確認
- 含まれていない場合は「Edit」ボタンから追加
エラー通知のテンプレート例:
| |
5.4 通知トラブルシューティング
メールが届かない場合のチェックリスト:
Notification設定確認
- 「Active」がチェックされているか
- 「Send when」条件が正しいか
- 「Who will receive」が設定されているか
Email Logで送信履歴確認
- Filter navigatorに
Email Logsと入力 System Logs > Email > Allをクリック- 該当申請番号でフィルタ
- 「State」列で送信成功/失敗を確認
- Filter navigatorに
送信エラーの原因確認
- Email Logレコードの「Error string」を確認
- よくあるエラー:
- “Invalid email address” → 宛先メールアドレスが不正
- “User has no email” → SNOWユーザーレコードにメールアドレス未設定
- “Email sending disabled” → SNOWのメール送信機能が無効(基盤管理部隊に確認)
受信者のメール設定確認
- ユーザーレコード(
sys_user)の「Email」フィールドを確認 - ユーザーが通知をオプトアウトしていないか確認
- ユーザーレコード(
テスト送信の実施:
- Notificationレコードを開く
- 画面上部の「Send Test Email」をクリック
- 自分のメールアドレスを入力
- 数分以内に受信することを確認
6. エラー対応と再申請処理
6.1 エラー通知の確認手順
エラー発生時の初動:
エラー通知メールを確認
- 件名、申請番号、エラー内容をメモ
SNOWで申請レコードを開く
- Filter navigatorに
Service Catalog > My Requestsと入力(またはsc_req_item.listで直接リストへ) - 申請番号で検索
- 該当レコードをクリック
- Filter navigatorに
申請内容を確認
- 「Variables」セクションで申請者が入力した内容を確認
- 「Workflow Context」タブで処理状況を確認
Work Notes にエラー対応開始を記録
- 「Work Notes」タブをクリック
- 「エラー対応開始: [現在日時]」と入力
- これにより対応履歴が残ります
6.2 SharePointリストでのエラー内容確認
詳細エラー情報の取得手順:
SharePointリストを開く
- ブラウザで該当リストにアクセス
エラーアイテムを検索
- リスト上部の検索ボックスに申請番号を入力
- または「ProcessStatus」列で「エラー」をフィルタ
エラー詳細を確認
- アイテムをクリックして詳細画面を開く
- 確認項目:
- ErrorDetails: 具体的なエラーメッセージ
- ResultMessage: M365設定反映システムからの応答
- ProcessedDateTime: エラー発生日時
エラー内容をスクリーンショット保存
- 報告・記録用に画面をキャプチャ
6.3 よくあるエラーパターンと対処法
エラー1: 権限エラー
エラーメッセージ例:
"Access denied: Insufficient privileges to perform this operation"
"User does not have required role: User Administrator"
原因:
- M365設定反映システムのサービスアカウントに必要な権限がない
対処法:
- エラー内容をM365設定反映システムの管理者に連絡
- 必要な権限を付与してもらう
- 付与後、手順6.5で再登録を実施
予防策:
- 新しい申請種別を追加する際は、事前に権限要件を確認
エラー2: データ形式エラー
エラーメッセージ例:
"Invalid email format: user@domain"
"UPN must contain @ symbol"
"Display name contains invalid characters"
原因:
- 申請フォームのバリデーション不足
- 申請者の入力ミス
対処法:
SNOWで申請内容を確認
- 該当フィールドの値をチェック
SharePointリストで直接修正(緊急時)
- リストアイテムを開く
- 「編集」をクリック
RequestDataフィールドのJSON内の該当値を修正- 例:
"email": "userdomain"→"email": "[email protected]" - 「保存」をクリック
ProcessStatusを’待機中’に戻す
- 同じ編集画面で
ProcessStatusを「待機中」に変更 - 「保存」をクリック
- M365設定反映システムが再度処理します
- 同じ編集画面で
申請フォームのバリデーション追加(恒久対応)
- Catalog Itemの変数設定で正規表現チェックを追加
- 例: Email形式のバリデーション →
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
エラー3: タイムアウトエラー
エラーメッセージ例:
"Request timeout: Operation took longer than 60 seconds"
"Gateway timeout"
原因:
- M365側のAPI応答遅延
- ネットワーク問題
対処法:
一時的な問題の可能性を確認
- 10分後に再度確認
- Microsoft 365 Service Healthを確認: https://admin.microsoft.com/Adminportal/Home#/servicehealth
手動再試行
- SharePointリストの
ProcessStatusを「待機中」に変更 - M365設定反映システムが再処理
- SharePointリストの
連続発生の場合
- M365設定反映システムのタイムアウト設定を延長するよう管理者に依頼
エラー4: 重複エラー
エラーメッセージ例:
"User already exists: [email protected]"
"Group name is already in use"
原因:
- 既存リソースとの重複
- 過去の申請と同じ内容
対処法:
M365で実際の状態を確認
- Microsoft 365 管理センターでユーザー/グループを検索
- 既に存在するか��認
既に存在する場合
- 申請者に連絡して状況を説明
- SNOW申請レコードのステータスを「キャンセル」または「重複により完了」に変更
- Work Notesに理由を記載
存在しないのにエラーが出る場合
- M365設定反映システムのキャッシュクリアを依頼
- 再処理を実施
6.4 申請内容の修正手順
SNOW側での修正方法:
申請レコードを開く
sc_req_itemテーブルから該当レコードを開く
変数値の修正
- 画面右上の鍵アイコン(ロック解除)をクリック
- 「Variables」セクションで該当フィールドを修正
- 例: メールアドレスの修正、表示名の修正
ステータスを戻す
- 「State」フィールドを「Pending」などに変更(ワークフロー再実行用)
ワークフローを再実行
- 「Workflow」関連リストで現在のワークフローコンテキストを確認
- 必要に応じて「Retry」ボタンをクリック
注意: この方法はワークフロー設計によって異なるため、初回は経験者に確認推奨
SharePointリストでの直接修正方法(推奨):
リストアイテムを開く
- SharePointリストで該当アイテムをクリック
編集モードに入る
- 画面上部の「編集」ボタンをクリック
RequestDataフィールドを修正
- JSON形式で保存されている申請内容を直接編集
- 例:
1 2 3 4 5 6{ "requestNumber": "REQ0012345", "userName": "testuser", "email": "[email protected]", // ← ここを修正 "displayName": "テスト ユーザー" }
ProcessStatusを変更
- 「エラー」→「待機中」に変更
ErrorDetailsをクリア(任意)
- エラーメッセージを削除または「修正済み」と記載
保存
- 「保存」ボタンをクリック
M365設定反映システムの再処理を待つ
- 通常、数分〜数十分で再処理されます
6.5 再登録処理とステータス管理
再登録の標準フロー:
ステータス管理の重要性:
| ステータス | 意味 | 次のアクション |
|---|---|---|
| 待機中 | M365設定反映システム処理待ち | 自動処理を待つ |
| 処理中 | M365設定反映システムが処理中 | 完了を待つ |
| 完了 | 正常完了 | なし(申請者に通知済み) |
| エラー | 処理失敗 | 原因調査→修正→再登録 |
| 再処理中 | 管理者が修正後、再処理待ち | 結果を監視 |
再登録時のチェックリスト:
- エラー原因が特定されている
- 修正内容が正しい(ダブルチェック推奨)
- SharePointリストの
ProcessStatusが「待機中」になっている - SNOW申請レコードのWork Notesに対応履歴を記載
- 必要に応じて申請者に状況を連絡
複数件の一括再登録:
SharePointリストで複数アイテムを選択
- チェックボックスで対象を選択
「クイック編集」モードに切り替え
- リスト上部の「クイック編集」をクリック
ProcessStatus列を一括変更
- 対象アイテムの
ProcessStatusセルを「待機中」に変更
- 対象アイテムの
「完了」をクリックして保存
7. 日常運用業務
7.1 日次確認項目
毎日の運用チェックリスト(所要時間: 10〜15分):
1. エラー発生状況の確認
手順:
SNOWでエラー案件を確認
- Filter navigatorに
sc_req_item.listと入力 - フィルタ条件:
State=ErrorまたはFailed - 新規エラーの件数を確認
- Filter navigatorに
SharePointリストでエラー確認
- リストを開く
- 「ProcessStatus」列で「エラー」をフィルタ
- 前日比で増減を確認
エラー対応
- 各エラーについて手順6の対応フローを実施
- 優先度: 申請日時が古いもの、VIP申請者のもの
2. 処理滞留の確認
手順:
長時間「処理中」のアイテムを確認
- SharePointリストで
ProcessStatus= 「処理中」をフィルタ CreatedDateTime列で並べ替え- 1時間以上「処理中」のままのアイテムを確認
- SharePointリストで
滞留の原因調査
- M365設定反映システムのログを確認(別システム管理者に依頼)
- ネットワーク障害やM365側の問題をチェック
必要に応じて手動介入
- タイムアウトの可能性がある場合、
ProcessStatusを「待機中」に戻して再処理
- タイムアウトの可能性がある場合、
3. 定期ジョブの実行確認
手順:
Scheduled Jobの最終実行時刻を確認
System Scheduler > Scheduled Jobs > Scheduled Jobsを開く- M365関連ジョブの「Last run」列を確認
- 想定スケジュール通りに実行されているか確認
ジョブエラーの確認
- System Logで該当ジョブのエラーログを検索
- エラーがあれば原因調査
4. 通知送信状況の確認
手順:
Email Logで送信エラーを確認
System Logs > Email > Allを開く- フィルタ:
Type=sent、State=failed - 過去24時間の送信失敗を確認
失敗理由の確認と対処
- 各レコードの「Error string」を確認
- 宛先不明、ユーザーメールアドレス未設定などを修正
日次確認の記録:
- 確認結果を簡単なExcel/スプレッドシートに記録推奨
- 記録項目例:
- 日付
- エラー件数
- 対応完了件数
- 未対応件数
- 特記事項
7.2 週次/月次メンテナンス
週次メンテナンス(所要時間: 30分〜1時間)
1. 完了申請のアーカイブ
SNOWでは大量のレコードがパフォーマンスに影響するため、定期的なアーカイブが推奨されます。
手順:
アーカイブ対象の確認
sc_req_item.listを開く- フィルタ:
State=Closed Complete、Closed<30日前 - 対象件数を確認
アーカイブ実施(基盤管理部隊に依頼する場合もあり)
- 組織のアーカイブポリシーに従う
- 通常は90日以上前の完了案件をアーカイブ
SharePointリストのアーカイブ
- リストで
ProcessStatus= 「完了」かつProcessedDateTimeが30日以上前のアイテムを確認 - 必要に応じて別リスト/ライブラリに移動
- または「アーカイブ済み」ビューに振り分け
- リストで
2. SharePointリストの容量管理
手順:
リストサイズの確認
- SharePointサイトの設定 > 「ストレージ メトリック」を確認
- リストが使用している容量をチェック
閾値の確認
- リストビューの閾値: 5,000アイテム(インデックス未設定の場合)
- サイト容量の閾値: 組織の割当による
対処
- 5,000件に近い場合: 古いアイテムを別リストに移動
- または Power Automate で自動アーカイブフローを構築
3. ワークフロー実行履歴のクリーンアップ
手順:
Workflow Contextsの確認
- Filter navigatorに
Workflow Contextsと入力 Workflow > Workflow Contextsを開く- 古い完了済みコンテキストを確認
- Filter navigatorに
不要なコンテキストの削除
- 30日以上前の完了済みコンテキストを削除
- これによりパフォーマンスが改善します
月次メンテナンス(所要時間: 1〜2時間)
1. 運用レポートの作成
手順7.3で詳述
2. 設定のバックアップ
手順:
Update Setの作成
- Filter navigatorに
Update Setsと入力 System Update Sets > Local Update Setsを開く- 「New」ボタンをクリック
- Name: “M365 Workflow Backup YYYY-MM”
- 「Submit」をクリック
- Filter navigatorに
カスタマイズをキャプチャ
- 作成したUpdate Setを開く
- 「Capture Configuration」から主要設定をキャプチャ
- Catalog Items
- Workflows
- Notifications
- Scheduled Jobs
XMLエクスポート
- Update Setレコードで「Export to XML」をクリック
- ファイルを安全な場所に保存
3. マスターデータの見直し
- 承認者リストの更新
- グループメンバーの確認
- 申請フォームの選択肢更新(部署名、役職など)
7.3 レポート・ダッシュボードの活用
レポートの作成
申請件数レポートの作成手順:
Reportsへアクセス
- Filter navigatorに
Reportsと入力 Reports > View/Runをクリック
- Filter navigatorに
新規レポート作成
- 「Create New」ボタンをクリック
- Source:
Requested Item [sc_req_item] - Type:
Bar ChartまたはLine Chart
レポート設定
- Group by:
Catalog Item(申請種別ごと) - Aggregation:
Count - Filter:
Created=This month - タイトル: “M365申請件数(月次)”
- Group by:
保存と共有
- 「Save」をクリック
- 「Share」で他の管理者と共有
エラー率レポートの作成:
新規レポート作成
設定:
- Source:
Requested Item [sc_req_item] - Type:
Pie Chart - Group by:
State - Filter:
Catalog Item= M365関連申請 - Date range:
Last 30 days
- Source:
エラー率の可視化
Error/Completedの比率が一目でわかる
ダッシュボードの構築
手順:
Dashboardsへアクセス
- Filter navigatorに
Dashboardsと入力 Self-Service > Dashboardsをクリック
- Filter navigatorに
新規ダッシュボード作成
- 「New」ボタンをクリック
- Title: “M365申請管理ダッシュボード”
- Layout:
3 columnなど好みのレイアウトを選択
ウィジェット追加
- 「Edit」モードに入る
- 以下のようなウィジェットを追加:
- 今日の申請件数: List widget(フィルタ: Created = Today)
- エラー案件一覧: List widget(フィルタ: State = Error)
- 月次申請推移: Chart widget(先ほど作成したレポート)
- 処理時間統計: Gauge widget(平均処理時間)
ホームページに設定
- 自分のユーザープロファイルでこのダッシュボードをホームページに設定
- 毎日ログイン時に状況を一覧できます
効果的なダッシュボード構成例:
| ウィジェット | 表示内容 | 目的 |
|---|---|---|
| エラー案件リスト | State=Errorの申請一覧 | 即座に対応が必要な案件を把握 |
| 処理待ち件数 | ProcessStatus=待機中の件数 | 処理滞留の早期発見 |
| 申請種別ごとの件数 | 9つの申請の内訳 | どの申請が多いか傾向把握 |
| 週次エラー率 | エラー率の推移グラフ | 品質モニタリング |
8. 設定変更とメンテナンス
8.1 申請フォームの項目変更手順
変更が必要なケース:
- 新しい入力項目の追加
- 既存項目の選択肢変更
- 必須/任意の変更
手順:
Catalog Itemを開く
Service Catalog > Catalog Definitions > Maintain Itemsを開く- 変更したい申請(例: “ユーザー作成申請”)を検索してクリック
変数(Variables)の編集
- 「Variables」タブをクリック
- 既存変数を編集する場合: 該当行をダブルクリック
- 新規追加する場合: 「New」ボタンをクリック
変数の設定項目
| 項目 | 説明 | 設定例 |
|---|---|---|
| Question | 申請者に表示される質問文 | “メールアドレス” |
| Name | 内部的な変数名(スクリプトで使用) | email |
| Type | データ型 | Single Line Text, Choice, Date など |
| Mandatory | 必須項目かどうか | チェック=必須 |
| Order | 表示順序 | 100, 200, 300… |
| Default value | デフォルト値 | 空白または固定値 |
選択肢(Choice)の設定
- Type =
Choiceの場合 - 「Question Choices」関連リストで選択肢を追加
- 「New」をクリックして各選択肢を登録
- Text: 表示テキスト、Value: 内部値
- Type =
変更を保存
- 「Update」ボタンをクリック
テスト
- Service Catalogから該当申請を実際に開いてフォーム表示を確認
- 項目の並び順、必須チェック、選択肢が正しいか確認
注意事項:
- 変数名(Name)を変更すると、ワークフロー内のスクリプトも修正が必要
- SharePointリストのフィールドマッピングも併せて確認
8.2 ワークフローの修正方法
テスト環境での検証が必須です。可能であれば開発/テスト環境で検証後、本番環境に反映してください。
軽微な修正(メール文面の変更など)
手順:
Workflow Editorを開く
Workflow > Workflow Editorを開く- 該当ワークフローを検索
対象アクティビティを編集
- 例: 通知メールの文面変更
- 「Send Notification」アクティビティをダブルクリック
- 「Notification」フィールドで該当Notificationを選択
- または直接メッセージを編集
保存とバージョン管理
- 「Publish」ボタンをクリックしてワークフローを公開
- 新しいバージョンが作成されます
テスト実行
- テストユーザーで申請を作成
- ワークフローが正しく動作するか確認
SharePoint Spokeのフィールドマッピング変更
ケース: 申請フォームに新しい項目を追加し、SharePointリストにも送信したい
手順:
SharePointリスト側の準備
- SharePointリストに新しい列を追加
- 列名、データ型を決定(例:
Department, 1行テキスト)
Workflow Editorで該当アクティビティを開く
- “Create Item in SharePoint List” アクティビティをダブルクリック
Inputsタブでマッピング追加
- 「Inputs」タブをクリック
- 既存のマッピングリストを確認
- 新しい行を追加:
- SharePoint Column:
Department - Value:
${variables.department}(SNOW変数)
- SharePoint Column:
Publish して保存
テスト
- テスト申請を実行
- SharePointリストに新しい列の値が正しく送信されるか確認
8.3 本番環境への反映手順
Update Setを使った安全な反映方法:
開発/テスト環境で変更を実施
- Update Setを作成してキャプチャ
Update SetをXMLエクスポート
System Update Sets > Local Update Setsで該当Update Setを開く- 「Export to XML」をクリック
本番環境にインポート
- 本番環境の
System Update Sets > Retrieved Update Setsを開く - 「Import Update Set from XML」をクリック
- エクスポートしたXMLファイルをアップロード
- 本番環境の
プレビュー
- インポートされたUpdate Setを開く
- 「Preview Update Set」をクリック
- 競合やエラーがないか確認
Commit(適用)
- 問題がなければ「Commit Update Set」をクリック
- 変更が本番環境に反映されます
反映後テスト
- 本番環境で実際の申請フローをテスト
注意事項:
- 本番環境への反映は必ず変更管理プロセスに従う
- バックアップを取得してから実施
- 営業時間外での作業を推奨
8.4 9つの申請機能の設定差分管理
各申請の設定差分を管理するベストプラクティス:
- 設定一覧表の作成
Excelやスプレッドシートで以下のような管理表を作成:
| 申請名 | Catalog Item Sys ID | Workflow名 | SPOリスト名 | 特記事項 |
|---|---|---|---|---|
| ユーザー作成申請 | abc123… | M365 User Create WF | UserCreateRequests | 承認者2段階 |
| ユーザー削除申請 | def456… | M365 User Delete WF | UserDeleteRequests | セキュリティ確認必須 |
| … | … | … | … | … |
- 共通設定と個別設定の明確化
共通設定(全申請で同じ):
- SharePoint接続情報
- 通知メールのフッター
- 定期ジョブのスケジュール
個別設定(申請ごとに異なる):
- フォーム変数
- 承認フロー
- SharePointリスト構造
- エラーメッセージ
- 変更時の影響範囲確認
設定変更する際は、以下を確認:
- この変更は1つの申請のみに影響するか、全申請に影響するか
- SharePointリスト構造の変更が必要か
- M365設定反映システム側の変更が必要か
- 他の申請と設定を統一すべきか
- ドキュメント管理
各申請ごとに以下をドキュメント化:
- フォーム項目定義書
- ワークフローフロー図
- SharePointリストフィールド定義
- 承認ルール
- エラー対応手順
9. トラブルシューティングとFAQ
9.1 ワークフローが進まない
症状
申請が「Pending Approval」や「Work in Progress」のまま止まっている
原因と対処法
原因1: 承認者が承認していない
確認方法:
- 申請レコードの「Approvals」関連リストを確認
- 「State」が「Requested」のままになっているか確認
対処法:
- 承認者にリマインドメールを送信
- または承認者を変更(管理者権限で強制承認も可能)
原因2: ワークフローがエラーで停止
確認方法:
- 申請レコードの「Workflow Context」関連リストを確認
- 「State」が「Executing」で長時間止まっている、または「Failed」
対処法:
- Workflow Contextレコードを開く
- 「Activities」関連リストで失敗したアクティビティを特定
- エラーメッセージを確認
- 問題を修正後、「Retry」ボタンで再実行
原因3: Wait for Condition アクティビティがタイムアウト
確認方法:
- ワークフロー内に「Wait for Condition」アクティビティがあるか確認
- タイムアウト設定を確認(デフォルト: 24時間など)
対処法:
- SharePointリストで該当アイテムの状態を確認
- M365設定反映システムが処理済みなのに結果が反映されていない場合:
- 手動でSPOリストの
ProcessStatusを更新 - ワークフローが条件を検知して進行します
- 手動でSPOリストの
9.2 SharePoint接続エラー
症状
ワークフロー実行時に “Failed to connect to SharePoint” エラー
原因と対処法
原因1: 認証情報の期限切れ
確認方法:
Connection & Credential Aliasesで接続をテスト- “Authentication failed” メッセージが表示される
対処法:
- 基盤管理部隊に連絡
- サービスアカウントのパスワード更新を依頼
- Credentialレコードのパスワードを更新
原因2: SharePointサイトURLの変更
確認方法:
- ブラウザで直接SharePointサイトURLにアクセス
- リダイレクトされる、または404エラーになる
対処法:
- 正しいURLを確認
- ワークフロー内のSharePoint Spoke設定を更新
- Connection Aliasの接続先URLも更新
原因3: ネットワーク/ファイアウォール
確認方法:
- SNOW管理者に確認依頼
- SNOWサーバーからSharePoint Online への通信が許可されているか
対処法:
- ネットワーク管理者に連絡
- 必要なFQDN/IPアドレスをファイアウォールで許可
9.3 定期ジョブが実行されない
症状
Scheduled Jobの「Next action」が更新されない、または「Last run」が古いまま
原因と対処法
原因1: Activeフラグが外れている
確認方法:
- Scheduled Jobレコードの「Active」チェックボックスを確認
対処法:
- チェックを入れて「Update」
- 「Execute Now」で即座実行してテスト
原因2: Schedulerが停止している(全体的な問題)
確認方法:
System Scheduler > Today's Scheduleを確認- 他のジョブも実行されていない場合はScheduler全体の問題
対処法:
- 基盤管理部隊にエスカレーション
- Scheduler Workerの再起動が必要な場合があります
原因3: スクリプトエラー
確認方法:
- System Logでジョブ名を検索
- エラーログを確認
対処法:
- スクリプトのデバッグ
- 例: SharePoint接続エラーの場合は接続情報を確認
- スクリプト修正後、「Execute Now」でテスト
9.4 通知メールが送信されない
原因と対処法の詳細は手順5.4を参照
クイックチェックリスト:
- Notificationの「Active」がチェックされているか
- 「Who will receive」が正しく設定されているか
- 受信者のユーザーレコードに「Email」が設定されているか
- Email Logでエラーを確認
- Test Email送信で自分宛に届くか確認
9.5 SharePointリストとの同期ずれ
症状
SNOWでは「完了」になっているが、SharePointリストでは「処理中」のまま
原因と対処法
原因1: 定期ジョブの処理遅延
対処法:
- Scheduled Jobを「Execute Now」で即座実行
- 同期が取れるか確認
原因2: M365設定反映システムの書き込み失敗
対処法:
- M365設定反映システムのログを確認(別システム管理者に依頼)
- SharePointリストへの書き込み権限を確認
- 必要に応じて手動でSPOリストのステータスを更新
原因3: ワークフローの論理エラー
対処法:
- Workflow Editorでロジックを確認
- SharePointへの書き込みアクティビティが正しく動作しているか
- スクリプトのデバッグ
9.6 エスカレーション基準と連絡先
以下の場合は基盤管理部隊にエスカレーション:
| 問題 | エスカレーション基準 |
|---|---|
| SharePoint接続エラー | 認証情報更新、ネットワーク問題 |
| Scheduler停止 | 複数ジョブが実行されない |
| パフォーマンス問題 | SNOW全体が遅い、タイムアウト頻発 |
| プラットフォーム設定 | Update Set適用、アップグレード |
M365設定反映シ��テムにエスカレーション:
| 問題 | エスカレーション基準 |
|---|---|
| 処理タイムアウト | 連続発生、設定見直しが必要 |
| M365側エラー | 権限不足、API制限 |
| データ形式エラー | システム側の検証ロジック追加が必要 |
連絡先リスト(例):
| 担当 | 連絡先 | 対応範囲 |
|---|---|---|
| SNOW基盤管理チーム | [email protected] | SNOW全体、インフラ |
| M365設定反映システムチーム | [email protected] | M365連携、処理ロジック |
| SharePoint管理者 | [email protected] | SharePointサイト、リスト権限 |
| ネットワークチーム | [email protected] | ファイアウォール、接続問題 |
10. 付録
10.1 9つの申請機能の詳細仕様一覧表
| No | 申請機能名 | 必須フィールド | 承認段階 | 処理時間目安 | 備考 |
|---|---|---|---|---|---|
| 1 | ユーザー作成申請 | ユーザー名、メール、表示名、部署 | 2段階 | 5-10分 | ライセンス自動割当 |
| 2 | ユーザー削除申請 | ユーザー名、削除理由 | 2段階 | 5-10分 | 30日後完全削除 |
| 3 | グループ作成申請 | グループ名、種類、所有者 | 1段階 | 3-5分 | Microsoft 365グループ |
| 4 | グループメンバー追加申請 | グループ名、追加ユーザー | 1段階 | 2-3分 | 複数ユーザー一括可 |
| 5 | ライセンス割当申請 | ユーザー名、ライセンス種類 | 1段階 | 5-10分 | 在庫確認あり |
| 6 | メールボックス設定変更申請 | ユーザー名、設定項目、変更値 | 1段階 | 3-5分 | 容量、転送設定など |
| 7 | チーム作成申請 | チーム名、所有者、プライバシー | 1段階 | 5-10分 | SharePointサイト同時作成 |
| 8 | 外部共有設定申請 | サイトURL、共有範囲、期限 | 2段階 | 2-3分 | セキュリティ確認必須 |
| 9 | セキュリティグループ作成申請 | グループ名、目的、所有者 | 2段階 | 3-5分 | Azure AD SG |
10.2 SharePointリストフィールド定義書(例: ユーザー作成申請)
| カラム名 | 内部名 | データ型 | 必須 | 説明 | サンプル値 |
|---|---|---|---|---|---|
| 申請番号 | RequestNumber | 1行テキスト | ✓ | SNOW申請番号 | REQ0012345 |
| 申請種別 | RequestType | 選択肢 | ✓ | 申請の種類 | UserCreate |
| 申請データ | RequestData | 複数行テキスト | ✓ | JSON形式の申請内容 | {“userName”:“test”,…} |
| 処理状態 | ProcessStatus | 選択肢 | ✓ | 待機中/処理中/完了/エラー | 完了 |
| 結果メッセージ | ResultMessage | 複数行テキスト | - | 処理結果の詳細 | User created successfully |
| エラー詳細 | ErrorDetails | 複数行テキスト | - | エラー時の詳細情報 | Access denied: … |
| 作成日時 | CreatedDateTime | 日付と時刻 | ✓ | レコード作成日時 | 2026-01-01 10:00 |
| 処理完了日時 | ProcessedDateTime | 日付と時刻 | - | M365反映完了日時 | 2026-01-01 10:05 |
| SNOW反映フラグ | SyncedToSNOW | Yes/No | - | SNOW側に結果反映済みか | はい |
10.3 エラーコード一覧
| エラーコード | メッセージ | 原因 | 対処法 |
|---|---|---|---|
| AUTH_001 | Authentication failed | 認証エラー | Credential更新 |
| PERM_001 | Access denied | 権限不足 | M365側で権限付与 |
| DUPL_001 | User already exists | ユーザー重複 | 申請者に確認、既存ユーザー利用 |
| DUPL_002 | Group already exists | グループ重複 | 申請者に確認、既存グループ利用 |
| FORM_001 | Invalid email format | メール形式エラー | フォーム修正して再登録 |
| FORM_002 | Required field missing | 必須項目未入力 | データ補完して再登録 |
| TIME_001 | Request timeout | タイムアウト | 再処理、タイムアウト延長検討 |
| LICE_001 | No license available | ライセンス不足 | ライセンス追加購入、または待機 |
| NETW_001 | Network error | ネットワーク障害 | インフラチーム確認 |
| UNKN_001 | Unknown error | 不明なエラー | ログ詳細確認、エスカレーション |
10.4 運用チェックリスト
運用開始時チェックリスト
- 全9申請のCatalog Itemが正しく公開されている
- ワークフローがすべてPublished状態
- SharePoint接続テストが成功
- 各SharePointリストが存在し、権限設定済み
- 定期ジョブがActiveで次回実行予定が設定されている
- 通知メールのテスト送信が成功
- 管理者グループに自分が含まれている
- テスト申請で全フローが正常動作
- エラー対応手順書が準備されている
- エスカレーション連絡先リストが最新
設定変更時チェックリスト
- 変更内容を文書化
- 影響範囲を確認(他の申請への影響)
- テスト環境で検証済み
- Update Setでバックアップ取得
- 本番環境への反映手順を確認
- 営業時間外での作業を計画
- ロールバック手順を準備
- 変更後のテスト計画を作成
- 関係者への事前通知
- 変更後の監視体制
10.5 関連ドキュメントへのリンク(例)
内部ドキュメント:
- M365申請システム全体設計書:
\\fileserver\docs\M365\design.docx - SNOW基盤管理マニュアル:
\\fileserver\docs\SNOW\admin.pdf - M365設定反映システム仕様書:
\\fileserver\docs\M365\automation.docx
外部リンク:
まとめ
本マニュアルでは、ServiceNowとSharePointを連携させたM365申請ワークフローシステムの運用管理について、SNOW初心者の方でも実践できるよう具体的な手順を解説しました。
運用管理のポイント:
- 日次の監視: エラー発生、処理滞留、ジョブ実行を毎日確認
- 迅速なエラー対応: エラー通知を受けたら原因調査→修正→再登録
- 定期メンテナンス: アーカイブ、容量管理、設定バックアップ
- ドキュメント管理: 変更履歴、設定情報を常に最新化
- 適切なエスカレーション: 自分の責任範囲を超える問題は速やかに連携
困ったときは:
- まず本マニュアルのトラブルシューティング(第9章)を確認
- System LogやEmail Logでエラー詳細を調査
- 解決しない場合は基盤管理部隊やM365設定反映システムチームにエスカレーション
運用を続ける中で、よくある質問やTipsをこのマニュアルに追記していくことで、より実践的なナレッジベースになります。
改訂履歴:
- 2026-01-01: 初版作成
問い合わせ先:
- M365申請運用管理チーム: [email protected]