Catalyst를 처음 설정하려고합니다. 인증이 작동하지 않는 이유를 파악하기 위해 꽤 오랫동안 디버깅 한 후 SQL 쿼리가 다음과 같이 보입니다.
SELECT me.user_id, me.password, me.role from users me WHERE ( password =?) : 'abcd'
사용자 테이블 (테스트 암호의 경우 일반 텍스트)
user_id PRI 비밀번호 역할
Users.pm는이 패키지 ;> set_primary_key ( "USER_ID")를 -
쿼리가 user_id가 아닌 암호에 있다는 것이 잘못되었을 수 있습니까?
감사
구성 해시가 올바르게 구성되지 않은 것 같습니다.
대신에 id_field
가리키는 것이 좋습니다 . 다음은 내 앱의 구성입니다 (나는 아마도 DBIx :: Class가 아니라 Class : DBI를 사용하지만 중요하지 않습니다). 내 , 즉 사용자 ID가 저장된 필드에 해당합니다.password
user_id
login_name
user_id
my $authenticationconfig = {
default_realm => 'login_name',
login_name => {
credential => {
class => 'Password',
password_field => 'password',
password_type => 'crypted'
},
store => {
class => 'Class::DBI',
user_class => '__myapp__::__myusertable__',
id_field => 'login_name' ## have you got password here?
}
},
... # other realms
};
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다