別のサブスクリプションとディレクトリにある Azure のいくつかのリソースから Azure 診断データを収集し、別のサブスクリプション/ディレクトリにある OMS/ログ分析ワークスペースに送信しようとしています。
私が使用しているアカウントは両方の組織にアクセスできますが、「Log Analyticsワークスペースへの診断ログの送信を有効にする」コマンドを実行すると(ここで説明されているように)
Set-AzureRmDiagnosticSetting -ResourceId [your resource id] -WorkspaceId [resource id of the log analytics workspace] -Enabled $true
私のコマンド:
$resourceid = "/subscriptions/e12d538c-xxxx-xxxx-xxxx-e60xxxxx2144/resourceGroups/xxx-xxxx/providers/Microsoft.Cache/Redis/xxxxxxxxxx"
$workspaceid = "/subscriptions/6a9axxxx-8xxx-4xxx-92xx-1bxxxxxx5fc23/resourceGroups/xxxxx-oms-rg/providers/Microsoft.OperationalInsights/workspaces/xxxxxxx"
Set-AzureRmDiagnosticSetting -ResourceId $ResourceId -WorkspaceId $workspaceId -Enabled $true
次のエラーが発生します:
Set-AzureRmDiagnosticSetting: アクセス トークンの発行元が間違っています 'https://sts.windows.net/5xxxxxxx-cxxx-4xxx-axxx-2xxxxxxxxxxxx/'。テナントと一致する必要があります'https://sts.windows.net/2xxxxxxx-cxxx-2xxx-bxxx-3xxxxxxxxxxxx/' このサブスクリプションに関連付けられています。権限 (URL) を使用してください 'https://login.windows.net/2xxxxxxx-cxxx-2xxx-bxxx-3xxxxxxxxxxxxxxx' を実行してトークンを取得します。サブスクリプションが別のテナントに転送された場合、サービスには影響はありませんが、新しいテナントに関する情報が伝達されるまでに時間がかかる場合があります (最大 1 時間)。サブスクリプションを転送したばかりでこのエラー メッセージが表示される場合は、しばらくしてからもう一度お試しください。行:1 文字:1 + Set-AzureRmDiagnosticSetting -ResourceId $ResourceId -WorkspaceId $w ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : CloseError: (:) [Set-AzureRmDiagnosticSetting], CloudException + FullyQualifiedErrorId : Microsoft.Azure.Commands.Insights.Diagnostics.SetAzureRmDiagnosticSettingCommand
答え1
エラー ログによると、サブスクリプションが異なるテナントにあるようです。
別のサブスクリプションにあるOMSワークスペースにリソースの診断設定を設定できるようにするには、サブスクリプションは同じ Azure Activity Directory テナントにリンクされている必要があり、ユーザーは両方のサブスクリプション内で管理権限を持っている必要があります。