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 010 * trunk/opends/resource/legal-notices/OpenDS.LICENSE 011 * or https://OpenDS.dev.java.net/OpenDS.LICENSE. 012 * See the License for the specific language governing permissions 013 * and limitations under the License. 014 * 015 * When distributing Covered Code, include this CDDL HEADER in each 016 * file and include the License file at 017 * trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable, 018 * add the following below this CDDL HEADER, with the fields enclosed 019 * by brackets "[]" replaced with your own identifying information: 020 * Portions Copyright [yyyy] [name of copyright owner] 021 * 022 * CDDL HEADER END 023 * 024 * 025 * Copyright 2008 Sun Microsystems, Inc. 026 */ 027 package org.opends.server.admin.std.server; 028 029 030 031 import org.opends.server.admin.server.ConfigurationChangeListener; 032 033 034 035 /** 036 * A server-side interface for querying File Based Key Manager 037 * Provider settings. 038 * <p> 039 * The File Based Key Manager Provider can be used to obtain the 040 * server certificate from a key store file on the local file system. 041 */ 042 public interface FileBasedKeyManagerProviderCfg extends KeyManagerProviderCfg { 043 044 /** 045 * Gets the configuration class associated with this File Based Key Manager Provider. 046 * 047 * @return Returns the configuration class associated with this File Based Key Manager Provider. 048 */ 049 Class<? extends FileBasedKeyManagerProviderCfg> configurationClass(); 050 051 052 053 /** 054 * Register to be notified when this File Based Key Manager Provider is changed. 055 * 056 * @param listener 057 * The File Based Key Manager Provider configuration change listener. 058 */ 059 void addFileBasedChangeListener(ConfigurationChangeListener<FileBasedKeyManagerProviderCfg> listener); 060 061 062 063 /** 064 * Deregister an existing File Based Key Manager Provider configuration change listener. 065 * 066 * @param listener 067 * The File Based Key Manager Provider configuration change listener. 068 */ 069 void removeFileBasedChangeListener(ConfigurationChangeListener<FileBasedKeyManagerProviderCfg> listener); 070 071 072 073 /** 074 * Gets the "java-class" property. 075 * <p> 076 * The fully-qualified name of the Java class that provides the File 077 * Based Key Manager Provider implementation. 078 * 079 * @return Returns the value of the "java-class" property. 080 */ 081 String getJavaClass(); 082 083 084 085 /** 086 * Gets the "key-store-file" property. 087 * <p> 088 * Specifies the path to the file that contains the private key 089 * information. This may be an absolute path, or a path that is 090 * relative to the OpenDS Directory Server instance root. 091 * <p> 092 * Changes to this property will take effect the next time that the 093 * key manager is accessed. 094 * 095 * @return Returns the value of the "key-store-file" property. 096 */ 097 String getKeyStoreFile(); 098 099 100 101 /** 102 * Gets the "key-store-pin" property. 103 * <p> 104 * Specifies the clear-text PIN needed to access the File Based Key 105 * Manager Provider . 106 * 107 * @return Returns the value of the "key-store-pin" property. 108 */ 109 String getKeyStorePin(); 110 111 112 113 /** 114 * Gets the "key-store-pin-environment-variable" property. 115 * <p> 116 * Specifies the name of the environment variable that contains the 117 * clear-text PIN needed to access the File Based Key Manager 118 * Provider . 119 * 120 * @return Returns the value of the "key-store-pin-environment-variable" property. 121 */ 122 String getKeyStorePinEnvironmentVariable(); 123 124 125 126 /** 127 * Gets the "key-store-pin-file" property. 128 * <p> 129 * Specifies the path to the text file whose only contents should be 130 * a single line containing the clear-text PIN needed to access the 131 * File Based Key Manager Provider . 132 * 133 * @return Returns the value of the "key-store-pin-file" property. 134 */ 135 String getKeyStorePinFile(); 136 137 138 139 /** 140 * Gets the "key-store-pin-property" property. 141 * <p> 142 * Specifies the name of the Java property that contains the 143 * clear-text PIN needed to access the File Based Key Manager 144 * Provider . 145 * 146 * @return Returns the value of the "key-store-pin-property" property. 147 */ 148 String getKeyStorePinProperty(); 149 150 151 152 /** 153 * Gets the "key-store-type" property. 154 * <p> 155 * Specifies the format for the data in the key store file. 156 * <p> 157 * Valid values should always include 'JKS' and 'PKCS12', but 158 * different implementations may allow other values as well. If no 159 * value is provided, the JVM-default value is used. Changes to this 160 * configuration attribute will take effect the next time that the 161 * key manager is accessed. 162 * 163 * @return Returns the value of the "key-store-type" property. 164 */ 165 String getKeyStoreType(); 166 167 }