From c9da9e4bd4a115a646dfb846972126ca8eef1158 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Thu, 18 Aug 2011 17:43:22 +0000
Subject: [PATCH] Initial checkpoint of work for OPENDJ-262: Implement pass through authentication (PTA)
---
opends/src/server/org/opends/server/plugins/PasswordPolicyImportPlugin.java | 46 +++++++++++++++++++++++++---------------------
1 files changed, 25 insertions(+), 21 deletions(-)
diff --git a/opends/src/server/org/opends/server/plugins/PasswordPolicyImportPlugin.java b/opends/src/server/org/opends/server/plugins/PasswordPolicyImportPlugin.java
index 5ed8f7e..d80ce25 100644
--- a/opends/src/server/org/opends/server/plugins/PasswordPolicyImportPlugin.java
+++ b/opends/src/server/org/opends/server/plugins/PasswordPolicyImportPlugin.java
@@ -23,6 +23,7 @@
*
*
* Copyright 2006-2010 Sun Microsystems, Inc.
+ * Portions copyright 2011 ForgeRock AS.
*/
package org.opends.server.plugins;
@@ -41,13 +42,13 @@
import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import java.util.concurrent.CopyOnWriteArrayList;
import org.opends.messages.Message;
import org.opends.server.admin.server.ConfigurationChangeListener;
import org.opends.server.admin.std.meta.PluginCfgDefn;
import org.opends.server.admin.std.server.PasswordPolicyImportPluginCfg;
import org.opends.server.admin.std.server.PluginCfg;
+import org.opends.server.api.AuthenticationPolicy;
import org.opends.server.api.Backend;
import org.opends.server.api.ImportTaskListener;
import org.opends.server.api.PasswordStorageScheme;
@@ -57,7 +58,7 @@
import org.opends.server.config.ConfigException;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.PasswordPolicy;
-import org.opends.server.core.PasswordPolicyConfigManager;
+import org.opends.server.core.SubentryPasswordPolicy;
import org.opends.server.loggers.debug.DebugTracer;
import org.opends.server.schema.AuthPasswordSyntax;
import org.opends.server.schema.UserPasswordSyntax;
@@ -156,10 +157,10 @@
configuration.getDefaultAuthPasswordStorageSchemeDNs();
if (authSchemeDNs.isEmpty())
{
- if (defaultPolicy.usesAuthPasswordSyntax())
+ if (defaultPolicy.isAuthPasswordSyntax())
{
- CopyOnWriteArrayList<PasswordStorageScheme<?>> schemeList =
- defaultPolicy.getDefaultStorageSchemes();
+ List<PasswordStorageScheme<?>> schemeList =
+ defaultPolicy.getDefaultPasswordStorageSchemes();
defaultAuthPasswordSchemes =
new PasswordStorageScheme[schemeList.size()];
schemeList.toArray(defaultAuthPasswordSchemes);
@@ -212,10 +213,10 @@
configuration.getDefaultUserPasswordStorageSchemeDNs();
if (userSchemeDNs.isEmpty())
{
- if (! defaultPolicy.usesAuthPasswordSyntax())
+ if (! defaultPolicy.isAuthPasswordSyntax())
{
- CopyOnWriteArrayList<PasswordStorageScheme<?>> schemeList =
- defaultPolicy.getDefaultStorageSchemes();
+ List<PasswordStorageScheme<?>> schemeList =
+ defaultPolicy.getDefaultPasswordStorageSchemes();
defaultUserPasswordSchemes =
new PasswordStorageScheme[schemeList.size()];
schemeList.toArray(defaultUserPasswordSchemes);
@@ -285,14 +286,16 @@
// attribute types associated with them.
HashMap<DN,PasswordStorageScheme<?>[]> schemeMap =
new HashMap<DN,PasswordStorageScheme<?>[]>();
- for (PasswordPolicy p : DirectoryServer.getPasswordPolicies())
+ for (AuthenticationPolicy ap : DirectoryServer.getAuthenticationPolicies())
{
- CopyOnWriteArrayList<PasswordStorageScheme<?>> schemeList =
- p.getDefaultStorageSchemes();
+ PasswordPolicy p = (PasswordPolicy) ap;
+
+ List<PasswordStorageScheme<?>> schemeList =
+ p.getDefaultPasswordStorageSchemes();
PasswordStorageScheme<?>[] schemeArray =
new PasswordStorageScheme[schemeList.size()];
schemeList.toArray(schemeArray);
- schemeMap.put(p.getConfigEntryDN(), schemeArray);
+ schemeMap.put(p.getDN(), schemeArray);
}
@@ -333,7 +336,7 @@
{
try
{
- PasswordPolicyConfigManager.checkSubentryAcceptable(entry);
+ new SubentryPasswordPolicy(new SubEntry(entry));
}
catch (DirectoryException de)
{
@@ -362,7 +365,8 @@
try
{
policyDN = DN.decode(v.getValue());
- policy = DirectoryServer.getPasswordPolicy(policyDN);
+ policy = (PasswordPolicy) DirectoryServer
+ .getAuthenticationPolicy(policyDN);
if (policy == null)
{
Message message = WARN_PLUGIN_PWIMPORT_NO_SUCH_POLICY.get(
@@ -401,7 +405,7 @@
{
ByteString value = v.getValue();
- if (policy.usesAuthPasswordSyntax())
+ if (policy.isAuthPasswordSyntax())
{
if (!AuthPasswordSyntax.isEncoded(value))
{
@@ -761,10 +765,10 @@
configuration.getDefaultAuthPasswordStorageSchemeDNs();
if (authSchemeDNs.isEmpty())
{
- if (defaultPolicy.usesAuthPasswordSyntax())
+ if (defaultPolicy.isAuthPasswordSyntax())
{
- CopyOnWriteArrayList<PasswordStorageScheme<?>> schemeList =
- defaultPolicy.getDefaultStorageSchemes();
+ List<PasswordStorageScheme<?>> schemeList =
+ defaultPolicy.getDefaultPasswordStorageSchemes();
defaultAuthSchemes =
new PasswordStorageScheme[schemeList.size()];
schemeList.toArray(defaultAuthSchemes);
@@ -820,10 +824,10 @@
configuration.getDefaultUserPasswordStorageSchemeDNs();
if (userSchemeDNs.isEmpty())
{
- if (! defaultPolicy.usesAuthPasswordSyntax())
+ if (! defaultPolicy.isAuthPasswordSyntax())
{
- CopyOnWriteArrayList<PasswordStorageScheme<?>> schemeList =
- defaultPolicy.getDefaultStorageSchemes();
+ List<PasswordStorageScheme<?>> schemeList =
+ defaultPolicy.getDefaultPasswordStorageSchemes();
defaultUserSchemes =
new PasswordStorageScheme[schemeList.size()];
schemeList.toArray(defaultUserSchemes);
--
Gitblit v1.10.0