> For the complete documentation index, see [llms.txt](https://docs.realmjoin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.realmjoin.com/ja/zi-dong-hua/runbooks/runbook-references/org/general/report-license-assignment_scheduled.md).

# ライセンス割り当てレポート - 定期実行

{% hint style="info" %}
これはスケジュール実行の runbook です。単一のオブジェクトでトリガーされるのではなく、繰り返しのスケジュールで実行されるように設計されています。参照してください [スケジュール設定](/ja/zi-dong-hua/runbooks/scheduling.md) runbook のスケジュールを構成する方法の詳細について。
{% endhint %}

### 説明

このランブックは、送信された SKU に基づいてライセンスの可用性を確認し、いずれかのしきい値に達した場合にメール レポートを送信します。2 種類のしきい値を構成できます。1 つ目は最小しきい値で、利用可能なライセンス数が指定数を下回るとアラートを発します。2 つ目は最大しきい値で、利用可能なライセンス数が指定数を超えるとアラートを発します。レポートには、構成されたしきい値の範囲外にあるライセンスの詳細情報が含まれ、CSV および/または Excel (xlsx) ファイルにエクスポートしてメールで送信します。レポート ファイルは Azure Storage Account にアップロードすることもでき、時間制限付きのダウンロード リンクが返されます。ReportFileFormat パラメーターは、生成および配信されるファイル形式 (CSV のみ、CSV & XLSX、または XLSX のみ) を制御します。CSV 添付ファイルがメール サイズの上限を超え、"CSV & XLSX" が選択されている場合、メールは Excel ブックのみを使用するようにフォールバックします。

### ランブックのカスタマイズ

#### メール送信に関する設定

メールレポートの送信は任意であり、受信者（`EmailTo`）が指定された場合にのみ行われます。送信者アドレスは `RJReport.EmailSender` テナント設定から取得されます。

このRunbookは Microsoft Graph API を使用してメールを送信します。Graph API 経由でメールを送信するには、Runbook のカスタマイズで既存のメールアドレスを設定する必要があります。

詳細については、 [RealmJoin レポート設定のドキュメント](https://docs.realmjoin.com/automation/runbooks/runbook-report-settings) を参照してください。

#### メールのブランド設定

レポートメールでは、任意の `RJReport.Branding.*` テナント設定が考慮されます。対象は、カスタムのヘッダー画像、カスタムのフッター画像（公開 HTTPS URL、PNG/JPEG/GIF、各最大 200 KB）、カスタムのフッターリンク、およびカスタムのアクセントカラーとテキストカラー（6 桁の hex 値、例: `#0052cc`）です。これらの設定が構成されていない場合は、既定の RealmJoin のグラフィックと色が使用されます。ダウンロードまたは検証できないブランド画像、または有効な hex カラーではない色の値があっても、レポートメールが送信されなくなることはありません。代わりに、該当する既定値が使用されます。

詳細については、 [RealmJoin レポート設定のドキュメント](https://docs.realmjoin.com/automation/runbooks/runbook-report-settings) 設定の詳細については、

#### InputJson の構成

各ライセンス構成には次が必要です:

* **SKUPartNumber** (必須): Microsoft SKU 識別子
* **FriendlyName** (必須): 表示名
* **MinThreshold** (省略可能): 利用可能なライセンス数 < しきい値 のときにアラート
* **MaxThreshold** (省略可能): 利用可能なライセンス数 > しきい値 のときにアラート

各ライセンスに対して少なくとも 1 つのしきい値を設定する必要があります。

#### 構成例

**最小しきい値のみ** (不足を防ぐ):

```json
[
    {
        "SKUPartNumber": "ENTERPRISEPACK",
        "FriendlyName": "Microsoft 365 E3",
        "MinThreshold": 50
    }
]
```

**最大しきい値のみ** (過剰割り当てを防ぐ):

```json
[
    {
        "SKUPartNumber": "POWER_BI_PRO",
        "FriendlyName": "Power BI Pro",
        "MaxThreshold": 500
    }
]
```

**両方のしきい値** (範囲を維持):

```json
[
    {
        "SKUPartNumber": "ENTERPRISEPREMIUM",
        "FriendlyName": "Microsoft 365 E5",
        "MinThreshold": 50,
        "MaxThreshold": 150
    }
]
```

#### ランブックの完全なカスタマイズ

```json
{
    "Settings": {
        "RJReport": {
            "EmailSender": "sender@contoso.com"
        }
    },
    "Runbooks": {
        "rjgit-org_general_report-license-assignment_scheduled": {
            "Parameters": {
                "EmailTo": {
                    "DisplayName": "受信者のメール アドレス"
                },
                "InputJson": {
                    "Hide": true,
                    "DefaultValue": [
                        {
                            "SKUPartNumber": "SPE_E5",
                            "FriendlyName": "Microsoft 365 E5",
                            "MinThreshold": 20,
                            "MaxThreshold": 30
                        },
                        {
                            "SKUPartNumber": "FLOW_FREE",
                            "FriendlyName": "Microsoft Power Automate 無料版",
                            "MinThreshold": 10
                        }
                    ]
                },
                "EmailFrom": {
                    "Hide": true
                },
                "CallerName": {
                    "Hide": true
                }
            }
        }
    }
}
```

### SKU Part Number の確認

```powershell
Connect-MgGraph -Scopes "Organization.Read.All"
Get-MgSubscribedSku | Select-Object SkuPartNumber, SkuId | Sort-Object SkuPartNumber
```

一般的な SKU:

* `ENTERPRISEPACK` - Microsoft 365 E3
* `ENTERPRISEPREMIUM` - Microsoft 365 E5
* `EMS` - Enterprise Mobility + Security E3

### 出力

**違反が検出された場合:**

* ジョブ ログのコンソール出力
* CSV エクスポート (`License_Threshold_Violations.csv`)
* 概要、違反、推奨事項、CSV 添付ファイルを含むメール レポート

**すべてがしきい値内にある場合:**

* メールは送信されません
* ジョブは正常に完了します

### トラブルシューティング

**SKU が見つかりません**: 次を使用して SKU の存在を確認します `Get-MgSubscribedSku`

**メールが送信されない**: EmailFrom の構成と Mail.Send 権限を確認してください

**無効な JSON**: 構成前に JSON 形式を検証してください

### 移行メモ

レガシー `WarningThreshold` は自動的に次にマップされます `MinThreshold` - 旧構成も引き続き機能します。

### 場所

Organization → 一般 → レポート ライセンス割り当て (スケジュール済み)

**Runbook の完全名**

rjgit-org\_general\_report-license-assignment\_scheduled

### 詳細

| プロパティ    | 値                                                                                                                 |
| -------- | ----------------------------------------------------------------------------------------------------------------- |
| バージョン    | 1.3.0                                                                                                             |
| 必要なモジュール | <p>RealmJoin.RunbookHelper (>= 0.8.9)<br>Microsoft.Graph.Authentication (>= 2.39.0)<br>Az.Accounts (>= 5.5.2)</p> |
| スケジュール可能 | はい                                                                                                                |

### アクセス許可

#### アプリケーションのアクセス許可

* **種類**：Microsoft Graph
  * Organization.Read.All
    * */organization と /subscribedSkus を読み取り、しきい値に対してライセンス数を評価します*
  * Mail.Send *（任意 — 機能: メールレポート）*
    * *EmailTo が構成されている場合、Send-RjReportEmail を使用してしきい値レポートのメールを送信します*

### パラメーター

#### InputJson

しきい値付きの SKU 構成を含む JSON 配列です。各エントリには、Microsoft SKU 識別子として SKUPartNumber、ライセンスの表示名として FriendlyName、利用可能である必要があるライセンスの最小数を指定する省略可能な MinThreshold、および利用可能である必要があるライセンスの最大数を指定する省略可能な MaxThreshold を含める必要があります。

これはランブックのカスタマイズで構成する必要があります

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | はい                       |
| 既定値      |                          |
| 種類       | オブジェクト                   |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### ReportFileFormat

生成および配信されるレポート ファイル形式を制御します: CSV のみ、CSV と XLSX（既定）または XLSX のみ。

| プロパティ   | 値           |
| ------- | ----------- |
| 必須      | いいえ         |
| 既定値     | CSV と XLSX  |
| 種類      | 文字列         |
| ポータル表示名 | レポート ファイル形式 |

**ポータルのオプション**

| ポータルオプション  | 値 |
| ---------- | - |
| CSV と XLSX |   |
| CSV のみ     |   |
| XLSX のみ    |   |

#### CreateDownloadLink

有効にすると、レポート ファイルは Azure Storage Account にアップロードされ、期限付きのダウンロード リンクが返されます。既定では無効です。

| プロパティ   | 値                                          |
| ------- | ------------------------------------------ |
| 必須      | いいえ                                        |
| 既定値     | False                                      |
| 種類      | ブール値                                       |
| ポータル表示名 | ファイルのダウンロード リンクを作成しますか（レポートをストレージにアップロード）? |

**ポータルのオプション**

| ポータルオプション                       | 値   |
| ------------------------------- | --- |
| はい - レポートをアップロードしてダウンロード リンクを返す | はい  |
| いいえ - ダウンロード リンクを作成しない          | いいえ |

#### ContainerName

アップロードに使用するストレージ コンテナー名。runbook ごとに設定されます（グローバルな RJReport 設定ではありません）。

| プロパティ    | 値                         |
| -------- | ------------------------- |
| 必須       | いいえ                       |
| 既定値      | report-license-assignment |
| 種類       | 文字列                       |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定）  |

#### ResourceGroupName

Storage Account を含むリソース グループ。RJReport の Tenant 設定から取得されます。

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      |                          |
| 種類       | 文字列                      |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### StorageAccountName

アップロードに使用する Storage Account 名。RJReport の Tenant 設定から取得されます。

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      |                          |
| 種類       | 文字列                      |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### LinkExpiryDays

生成されたダウンロードリンクの有効期限が切れるまでの日数。RJReport の Tenant 設定から取得されます。

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      | 6                        |
| 種類       | Int32                    |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### EmailTo

指定した場合、レポート付きのメールが指定されたアドレス宛てに送信されます。単一のアドレスにも、カンマ区切りの複数アドレスにもできます (string)。

| プロパティ   | 値           |
| ------- | ----------- |
| 必須      | いいえ         |
| 既定値     |             |
| 種類      | 文字列         |
| ポータル表示名 | 受信者のメールアドレス |

#### EmailFrom

設定から解決された送信者のメール アドレス。

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      |                          |
| 種類       | 文字列                      |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### BrandingHeaderImageUrl

レポートメール用のカスタム ヘッダー画像（PNG/JPEG/GIF、最大 200 KB）の任意の公開 HTTPS URL です。RJReport.Branding.HeaderImageUrl テナント設定から取得されます。空の場合は、既定の RealmJoin ヘッダー グラフィックが使用されます。

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      |                          |
| 種類       | 文字列                      |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### BrandingFooterImageUrl

レポートメール用のカスタム フッター画像（PNG/JPEG/GIF、最大 200 KB）の任意の公開 HTTPS URL です。RJReport.Branding.FooterImageUrl テナント設定から取得されます。空の場合は、既定の RealmJoin フッター グラフィックが使用されます。

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      |                          |
| 種類       | 文字列                      |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### BrandingFooterLink

フッター画像のリンク先となる任意の URL です。RJReport.Branding.FooterLink テナント設定から取得されます。空の場合は、既定のリンク（<https://www.realmjoin.com）が使用されます。>

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      |                          |
| 種類       | 文字列                      |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### BrandingAccentColor

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      |                          |
| 種類       | 文字列                      |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

#### BrandingTextColor

| プロパティ    | 値                        |
| -------- | ------------------------ |
| 必須       | いいえ                      |
| 既定値      |                          |
| 種類       | 文字列                      |
| ポータルで非表示 | はい（Runbook のカスタマイズで事前設定） |

[Runbook Reference の概要に戻る](/ja/zi-dong-hua/runbooks/runbook-references.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.realmjoin.com/ja/zi-dong-hua/runbooks/runbook-references/org/general/report-license-assignment_scheduled.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
