0N/A * The contents of this file are subject to the terms of the 0N/A * Common Development and Distribution License, Version 1.0 only 0N/A * (the "License"). You may not use this file except in compliance 0N/A * You can obtain a copy of the license at 0N/A * See the License for the specific language governing permissions 0N/A * and limitations under the License. 0N/A * When distributing Covered Code, include this CDDL HEADER in each 0N/A * file and include the License file at 0N/A * add the following below this CDDL HEADER, with the fields enclosed 873N/A * by brackets "[]" replaced with your own identifying information: 0N/A * Portions Copyright [yyyy] [name of copyright owner] 5136N/A * Copyright 2006-2010 Sun Microsystems, Inc. 5981N/A * Portions copyright 2011-2012 ForgeRock AS. 0N/A * This class implements a Directory Server plugin that performs various 0N/A * password policy processing during an LDIF import. In particular, it ensures 0N/A * that all of the password values are properly encoded before they are stored. 1400N/A * The tracer object for the debug logger. 1638N/A // The attribute type used to specify the password policy for an entry. 1638N/A // The set of attribute types defined in the schema with the auth password 1638N/A // The set of attribute types defined in the schema with the user password 1638N/A // The set of password storage schemes to use for the various password 1638N/A // policies defined in the server. 1638N/A // The default password storage schemes for auth password attributes. 1638N/A // The default password storage schemes for user password attributes. 0N/A * Creates a new instance of this Directory Server plugin. Every plugin must 0N/A * implement a default constructor (it is the only one that will be used to 0N/A * create plugins defined in the configuration), and every plugin constructor 1638N/A * must call {@code super()} as its first element. 338N/A // Make sure that the plugin has been enabled for the appropriate types. 338N/A // This is the only acceptable type. 1638N/A // Get the set of default password storage schemes for auth password 1638N/A // Get the set of default password storage schemes for user password 1638N/A // Find the set of attribute types with the auth password and user password 1638N/A // syntax defined in the schema. 1638N/A // Get the set of password policies defined in the server and get the 1638N/A // attribute types associated with them. 1638N/A // No implementation is required. 5136N/A // Check if this entry is a password policy subentry 5136N/A // and if so evaluate whether or not its acceptable. 1638N/A // See if the entry explicitly states the password policy that it should 3853N/A // use. If so, then only use it to perform the encoding. 0N/A // Iterate through the list of auth password attributes. If any of them 0N/A // are present and their values are not encoded, then encode them with all 0N/A // appropriate schemes. 0N/A // Iterate through the list of user password attributes. If any of them 0N/A // are present and their values are not encoded, then encode them with all 0N/A // appropriate schemes. 1615N/A // Ensure that the set of plugin types contains only LDIF import. 1615N/A // This is the only acceptable type. 1638N/A // Get the set of default password storage schemes for auth password 1638N/A // Get the set of default password storage schemes for user password 1638N/A // Get the set of default password storage schemes for auth password 1638N/A // Get the set of default password storage schemes for user password