乐优商城项目总结day(17)

本文总结了乐优商城项目中授权中心遇到的问题及解决方案,包括JWT无状态认证下cookie的设置问题,详细讲解了如何处理经过nginx和zuul反向代理时cookie Domain的设置,以及zuul网关中对登录拦截的实现,确保用户请求的安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

乐优商城项目总结day(17)

授权中心

cookie设置问题

认证与授权采用jwt无状态的方式,使用私钥生成token后将token写回cookie。但是设置cookie是在授权微服务进行写回的,会经过nginx与zuul的反向代理,在两次反向代理的过程中request的host和url均发生了变化。

// 将token写入cookie
CookieUtils.newBuilder(response).httpOnly().request(request).build(cookieName, token);

写入cookie时需要对cookie的Domain进行设置,Domain为此次cookie设置的作用域,需要从request的路径信息中获取。

/**
         * 得到cookie的域名
         */
        private String getDomainName(HttpServletRequest request) {
            String domainName = null;

            String serverName = request.getRequestURL().toString();
            if (serverName == null || serverName.equals("")) {
                domainName = "";
            } else {
                serverName = serverName.toLowerCase();
                serverName = serverName.substring(7);
                final int end = serverName.indexOf("/");
                serverName = server
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值