通过ssoadm在openam中创建引用策略

时间:2014-11-10 10:20:36

标签: authentication openam

在openam中,我创建了一个名为 TestRealm 的子报表。为了在 TestRealm 中创建策略,应该有一个引用策略。我试图在ssoadm命令的帮助下为 TestRealm 创建策略,但是它抛出错误无法创建策略。组织不存在推荐。我使用以下policy.xml在根域下创建策略。

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Policies PUBLIC "-//OpenSSO Policy Administration DTD//EN" "jar://com/sun/identity/policy/policyAdmin.dtd">
<!-- New policy, same as the old policy -->
<Policies>
  <Policy name="Test Policy" referralPolicy="false" active="true" >
    <Rule name="Test Allow GET with parameters">
      <ServiceName name="iPlanetAMWebAgentService" />
      <ResourceName name="http://www.test.com/demo/*?*" />
      <AttributeValuePair>
        <Attribute name="GET" />
        <Value>allow</Value>
      </AttributeValuePair>
    </Rule>

    <Rule name="Vidz Ref Allow GET and POST">
      <ServiceName name="iPlanetAMWebAgentService" />
      <ResourceName name="http://www.test.com/demo/*" />
      <AttributeValuePair>
        <Attribute name="POST" />
          <Value>allow</Value>
      </AttributeValuePair>
      <AttributeValuePair>
        <Attribute name="GET" />
        <Value>allow</Value>
      </AttributeValuePair>
    </Rule>

    <Subjects name="Subjects" description="Everybody authenticated">
       <Subject name="All Authenticated Users" type="AuthenticatedUsers" includeType="inclusive">
       </Subject>
    </Subjects>
 </Policy>
</Policies>

如何修改上面的一个来创建推荐政策??

1 个答案:

答案 0 :(得分:1)

最简单的方法是在顶级域中创建示例引用,然后通过ssoadm将其导出以用于后续导入。此外,您应该在引荐中使用非常通用的规则,例如http://www.test.demo.com/*http://www.test.demo.com/*?*,在引荐中使用复杂的规则只会减慢策略评估而没有太多要点(引用的策略将用于允许/最后否认决定)。