/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2009 Sun Microsystems Inc. All Rights Reserved
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
* (the License). You may not use this file except in
* compliance with the License.
*
* You can obtain a copy of the License at
* See the License for the specific language governing
* permission and limitations under the License.
*
* When distributing Covered Code, include this CDDL
* Header Notice in each file and include the License file
* at opensso/legal/CDDLv1.0.txt.
* If applicable, addReferral the following below the CDDL Header,
* with the fields enclosed by brackets [] replaced by
* your own identifying information:
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted 2014-2015 ForgeRock AS.
*
* $Id: OpenSSOPolicyDataStore.java,v 1.7 2010/01/08 22:20:47 veiming Exp $
*/
/**
*/
"ou=Policies,ou=default,ou=OrganizationConfig,ou=1.0,ou=" +
static {
}
throws EntitlementException {
// Delegation to applications is currently not configurable, passing super admin (see AME-4959)
throw new EntitlementException(326);
}
try {
) {
}
s.setAttributes(map);
name};
s.save();
} else {
"OpenSSOPolicyDataStore.addPolicy: unknown class " +
}
} catch (PolicyException e) {
name, e.getMessage()};
} catch (SSOException e) {
name, e.getMessage()};
} catch (SMSException e) {
name, e.getMessage()};
}
}
private void createParentNode(
) throws SSOException, SMSException {
}
}
throws SMSException, SSOException {
}
return orgConf;
}
throws EntitlementException {
if (adminToken == null) {
}
}
try {
}
} catch (SSOException ex) {
} catch (SMSException ex) {
}
}
/**
* Attempts to find a legacy policy with the given policy name. As a legacy policy with multiple rules will be
* translated into multiple Privilege objects named {@code policy1_rule1}, we may not be able to find the legacy
* policy with the same name. In this case, we repeatedly strip off {@code _XXX} suffixes from the policy name to
* try to find the matching legacy policy. If we still cannot find such a policy, then we return {@code null}.
*
* @param adminToken the SSOToken to use when querying to see if a policy exists.
* @param realm the realm in which the policy exists.
* @param policyName the initial name of the policy.
* @return the DN of the matching legacy policy, or {@code null} if no match was found.
*/
if (idx >= 0) {
} else {
return null;
}
}
return dn;
}
PrivilegeManager.debug.message(String.format(Locale.US, "OpenSSOPolicyDataStore: " + format, args));
}
}
) throws EntitlementException {
if (adminToken == null) {
}
}
try {
}
} catch (SSOException ex) {
} catch (SMSException ex) {
}
}
throws Exception,
}
"/").xacmlPrivilegeEnabled()) {
//TODO: create xacml policy from xml document
} else {
}
return policy;
}
throws EntitlementException {
if (adminToken == null) {
}
// Delegation to applications is currently not configurable, passing super admin (see AME-4959)
throw new EntitlementException(326);
}
try {
name};
// Remove from privilege index store first
// Only remove from legacy policy store if the policy still exists. This can happen if an old policy
// had multiple rules (= multiple privileges in new store) and one of the new privileges for that policy
// has been deleted, which deletes the entire legacy policy.
s.delete();
} else {
}
} catch (SSOException ex) {
} catch (SMSException ex) {
}
}
{
}
}
public void addReferral(
throws EntitlementException {
if (adminToken == null) {
}
// Delegation to applications is currently not configurable, passing super admin (see AME-4959)
throw new EntitlementException(326);
}
try {
s.setAttributes(map);
s.save();
} catch (PolicyException e) {
e.getMessage()};
} catch (SSOException e) {
e.getMessage()};
} catch (SMSException e) {
e.getMessage()};
}
}
public void removeReferral(
) throws EntitlementException {
if (adminToken == null) {
}
// Delegation to applications is currently not configurable, passing super admin (see AME-4959)
throw new EntitlementException(326);
}
}
try {
name};
s.delete();
} catch (SSOException ex) {
} catch (SMSException ex) {
}
}
}