> 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).

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

### 説明

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

### Runbook のカスタマイズ

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

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

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

次を参照してください。 [RealmJoin Report Settings のドキュメント](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
    }
]
```

#### Runbook のカスタマイズの完全な例

```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 パート番号の確認

```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

### 権限

#### アプリケーション権限

* **種類**: Microsoft Graph
  * Organization.Read.All
  * User.Read.All
  * Mail.Send

### パラメーター

#### InputJson

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

これは runbook のカスタマイズで構成する必要があります

| プロパティ | 値      |
| ----- | ------ |
| 必須    | true   |
| 既定値   |        |
| 種類    | オブジェクト |

#### ReportFileFormat

生成して配信するレポート ファイルの形式を制御します: "CSV only"、"CSV & XLSX"（既定）または "XLSX only"。

| プロパティ | 値          |
| ----- | ---------- |
| 必須    | false      |
| 既定値   | CSV & XLSX |
| 種類    | 文字列        |

#### CreateDownloadLink

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

| プロパティ | 値       |
| ----- | ------- |
| 必須    | false   |
| 既定値   | False   |
| 種類    | Boolean |

#### ContainerName

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

| プロパティ | 値                         |
| ----- | ------------------------- |
| 必須    | false                     |
| 既定値   | report-license-assignment |
| 種類    | 文字列                       |

#### ResourceGroupName

ストレージ アカウントを含むリソース グループです。RJReport の Tenant 設定から取得されます。

| プロパティ | 値     |
| ----- | ----- |
| 必須    | false |
| 既定値   |       |
| 種類    | 文字列   |

#### StorageAccountName

アップロードに使用するストレージ アカウント名です。RJReport の Tenant 設定から取得されます。

| プロパティ | 値     |
| ----- | ----- |
| 必須    | false |
| 既定値   |       |
| 種類    | 文字列   |

#### LinkExpiryDays

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

| プロパティ | 値     |
| ----- | ----- |
| 必須    | false |
| 既定値   | 6     |
| 種類    | Int32 |

#### EmailTo

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

| プロパティ | 値     |
| ----- | ----- |
| 必須    | false |
| 既定値   |       |
| 種類    | 文字列   |

#### EmailFrom

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

| プロパティ | 値     |
| ----- | ----- |
| 必須    | false |
| 既定値   |       |
| 種類    | 文字列   |

[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.
