ventura Posted April 14, 2023 Share Posted April 14, 2023 As principais razões para a "queda" authd é: 1. Codificação. 2. Login muito longo. A solução de codificação já existe Vamos falar sobre como eles conseguem a queda do ause através de um login muito longo? Aqui o cálculo é que um erro de driver JDBC será causado. Ao verificar o login e a senha, o auz chama a procedureadquireuserpasswd, que repassa o login. A estrutura do procedimento especifica que o comprimento máximo de um login varchar(64) é de 64 letras. Quando um nome de usuário é inserido com mais de 64 letras, obtemos um erro e o auz desaparece. Da o seguinte erro: Citar GQueryPasswd:account is 545y54y5454y5454y545y454y5454y5454y545y454y5454y5445y454y5454y5454y54 , login ip is 192.***.***.*** Prepare procedure call:{call acquireuserpasswd(?,?,?)} acquireIdPasswd exception:account=545y54y5454y5454y545y454y5454y5454y545y454y5454y5445y454y5454y5454y54 com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'name1' at row 1 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3556) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3490) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1959) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2109) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2648) at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2077) at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1356) at com.mysql.jdbc.CallableStatement.execute(CallableStatement.java:877) at application.procedure.handler.execute(handler.java:197) at org.mono.StorageEx.acquireIdPasswd(StorageEx.java:319) at protocol.MatrixPasswd.Server(MatrixPasswd.java:65) at com.goldhuman.IO.Protocol.Rpc.Process(Unknown Source) at com.goldhuman.IO.Protocol.Task.run(Unknown Source) at com.goldhuman.Common.ThreadPool.run(Unknown Source) Não há nada sério no erro em si é um aviso de que o login é muito longo. Mas, ao mesmo tempo, o desempenho da autenticação (login) cai. A solução mais simples é remover essas exceções. Solução Abrindo o arquivo table.xml Encontre a linha com a senha do banco de dados. Nele, você precisa alterar a codificação utf8 para ascii, isso resolverá o primeiro problema. E adicione &amp;jdbcCompliantTruncation=false - desativar erros de frenagem. Ficando assim <connection name="auth0" poolsize="3" url="jdbc:mysql://localhost:3306/pw?useUnicode=true&characterEncoding=ascii&jdbcCompliantTruncation=false" username="root" password="SENHA_DB"/> 1 1 Quote Link to comment Share on other sites More sharing options...
scrol Posted April 14, 2023 Share Posted April 14, 2023 Achei que ninguém usasse mais a authd em java Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.