001 /** 002 * Copyright 2005-2014 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.rice.ksb.security.admin.service; 017 018 import java.security.GeneralSecurityException; 019 import java.security.KeyStore; 020 import java.security.KeyStoreException; 021 import java.security.PrivateKey; 022 import java.security.cert.Certificate; 023 import java.util.List; 024 025 import org.kuali.rice.ksb.security.admin.KeyStoreEntryDataContainer; 026 027 /** 028 * This is an interface for the Java Security Management piece of the KSB module 029 * of Rice. It is used for modifying and creating keystores and certificates 030 * 031 * @author Kuali Rice Team (rice.collab@kuali.org) 032 * 033 */ 034 public interface JavaSecurityManagementService { 035 036 public void removeClientCertificate(String alias) throws KeyStoreException; 037 038 public KeyStore generateClientKeystore(String alias, String passphrase) throws GeneralSecurityException; 039 040 public List<KeyStoreEntryDataContainer> getListOfModuleKeyStoreEntries(); 041 042 public String getModuleKeyStoreAlias(); 043 044 public String getModuleKeyStoreLocation(); 045 046 public String getModuleSignatureAlgorithm(); 047 048 public Certificate getCertificate(String alias) throws KeyStoreException; 049 050 public PrivateKey getModulePrivateKey(); 051 052 public boolean isAliasInKeystore(String alias) throws KeyStoreException; 053 054 public String getCertificateAlias(Certificate certificate) throws KeyStoreException; 055 056 }