我们在使用CAS的时候,除了用户名、密码可能还需要验证码等其他信息,CAS一般使用的Credentials是org.jasig.cas.authentication.principal.UsernamePasswordCredentials,这里只包含有:
/** The username. */
@NotNull
@Size(min=1,message = "required.username")
private String username;
/** The password. */
@NotNull
@Size(min=1, message = "required.password")
private String password;
所以如果要包含有验证码等信息,需要自自定Credentials。Credentials是一个接口,我们的实现方式是继承UsernamePasswordCredentials,当然也可以直接实现Credentials接口,代码如下:
public class MyCredentials extends UsernamePasswordCredentials {
private static final long serialVersionUID = -8343864967200862794L;
/**
* The authCode.
*/
private String authCode;
@Override
public boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;