CAS5 2 增加驗證碼 錯誤提示 配置Redis

2021-08-27 03:25:56 字數 3272 閱讀 9722

1 重寫credential

public

class

usernamepasswordcaptchacredential

implements

credential, serializable

public

usernamepasswordcaptchacredential(string username, string password, string captcha)

public string getpassword()

public

void

setpassword(final string password)

public string getusername()

public

void

setusername(final string username)

public string getcaptcha()

public

void

setcaptcha(string captcha)

@override

public string getid()

@override

public string tostring()

@override

public

boolean

equals(object o)

@override

public

inthashcode()

}

2 重新配置webflow流程

public

class

captchawebflowconfigurer

extends

defaultwebflowconfigurer

@override

protected

void

createremembermeauthnwebflowconfig(flow flow) else }}

3 之前的springconfig

@configuration

@enableconfigurationproperties(casconfigurationproperties.class)

@autoconfigurebefore(value = caswebflowcontextconfiguration.class)

@componentscan(basepackages = )

public

class

springconfig

}

4 修改login-webflow.xml

id="viewloginform"

view="casloginview"

model="credential">

property="username"

required="true"/>

property="password"

required="true"/>

property="captcha"

required="false"/>

binder>

on="submit"

bind="true"

validate="true"

to="realsubmit"

history="invalidate"/>

view-state>

5 修改casloginview.html 加上驗證碼

class="row"

id="captchashow"

style="display: none;">

type="text"

class="required"

id="captcha"

placeholder="驗證碼"

th:field="*"

autocomplete="off"/>

style="vertical-align: bottom;">

id="createcode"

class="createcode"

src="" />

id="refreshcode"

class="icon-refresh glyphicon glyphicon-refresh">

span>

span>

div>

section>這樣就能提交並接受到驗證碼引數了

1 新增redisconfig

注意:cas在redis票據處理時已經有了redisconnectfactory了,所以就用它的了,不用自己在配置新的引數了。

@configuration

@enablecaching

public

class

redisconfig

extends

cachingconfigurersupport

@bean

public redistemplateredistemplate(redisconnectionfactory factory)

}現在就可以在別的地方使用redis了

@autowired

private redisservice redisservice;1 寫乙個異常, 在需要提示的業務處丟擲即可

/**

* 驗證碼錯誤異常

*/public

class

captchaexception

extends

accountexpiredexception

public

captchaexception(string msg)

}

cas.authn.exceptions.exceptions= com.sugon.itos.web.sso.exception.captchaexception

3 在message_zh_cn.properties裡新增對應提示詞

authenticationfailure.captchaexception=驗證碼錯誤

成功

phpcms後台登陸提示驗證碼錯誤

1 v9的驗證碼在生成後,會把驗證碼的數字存入session當中。2 v9在預設的情況下,session是存放在資料庫當中的。其在資料庫中的表現如下 3 您可以在訪問後台登陸頁後,檢視一下資料庫中session這個表,如果表中沒有型別的資料code s 4 那說明session沒有成功的寫入到資料庫...

Spring Security增加驗證碼校驗

kaptcha依賴包 dependency groupid com.github.penggle groupid artifactid kaptcha artifactid version 2.3.2 version dependency kaptcha配置類 configuration publi...

discuz增加中文驗證碼

方法 1.從windows 系統下獲得字型檔案 c盤下的windows fonts目錄 如 simhei.ttf simsun.ttc 2.linux centos6.5 usr share fonts 下 mkdir chinese 目錄 3.賦予操作許可權 chmod r 755 usr sha...