ACL 更新

创建、删除或修改与某一主题关联的 ACL 将导致使用以下系统主题进行发布:
$SYS/Broker/broker_name/Topic/topic
其中:
broker_name
是发出该消息的代理的名称
topic
是正被修改的 ACL 所属的主题

每个发布的主体是描述 ACL 更新的 XML 消息。

这些事件是非永久、不保留的发布。

某些操作会删除单个主题或所有主题的所有 ACL 条目。这种情况下,事件发布中不会发布各个条目。但是,事件发布的主体将包含单个 XML 标记,此标记表示所有 ACL 条目均已删除。

示例

此处是创建、更改和删除 ACL 的示例事件消息,以及在单个主题和所有主题上删除所有 ACL 的示例。

已创建 ACL

Event publication topic = "$SYS/Broker/Broker1/Topic/stock/IBM"

<Broker uuid="1234" label="Broker1" version="1">
  <ControlGroup>
    <DynamicSubscriptionEngine>
      <Topic name="stock/IBM">
        <Create>
          <ACLEntry
            principalName="Fred"
            principalType="user"
            publish="false"
            subscribe="inherit"
            persistent="true"/>
        </Create>
      </Topic>
    </DynamicSubscriptionEngine>
  </ControlGroup>
</Broker>

已更改 ACL

Event publication topic = "$SYS/Broker/Broker1/Topic/stock/IBM"

<Broker uuid="1234" label="Broker1" version="1">
  <ControlGroup>
    <DynamicSubscriptionEngine>
      <Topic name="stock/IBM">
        <Change>
          <ACLEntry
            principalName="Fred"
            principalType="user"
            publish="true"
            subscribe="false"
            persistent="inherit"/>
        </Change>
      </Topic>
    </DynamicSubscriptionEngine>
  </ControlGroup>
</Broker>

已删除 ACL

Event publication topic = "$SYS/Broker/Broker1/Topic/stock/IBM"

<Broker uuid="1234" label="Broker1" version="1">
  <ControlGroup>
    <DynamicSubscriptionEngine>
      <Topic name="stock/IBM">
        <Delete>
          <ACLEntry principalName="Fred"/>
        </Delete>
      </Topic>
    </DynamicSubscriptionEngine>
  </ControlGroup>
</Broker>

在单个主题上已删除所有 ACL

Event publication topic = "$SYS/Broker/Broker1/Topic/stock/IBM"

<Broker uuid="1234" label="Broker1" version="1">
  <ControlGroup>
    <DynamicSubscriptionEngine>
      <Topic name="stock/IBM">
        <Delete>
          <AllACLEntries/>
        </Delete>
      </Topic>
    </DynamicSubscriptionEngine>
  </ControlGroup>
</Broker>

在所有主题上已删除所有 ACL

Event publication topic = "$SYS/Broker/Broker1/Topic"

<Broker uuid="1234" label="Broker1" version="1">
  <ControlGroup>
    <DynamicSubscriptionEngine>
        <Delete>
          <AllACLEntries/>
        </Delete>
    </DynamicSubscriptionEngine>
  </ControlGroup>
</Broker>
相关概念
代理域
相关任务
创建代理
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
au19700_