美文网首页
2023-09-26 nginx 访问图片鉴权设置

2023-09-26 nginx 访问图片鉴权设置

作者: 梅村_9643 | 来源:发表于2023-09-25 14:10 被阅读0次

1安装 nginx 的config 配置 一定要装 redis版本要在1.8.0 以上

cd nginx-1.8.0
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--with-http_auth_request_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi

2.nginx conf配置

 location / {
           # auth_request_set $access_token $arg_access_token;
            auth_request /auth;
            auth_request_set $access_token $access_token;
            root   /;
            add_header Access-Control-Allow-Origin *;
            add_header Access-Control-Allow-Methods *;
            add_header Access-Control-Allow-Headers *;

            #add_header Content-Type "application/octet-stream";
            autoindex on;

         #index  index.html index.htm;
        }
        
        location /auth {
          internal;
          proxy_pass http://192.168.2.60:11011/auth/oauth/getLoadImageToken;
          proxy_pass_request_body off;
          proxy_set_header Content-Length "";
          proxy_set_header X-Original-URI $request_uri;
       } 

3 后端java 鉴权接口

 @GetMapping("/getLoadImageToken")
    public void autLoadImageToken(HttpServletRequest request, HttpServletResponse response) {
        try {
            String uri = request.getHeader("X-Original-URI");
            log.info("nginx请求鉴权的来了请求的url===={}", uri);
            String[] access_tokenList = uri.split("=");
            String access_token = access_tokenList[access_tokenList.length - 1];
            String redisKey = "tofly_oauth:access:" + access_token;
            if (null == redis.get(redisKey)) {
                response.setStatus(400);
            } else {
                response.setStatus(200);
            }

        } catch ( Exception ex ) {
            response.setStatus(400);
        }
        return;
    }


相关文章

  • nginx auth_basic

    nginx的简单鉴权使用nginx搭建的web服务,需要限制访问,但是构建用户系统又过于繁琐时,可考虑使用ngin...

  • 鉴权token和refresh_token

    每次访问鉴权使用token,token使用aes对称加密,鉴权时直接解密得到uid,无需访问数据库验证,鉴权tok...

  • 常见的鉴权方式,你真的不想知道吗

    主要内容 鉴权的作用 几种常见的鉴权 各个鉴权的适用场景 一、什么是鉴权 鉴权是指验证用户是否有权利访问系统的行为...

  • 鉴权与Web安全

    什么是鉴权 鉴权(authentication)是指验证用户是否拥有访问系统的权利。传统的鉴权是通过密码来验证的。...

  • jarvis鉴权组件

    基于shiro的通用鉴权组件Jarvis 大部分应用都有鉴权的需求。如应用认证,要求访问者需要登录才能访问。再如应...

  • mongoDB 鉴权角色权限和相关命令介绍

    前言 前一篇文章《mongoDB 启用鉴权设置》中讲了怎么启用 mongoDB 的鉴权设置,并且简单的加了一个 a...

  • BATJ都会用到的接口鉴权cookie、session 和tok

    鉴权 鉴权是指验证用户是否拥有访问系统的权利—鉴定权限。 cookie、session和token 为什么会有co...

  • 基于cesanta/docker_auth认证的docker r

    说明 registry v1 没有提供认证,鉴权的功能,需要自己通过类似nginx的反向代理来做简单的认证鉴权re...

  • Swift图片缓存处理

    代码如下: 系统鉴权使用: 设置图片使用: 先取缓存,缓存取不到再走网络下载。 PS:暂时项目里是这么处理的,还是...

  • Jekyll 使用说明QuickStart

    Jekyll使用说明 安装Nginx,并设置反向代理,提供80端口访问 启动nginx 设置开机启动 echo "...

网友评论

      本文标题:2023-09-26 nginx 访问图片鉴权设置

      本文链接:https://www.haomeiwen.com/subject/rpfcbdtx.html