thredds数据服务器安全配置测试实用程序

thredds_security_test的Python项目详细描述


一组用于测试thredds数据服务器的安全配置的工具。有三个工具:


thredds_test_url_access:
-确定对由url指定的单个资源的访问是否可用。提供了一个下载资源的选项。


thredds_test_catalog_access:
-确定是否可以访问由url指定的目录中列出的资源。
可选地,它将通过目录引用递归。可以指定允许访问和/或拒绝访问的资源数,并检查这些资源是否与结果匹配。

对于具有多个用于访问不同类型数据或元数据的扩展名的服务,将尝试每个扩展名
(默认情况下,以下扩展名用于OpenDAP服务:.html、.dds、.das、.asc、
.ascii和.dods)。

e或可用于访问
数据集的服务/扩展组合,如果发现其中一些数据集可以访问,而其他数据集则无法访问,则安全性
配置将报告为不一致。

thredds_test_file_access::
-确定访问是否可用于由文件中列出的URL指定的一组资源。
这用于检查thredds内容目录中存在但未在目录中列出的文件是否不可访问。

先决条件对于使用https支持编译的python 2.6。早期的python
版本不处理https代理。


installation
用法和选项。常见选项有::

-h,--帮助显示帮助消息并退出。
-k文件,--私钥=文件
私钥文件-默认为$home/.esg/credentials.pem
-c文件,--证书=文件
证书文件-defaults to$home/.esg/credentials.pem
-d,--debug打印调试信息-这可能有助于解决http
或https访问服务器的问题。
-q,--quiet产生最小输出。

r/>thredds_test_url_access[选项]url
url要测试其可访问性的资源的url
-f file,--fetch=file
指定一个文件,如果可访问,则将资源内容提取到该文件中。

thredds_test_catalog_access[选项]catalog_url
catalog_url要测试的目录的url
-l,--仅列出目录中的数据集,而不检查访问权限。
-r,--递归到引用的目录中。遵循以下类型的引用:
o服务类型为"catalog"或"resolver
o目录中包含的目录引用
-一个数字,--expect allowed=number
预期允许访问的数据集数。进行
访问检查后,将此数字与找到的数字进行比较;如果
它们不相同,则会打印错误消息,并且工具返回状态
值1。
-x数字,--expect denied=数字
期望访问的数据集数D被拒绝。进行
访问检查后,将此数字与找到的数字进行比较;如果
它们不相同,则会打印错误消息,并且工具返回状态
值1。
-e服务扩展,--service-extensions=service_extensions
服务类型列表和每个要尝试的扩展列表。
格式如下:
opendap:.html,.dds;othersvc:.dat,.asc
d默认为:opendap:.html、.dds、.das、.asc、.ascii、.dods
-p公共服务扩展,--public service extensions=public\u服务扩展
预期公共访问
的服务类型和扩展,例如opendap:.html、.dds
默认为:opendap:.html
如果.html资源是公共可访问的,但其他资源是使用用于测试的帐户无法访问。
-f禁止的服务扩展,--禁止的服务扩展=禁止的服务扩展
不需要访问的服务类型和扩展,例如opendap:.asc
这是有用的,例如,如果安全配置允许访问.asc
资源,而不是等效的.ascii资源。


thredds_test_file_access[options]list_file_path
list_file_pathg一个url列表,其中每个
的可访问性将被测试
-一个数字,--expect allowed=数字
预期允许访问的数据集数。进行
访问检查后,将此数字与找到的数字进行比较;如果
它们不相同,则会打印错误消息,并且工具返回状态
值1。
-x数字,--expect denied=数字
预期拒绝访问的数据集数。进行
访问检查后,将此数字与找到的数字进行比较;如果
它们不相同,则会打印错误消息,并且工具返回状态
值1。

返回状态::
thredds_测试URL访问
0-如果资源可访问
1-如果资源不可访问

1-如果指定了expect allowed和/或expect denied选项,结果与选项值不匹配。
2-如果用户中断测试
0-否则

thredds_test_file_access
1-如果指定了expect allowed和/或expect denied选项,并且结果与选项值不匹配。
2-如果用户中断测试
0-否则

除上述命令行工具外,还可以编写python测试脚本。
测试应调用以下任何函数:
thredds_security_test.lib.catalog_access.check_catalog
thredds_security_test.lib.file_access.check_files
thredds_security_test.lib.httpget.check_url

有关用法示例,请参阅thredds_security_test.test.test_access.py。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为扫描器的输入生成字符序列   hibernate中的java实体合并   如何使变量在Java文件中成为全局变量   java JVM崩溃“异常访问冲突”   向MediaMetadataRetriever中的setDataSource()发送Uri时发生java IllegalArgumentException   java没有节约协议?   用户界面java gui帮助actionlistener   java索引越界异常,即使大小小于索引?   在C++中使用java的困惑   在普通java编码中插入图像   JDBC上的java缓存数据   在Java中,在字符串的特定位置替换子字符串   java在运行elasticsearch集群时遇到Perm Gen空间问题   java Soap故障跟踪   java拆分器。固定长度(int)。拆分(字符串)   java获取jar内部包的路径