001/* 002 * CDDL HEADER START 003 * 004 * The contents of this file are subject to the terms of the 005 * Common Development and Distribution License, Version 1.0 only 006 * (the "License"). You may not use this file except in compliance 007 * with the License. 008 * 009 * You can obtain a copy of the license at legal-notices/CDDLv1_0.txt 010 * or http://forgerock.org/license/CDDLv1.0.html. 011 * See the License for the specific language governing permissions 012 * and limitations under the License. 013 * 014 * When distributing Covered Code, include this CDDL HEADER in each 015 * file and include the License file at legal-notices/CDDLv1_0.txt. 016 * If applicable, add the following below this CDDL HEADER, with the 017 * fields enclosed by brackets "[]" replaced with your own identifying 018 * information: 019 * Portions Copyright [yyyy] [name of copyright owner] 020 * 021 * CDDL HEADER END 022 * 023 * 024 * Copyright 2008 Sun Microsystems, Inc. 025 */ 026package org.opends.server.admin.std.client; 027 028 029 030import org.opends.server.admin.ManagedObjectDefinition; 031import org.opends.server.admin.PropertyException; 032import org.opends.server.admin.std.meta.DigestMD5SASLMechanismHandlerCfgDefn.QualityOfProtection; 033import org.opends.server.admin.std.server.DigestMD5SASLMechanismHandlerCfg; 034 035 036 037/** 038 * A client-side interface for reading and modifying Digest MD5 SASL 039 * Mechanism Handler settings. 040 * <p> 041 * The DIGEST-MD5 SASL mechanism is used to perform all processing 042 * related to SASL DIGEST-MD5 authentication. 043 */ 044public interface DigestMD5SASLMechanismHandlerCfgClient extends SASLMechanismHandlerCfgClient { 045 046 /** 047 * Get the configuration definition associated with this Digest MD5 SASL Mechanism Handler. 048 * 049 * @return Returns the configuration definition associated with this Digest MD5 SASL Mechanism Handler. 050 */ 051 ManagedObjectDefinition<? extends DigestMD5SASLMechanismHandlerCfgClient, ? extends DigestMD5SASLMechanismHandlerCfg> definition(); 052 053 054 055 /** 056 * Gets the "identity-mapper" property. 057 * <p> 058 * Specifies the name of the identity mapper that is to be used with 059 * this SASL mechanism handler to match the authentication or 060 * authorization ID included in the SASL bind request to the 061 * corresponding user in the directory. 062 * 063 * @return Returns the value of the "identity-mapper" property. 064 */ 065 String getIdentityMapper(); 066 067 068 069 /** 070 * Sets the "identity-mapper" property. 071 * <p> 072 * Specifies the name of the identity mapper that is to be used with 073 * this SASL mechanism handler to match the authentication or 074 * authorization ID included in the SASL bind request to the 075 * corresponding user in the directory. 076 * 077 * @param value The value of the "identity-mapper" property. 078 * @throws PropertyException 079 * If the new value is invalid. 080 */ 081 void setIdentityMapper(String value) throws PropertyException; 082 083 084 085 /** 086 * Gets the "java-class" property. 087 * <p> 088 * Specifies the fully-qualified name of the Java class that 089 * provides the SASL mechanism handler implementation. 090 * 091 * @return Returns the value of the "java-class" property. 092 */ 093 String getJavaClass(); 094 095 096 097 /** 098 * Sets the "java-class" property. 099 * <p> 100 * Specifies the fully-qualified name of the Java class that 101 * provides the SASL mechanism handler implementation. 102 * 103 * @param value The value of the "java-class" property. 104 * @throws PropertyException 105 * If the new value is invalid. 106 */ 107 void setJavaClass(String value) throws PropertyException; 108 109 110 111 /** 112 * Gets the "quality-of-protection" property. 113 * <p> 114 * The name of a property that specifies the quality of protection 115 * the server will support. 116 * 117 * @return Returns the value of the "quality-of-protection" property. 118 */ 119 QualityOfProtection getQualityOfProtection(); 120 121 122 123 /** 124 * Sets the "quality-of-protection" property. 125 * <p> 126 * The name of a property that specifies the quality of protection 127 * the server will support. 128 * 129 * @param value The value of the "quality-of-protection" property. 130 * @throws PropertyException 131 * If the new value is invalid. 132 */ 133 void setQualityOfProtection(QualityOfProtection value) throws PropertyException; 134 135 136 137 /** 138 * Gets the "realm" property. 139 * <p> 140 * Specifies the realms that is to be used by the server for 141 * DIGEST-MD5 authentication. 142 * <p> 143 * If this value is not provided, then the server defaults to use 144 * the fully qualified hostname of the machine. 145 * 146 * @return Returns the value of the "realm" property. 147 */ 148 String getRealm(); 149 150 151 152 /** 153 * Sets the "realm" property. 154 * <p> 155 * Specifies the realms that is to be used by the server for 156 * DIGEST-MD5 authentication. 157 * <p> 158 * If this value is not provided, then the server defaults to use 159 * the fully qualified hostname of the machine. 160 * 161 * @param value The value of the "realm" property. 162 * @throws PropertyException 163 * If the new value is invalid. 164 */ 165 void setRealm(String value) throws PropertyException; 166 167 168 169 /** 170 * Gets the "server-fqdn" property. 171 * <p> 172 * Specifies the DNS-resolvable fully-qualified domain name for the 173 * server that is used when validating the digest-uri parameter 174 * during the authentication process. 175 * <p> 176 * If this configuration attribute is present, then the server 177 * expects that clients use a digest-uri equal to "ldap/" followed by 178 * the value of this attribute. For example, if the attribute has a 179 * value of "directory.example.com", then the server expects clients 180 * to use a digest-uri of "ldap/directory.example.com". If no value 181 * is provided, then the server does not attempt to validate the 182 * digest-uri provided by the client and accepts any value. 183 * 184 * @return Returns the value of the "server-fqdn" property. 185 */ 186 String getServerFqdn(); 187 188 189 190 /** 191 * Sets the "server-fqdn" property. 192 * <p> 193 * Specifies the DNS-resolvable fully-qualified domain name for the 194 * server that is used when validating the digest-uri parameter 195 * during the authentication process. 196 * <p> 197 * If this configuration attribute is present, then the server 198 * expects that clients use a digest-uri equal to "ldap/" followed by 199 * the value of this attribute. For example, if the attribute has a 200 * value of "directory.example.com", then the server expects clients 201 * to use a digest-uri of "ldap/directory.example.com". If no value 202 * is provided, then the server does not attempt to validate the 203 * digest-uri provided by the client and accepts any value. 204 * 205 * @param value The value of the "server-fqdn" property. 206 * @throws PropertyException 207 * If the new value is invalid. 208 */ 209 void setServerFqdn(String value) throws PropertyException; 210 211}