001package org.apache.archiva.redback.policy.encoders; 002 003/* 004 * Copyright 2001-2006 The Apache Software Foundation. 005 * 006 * Licensed under the Apache License, Version 2.0 (the "License"); 007 * you may not use this file except in compliance with the License. 008 * You may obtain a copy of the License at 009 * 010 * http://www.apache.org/licenses/LICENSE-2.0 011 * 012 * Unless required by applicable law or agreed to in writing, software 013 * distributed under the License is distributed on an "AS IS" BASIS, 014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 015 * See the License for the specific language governing permissions and 016 * limitations under the License. 017 */ 018 019import org.apache.archiva.redback.policy.PasswordEncoder; 020import org.springframework.stereotype.Service; 021 022/** 023 * PlainText PasswordEncoder for use in situtations where the password needs to be saved as-is. 024 * See {@link PasswordEncoder#encodePassword(String)} for details. 025 * 026 * @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> 027 * 028 */ 029@Service("passwordEncoder#plaintext") 030public class PlainTextPasswordEncoder 031 implements PasswordEncoder 032{ 033 034 public String encodePassword( String rawPass ) 035 { 036 return rawPass; 037 } 038 039 public String encodePassword( String rawPass, Object salt ) 040 { 041 return rawPass; 042 } 043 044 public boolean isPasswordValid( String encPass, String rawPass ) 045 { 046 if ( encPass == null && rawPass != null ) 047 { 048 return false; 049 } 050 051 return encPass.equals( rawPass ); 052 } 053 054 public boolean isPasswordValid( String encPass, String rawPass, Object salt ) 055 { 056 return isPasswordValid( encPass, rawPass ); 057 } 058 059 public void setSystemSalt( Object salt ) 060 { 061 // Ignore, not used in this plaintext encoder. 062 } 063}