このログイン アカウントは、パブリケーションに対するアクセス権がありません。パブリケーション アクセス リストに含まれていません。

Microsoft.SQLServer.2008.LoginAccountIsNotInThePublicationAccessListRule (Rule)

Knowledge Base article:

概要

このログイン アカウントは、パブリケーションに対するアクセス権がありません。パブリケーション アクセス リストに含まれていません。

原因

パブリケーションを作成すると、Microsoft SQL Server によってそのパブリケーション用のパブリケーション アクセス リスト (PAL) が作成されます。PAL は、パブリケーションへのアクセスを許可されたログインの一覧を含んでいます。このエラー メッセージが表示されたのは、要求した操作の実行対象となるパブリケーションの PAL に現在のログインが含まれていないためです。

解決方法

パブリケーションの PAL 内のログインを追加または削除するには、SQL Server Enterprise Manager または sp_grant_publication_access ストアド プロシージャと sp_revoke_publication_access ストアド プロシージャを使用します。

外部資料

パブリケーション アクセス リスト内のログインを管理する方法 (SQL Server Management Studio)

上書き可能なパラメーター

名前

説明

既定値

有効

ワークフローを有効または無効にします。

はい

優先順位

アラートの優先順位を定義します。

2

重大度

アラートの重大度を定義します。

2

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
RemotableTrue
Alert Message
このログイン アカウントは、パブリケーション アクセス リストに含まれないため、パブリケーションに対するアクセス許可がありません。
{0}

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.SQLServer.2008.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2008.LoginAccountIsNotInThePublicationAccessListRule" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" Enabled="true" ConfirmDelivery="true">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.SQLServer.2008.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<PublisherName>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</PublisherName>
<EventNumber>21049</EventNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>2</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2008.LoginAccountIsNotInThePublicationAccessListRule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>