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.server.FileBasedKeyManagerProviderCfg; 033 034 035 036/** 037 * A client-side interface for reading and modifying File Based Key 038 * Manager Provider settings. 039 * <p> 040 * The File Based Key Manager Provider can be used to obtain the 041 * server certificate from a key store file on the local file system. 042 */ 043public interface FileBasedKeyManagerProviderCfgClient extends KeyManagerProviderCfgClient { 044 045 /** 046 * Get the configuration definition associated with this File Based Key Manager Provider. 047 * 048 * @return Returns the configuration definition associated with this File Based Key Manager Provider. 049 */ 050 ManagedObjectDefinition<? extends FileBasedKeyManagerProviderCfgClient, ? extends FileBasedKeyManagerProviderCfg> definition(); 051 052 053 054 /** 055 * Gets the "java-class" property. 056 * <p> 057 * The fully-qualified name of the Java class that provides the File 058 * Based Key Manager Provider implementation. 059 * 060 * @return Returns the value of the "java-class" property. 061 */ 062 String getJavaClass(); 063 064 065 066 /** 067 * Sets the "java-class" property. 068 * <p> 069 * The fully-qualified name of the Java class that provides the File 070 * Based Key Manager Provider implementation. 071 * 072 * @param value The value of the "java-class" property. 073 * @throws PropertyException 074 * If the new value is invalid. 075 */ 076 void setJavaClass(String value) throws PropertyException; 077 078 079 080 /** 081 * Gets the "key-store-file" property. 082 * <p> 083 * Specifies the path to the file that contains the private key 084 * information. This may be an absolute path, or a path that is 085 * relative to the OpenDJ instance root. 086 * <p> 087 * Changes to this property will take effect the next time that the 088 * key manager is accessed. 089 * 090 * @return Returns the value of the "key-store-file" property. 091 */ 092 String getKeyStoreFile(); 093 094 095 096 /** 097 * Sets the "key-store-file" property. 098 * <p> 099 * Specifies the path to the file that contains the private key 100 * information. This may be an absolute path, or a path that is 101 * relative to the OpenDJ instance root. 102 * <p> 103 * Changes to this property will take effect the next time that the 104 * key manager is accessed. 105 * 106 * @param value The value of the "key-store-file" property. 107 * @throws PropertyException 108 * If the new value is invalid. 109 */ 110 void setKeyStoreFile(String value) throws PropertyException; 111 112 113 114 /** 115 * Gets the "key-store-pin" property. 116 * <p> 117 * Specifies the clear-text PIN needed to access the File Based Key 118 * Manager Provider . 119 * 120 * @return Returns the value of the "key-store-pin" property. 121 */ 122 String getKeyStorePin(); 123 124 125 126 /** 127 * Sets the "key-store-pin" property. 128 * <p> 129 * Specifies the clear-text PIN needed to access the File Based Key 130 * Manager Provider . 131 * 132 * @param value The value of the "key-store-pin" property. 133 * @throws PropertyException 134 * If the new value is invalid. 135 */ 136 void setKeyStorePin(String value) throws PropertyException; 137 138 139 140 /** 141 * Gets the "key-store-pin-environment-variable" property. 142 * <p> 143 * Specifies the name of the environment variable that contains the 144 * clear-text PIN needed to access the File Based Key Manager 145 * Provider . 146 * 147 * @return Returns the value of the "key-store-pin-environment-variable" property. 148 */ 149 String getKeyStorePinEnvironmentVariable(); 150 151 152 153 /** 154 * Sets the "key-store-pin-environment-variable" property. 155 * <p> 156 * Specifies the name of the environment variable that contains the 157 * clear-text PIN needed to access the File Based Key Manager 158 * Provider . 159 * 160 * @param value The value of the "key-store-pin-environment-variable" property. 161 * @throws PropertyException 162 * If the new value is invalid. 163 */ 164 void setKeyStorePinEnvironmentVariable(String value) throws PropertyException; 165 166 167 168 /** 169 * Gets the "key-store-pin-file" property. 170 * <p> 171 * Specifies the path to the text file whose only contents should be 172 * a single line containing the clear-text PIN needed to access the 173 * File Based Key Manager Provider . 174 * 175 * @return Returns the value of the "key-store-pin-file" property. 176 */ 177 String getKeyStorePinFile(); 178 179 180 181 /** 182 * Sets the "key-store-pin-file" property. 183 * <p> 184 * Specifies the path to the text file whose only contents should be 185 * a single line containing the clear-text PIN needed to access the 186 * File Based Key Manager Provider . 187 * 188 * @param value The value of the "key-store-pin-file" property. 189 * @throws PropertyException 190 * If the new value is invalid. 191 */ 192 void setKeyStorePinFile(String value) throws PropertyException; 193 194 195 196 /** 197 * Gets the "key-store-pin-property" property. 198 * <p> 199 * Specifies the name of the Java property that contains the 200 * clear-text PIN needed to access the File Based Key Manager 201 * Provider . 202 * 203 * @return Returns the value of the "key-store-pin-property" property. 204 */ 205 String getKeyStorePinProperty(); 206 207 208 209 /** 210 * Sets the "key-store-pin-property" property. 211 * <p> 212 * Specifies the name of the Java property that contains the 213 * clear-text PIN needed to access the File Based Key Manager 214 * Provider . 215 * 216 * @param value The value of the "key-store-pin-property" property. 217 * @throws PropertyException 218 * If the new value is invalid. 219 */ 220 void setKeyStorePinProperty(String value) throws PropertyException; 221 222 223 224 /** 225 * Gets the "key-store-type" property. 226 * <p> 227 * Specifies the format for the data in the key store file. 228 * <p> 229 * Valid values should always include 'JKS' and 'PKCS12', but 230 * different implementations may allow other values as well. If no 231 * value is provided, the JVM-default value is used. Changes to this 232 * configuration attribute will take effect the next time that the 233 * key manager is accessed. 234 * 235 * @return Returns the value of the "key-store-type" property. 236 */ 237 String getKeyStoreType(); 238 239 240 241 /** 242 * Sets the "key-store-type" property. 243 * <p> 244 * Specifies the format for the data in the key store file. 245 * <p> 246 * Valid values should always include 'JKS' and 'PKCS12', but 247 * different implementations may allow other values as well. If no 248 * value is provided, the JVM-default value is used. Changes to this 249 * configuration attribute will take effect the next time that the 250 * key manager is accessed. 251 * 252 * @param value The value of the "key-store-type" property. 253 * @throws PropertyException 254 * If the new value is invalid. 255 */ 256 void setKeyStoreType(String value) throws PropertyException; 257 258}