对于一些要求,我需要从登录页面的用户给定的用户名和密码。(
但是,我无法设法进入以下SecurityConfig的配置方法。
@EnableWebSecurity公共类SecurityConfig扩展WebSecurity配置适配器{
@Autowired
PasswordEncoder passwordEncoder;
@Autowired
DataSource dataSource;
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
**// Wants to get user-given username and password**
auth.jdbcAuthentication().dataSource(dataSource)
.passwordEncoder(passwordEncoder())
.usersByUsernameQuery("select username,password, true from user where username=?")
.authoritiesByUsernameQuery("select u.username, r.rolename from user u, role r where u.roleId = r.id and u.username=?");
}
}
这里不应该这样做。如果你想获得用户凭据,你应该在你的过滤器中实现它。例如,你可以定义一个新的。
@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
class AuthFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
ServletException {
if (request.getContentType() != null && request.getContentType().contains("application/json") && Objects.equals(((RequestFacade) request).getServletPath(), "/oauth/token")) {
InputStream is = request.getInputStream();
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
int nRead;
byte[] data = new byte[16384];
while ((nRead = is.read(data, 0, data.length)) != -1) {
buffer.write(data, 0, nRead);
}
buffer.flush();
byte[] json = buffer.toByteArray();
HashMap<String, String> result = new ObjectMapper().readValue(json, HashMap.class);
HashMap<String, String[]> r = new HashMap<>();
for (String key : result.keySet()) {
String[] val = new String[1];
val[0] = result.get(key);
r.put(key, val);
}
String[] val = new String[1];
val[0] = ((RequestFacade) request).getMethod();
r.put("_method", val);
HttpServletRequest s = new MyServletRequestWrapper(((HttpServletRequest) request), r);
chain.doFilter(s, response);
} else {
chain.doFilter(request, response);
}
}
@Override
public void destroy() {
}
}
例如,这段代码获取查询参数并将其放入请求体中。
问题内容: 我丢失了MySQL用户名和密码。我如何找回它? 问题答案: 停止MySQL进程。 使用–skip-grant-tables选项启动MySQL进程。 使用-u root选项启动MySQL控制台客户端。 列出所有用户; 重设密码; 但 不要忘记 ,以 停止MySQL进程 正常启动MySQL进程(即不使用–skip-grant-tables选项) 完成后。否则,数据库的安全性可能会受到威胁。
问题内容: 我得到一个20个字符的数字ID,看起来像 10527391670258314752 ,给定这个ID,我如何获得与之关联的用户名? 该表如下所示: 然后将从数据库中检索出的用户名存储到中。 我已经试过了: 输出将代替名称。 问题答案: 我强烈建议避免mysqli扩展。您应该使用一些数据库抽象库,而不是直接使用mysqli函数。mysqli类不适合单独使用。 如果您真的想使用纯mysqli
我有一份詹金斯的工作,在那里我登录了一个网站。网站的用户名和密码与我为詹金斯使用的用户名和密码相同。我想得到詹金斯的用户名和密码,并把它传递给我写的java代码登录到网站。 如何获取Jenkins用户名和密码属性? 背景:假设我使用“用户名1”和“密码1”登录到Jenkins。我有一个使用相同登录凭据的网站。我有一个詹金斯的工作创建登录到这个网站。詹金斯的工作被很多人使用。我想以这样的方式编写Ja
问题内容: 我需要输入USER表的USER_ID字段作为另一个表中的外键。因此,我认为我需要在用户登录时启动一个会话。我很难让它在任何地方回显。我能够启动一个会话,该会话允许我回显USERNAME,但无法将其复制为ID。 请帮忙吗?我的处理代码如下。我还粘贴了本节,我暂时尝试对其进行回显以进行测试。 处理脚本: 我希望USER_ID出现在哪里: 问题答案: 使用FETCH_ASSOC而不是FETC
我将jenkins安装到windows 10。当我访问http://localhost:8080/,我必须输入用户名和密码。 但我不会像截图显示的那样显示秘密文件夹: 在包含jenkins.war的路径文件夹中运行时,我得到了这个异常 你能帮我解决那个问题吗?。 如有任何建议,将不胜感激。提前谢谢。
我找不到如何将用户名和密码传递给KafkaConsumer。我使用SASL明文对Kafka服务器上的客户端进行身份验证。 我试图在上找到此信息https://kafka.apache.org/documentation/#consumerconfigs但结果是否定的。 我发现了一些作者使用参数“用户名”和“密码”的例子。我试图这样做: 但我得到了例外"未能构建Kafka消费者"。 如果有人知道如何