資料存取服務 SPN 登錄

Microsoft.SystemCenter.2007.SdkSpnRegistration (Rule)

若執行資料存取服務的帳戶 SPN 未登錄時,此規則會發出警示。

Knowledge Base article:

摘要

「System Center 資料存取」服務的服務主要名稱 (SPN) 可能無法登錄。「System Center 資料存取」服務必須登錄 SPN,Operations 主控台和其他 SDK 用戶端才能使用 Kerberos 進行驗證。

原因

在大部分的情況下,這是因為「System Center 資料存取」服務沒有必要的權限可以在 Active Directory 內執行 SPN 登錄。

解決方式

執行下列命令,以檢查現有的 SPN 登錄:

如果 SPN 已正確登錄,您應該會看到下列結果:

如果 SPN 未正確登錄,請使用具有網域系統管理員權限的帳戶執行下列命令,以手動方式進行登錄:

附註:如果 RMS 已設為叢集,則應該使用叢集 RMS 的網路名稱作為 <RMS NetBIOS 名稱> 和 <RMS FQDN>。

如果 "Setspn.exe -L <RMS NetBIOS 名稱>" 命令顯示 "MSOMSdkSvc" 已登錄重複或額外的 SPN,請使用 "Setspn.exe -D" 命令將它們刪除。

Element properties:

TargetMicrosoft.SystemCenter.RootManagementServer
CategoryAlert
EnabledTrue
Event_ID26371
Event SourceOpsMgr SDK Service
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
RemotableTrue
Alert Message
資料存取服務 SPN 未登錄
{0}
Event LogOperations Manager

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.EventProvider Default
Alert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SystemCenter.2007.SdkSpnRegistration" Enabled="true" Target="SCLibrary!Microsoft.SystemCenter.RootManagementServer" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Operations Manager</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">26371</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">OpsMgr SDK Service</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="Alert" TypeID="Health!System.Health.GenerateAlert">
<Priority>2</Priority>
<Severity>2</Severity>
<AlertName/>
<AlertDescription/>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.SystemCenter.2007.SdkSpnRegistration.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>