⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 querydatabaseauthenticationhandler.java

📁 CAS在Tomcat中实现单点登录项目,单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一
💻 JAVA
字号:
/* * Copyright 2007 The JA-SIG Collaborative. All rights reserved. See license * distributed with this file and available online at * http://www.ja-sig.org/products/cas/overview/license/ */package org.jasig.cas.adaptors.jdbc;import org.jasig.cas.authentication.handler.AuthenticationException;import org.jasig.cas.authentication.principal.UsernamePasswordCredentials;import org.jasig.cas.util.annotation.NotNull;import org.springframework.dao.IncorrectResultSizeDataAccessException;/** * Class that if provided a query that returns a password (parameter of query * must be username) will compare that password to a translated version of the * password provided by the user. If they match, then authentication succeeds. * Default password translator is plaintext translator. *  * @author Scott Battaglia * @author Dmitriy Kopylenko * @version $Revision: 42053 $ $Date: 2007-06-10 09:17:55 -0400 (Sun, 10 Jun 2007) $ * @since 3.0 */public final class QueryDatabaseAuthenticationHandler extends    AbstractJdbcUsernamePasswordAuthenticationHandler {    @NotNull    private String sql;    protected final boolean authenticateUsernamePasswordInternal(        final UsernamePasswordCredentials credentials)        throws AuthenticationException {        final String username = credentials.getUsername();        final String password = credentials.getPassword();        final String encryptedPassword = this.getPasswordEncoder().encode(            password);                try {            final String dbPassword = getJdbcTemplate().queryForObject(                this.sql, String.class, username);            return dbPassword.equals(encryptedPassword);        } catch (final IncorrectResultSizeDataAccessException e) {            // this means the username was not found.            return false;        }    }    /**     * @param sql The sql to set.     */    public void setSql(final String sql) {        this.sql = sql;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -