kettle开发-Day43-加密环境下运行作业

前言:

        金三银四,开年第一篇我们来介绍下,怎么在加密情况下运行我们的kettle作业及任务。无疑现在所有企业都认识到加密的重要性,加密后的文件在对外传输的时候不能被访问,访问时出现一堆乱码,同时正常的应用软件也会识别不了加密文件,造成软件不能使用,今天来介绍360旗下的奇安信加密对kettle的影响及对应解决办法~

一、加密介绍

        加密状态下,我们在编辑保存任何文件都会被加密,如下图所示kettle文件在编辑保存后会被上锁。其中包括.ktr(转换).kjb(作业)。

        1、现象       

        然后我们查看下定时调度的日志,如下图所示定时调度对应作业时会被提示

        Error reading information from input stream
        Content is not allowed in prolog.


        ERROR: Kitchen can't continue because the job couldn't be loaded.

        2、原因分析 

        因在加密状态下,对kettle来说这种加密的文件是不能被识别,因为奇安信不允许它识别。

二、破局之法

        1、解题思路

        找到原因,我们可以有两个切入点。

        1、kettle绕过加密,独立出来,即针对kettle文件默认不会加密

        2、kettle和加密软件和解,奇安信对kettle开通绿色通道。

        当然,第一种方法实现难度较大,而且不合格信息安全的要求,kettle也应该被纳入加密范围,保证kettle文件的安全及稳定运行。

        2、实践案例

        显然第二种方法才是正道,因此我们怎么才能和加密软件进行和解呢?那首先得告诉加密软件它需要怎么配合?

        这里就需要我们了解kettle背后运行的逻辑了。

        2.1前端spoon.bat加载原理

        如下图所示我们找到kettle运行的进程,可以发现的是kettle在前端是以javaw.exe的方式运行的。

 

        因此我们需要对 javaw.exe开通绿色通道。所以我们也把javaw.exe开放了授权,因此确实作业可以在前端被调度了。然而不出意外的话就要出意外了....

        2.2 Kitchen.bat定时调度运行原理

        如上图所示,我们将  javaw.exe开通了绿色通道,因此我们在本地执行时是ok的,但是我们后台定时调度是采用Kitchen.bat来运行,此时我们需要分析的是后台定时调度是采用什么方式运行的,因此我们采用同样的方式可监控到后台定时任务是调用的java.exe,因此我们还需要给java.exe开通绿色通道。

        此时我们再看后台运行日志,可看到我们的定时任务成功运行,问题解决,完美~

三、总结

        因此后续不管我们公司装的是哪种加密软件,只需要加密软件对  javaw.exe和 java.exe两个进程放行即可,这也是为啥说kettle是一个纯java的开源软件,好的,今天就到这,散会~

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

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

相关文章

1分钟学会Python字符串前后缀与编解码

1.前缀和后缀 前缀和后缀指的是:字符串是否以指定字符开头和结尾 2.startswith() 判断字符串是否以指定字符开头,若是返回True,若不是返回False str1 "HelloPython"print(str1.startswith("Hello")) # Trueprint…

Navicat Premium 16:打破数据库界限,实现高效管理mac/win版

Navicat Premium 16是一款功能强大的数据库管理工具,旨在帮助用户更轻松地连接、管理和保护各种数据库。该软件支持多种数据库系统,如MySQL、Oracle、SQL Server、PostgreSQL等,并提供了直观的图形界面,使用户能够轻松地完成各种数…

【力扣白嫖日记】585.2016年的投资

前言 练习sql语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。 今日题目: 585.2016年的投资 表:Person 列名类型pidinttiv_2015floattiv_2016floatlatfloatlonfloat pid …

AI也来打掼蛋,难道人工智能也能当领导?

在人工智能(AI)的研究领域中,游戏被视为现实世界的简化模型,常常是研究的首选平台。这些研究主要关注游戏代理的决策过程。例如,中国的传统卡牌游戏“掼蛋”(字面意思是“扔鸡蛋”)就是一个挑战…

Unity(第十七部)Unity自带的角色控制器

组件Character Controller 中文角色控制器 using System.Collections; using System.Collections.Generic; using UnityEngine;public class player : MonoBehaviour {private CharacterController player;void Start(){player GetComponent<CharacterController>();}v…

对于爬虫的学习

本地爬取 package MyApi.a08regexdemo;import java.util.regex.Matcher; import java.util.regex.Pattern;public class RegexDemo03 {public static void main(String[] args) {//要求&#xff1a;找出里面所有javaxxString str"Java自从95年问世以来&#xff0c;经历了…

HarmonyOS—编译构建概述

编译构建是将应用/服务的源代码、资源、第三方库等&#xff0c;通过编译工具转换为可直接在硬件设备上运行的二进制机器码&#xff0c;然后再将二进制机器码封装为HAP/APP软件包&#xff0c;并为HAP/APP包进行签名的过程。其中&#xff0c;HAP是可以直接运行在模拟器或真机设备…

牛皮癣发作和复发的触发因素

谷禾健康 银屑病&#xff0c;又叫牛皮癣&#xff0c;会导致出现皮疹伴发痒的鳞状斑块&#xff0c;最常见于膝盖、肘部、躯干和头皮。通常呈周期性发展&#xff0c;发作数周或数月&#xff0c;然后消退一段时间&#xff0c;长期的发作和复发会给患者带来很大的痛苦和困扰&#x…

Qt5.9.9交叉编译(带sqlite3、OpenSSL)

1、交叉编译工具链 这里ARM平台是ARM CortexA9的&#xff0c;一般交叉编译工具链demo板厂商都会提供&#xff0c;若未提供或想更换新版本的交叉编译工具链可参考以下方式获取。 1.1 下载适用于ARM CortexA9的交叉编译工具链 Linaro Releases下载gcc4的最新版xxxx-i686_arm-li…

string【基础篇】

1.1string字符串类 注意&#xff1a;这个类独立于所使用的编码来处理字节:如果用来处理多字节或变长字符(如UTF-8)的序列&#xff0c;这个 类的所有成员(如长度或大小)以及它的迭代器&#xff0c;将仍然按照字节(而不是实际编码的字符)来操作。 总结&#xff1a; string是表…

设计模式系列文章-7个创建型模式更新已完结

其实从2019年开始就有些一套关于设计模式的系列文章&#xff0c;但是因为种种原因一直搁置到现在。直到2024年才又恢复更新。 24年1月份上旬一直在弄博客站&#xff1a;https://jaune162.blog 的搭建 24年1月份下旬弄专题站&#xff1a;https://books.jaune162.blog 的搭建。…

Qt应用软件【测试篇】vargrid内存检查工具

文章目录 vargrid介绍vargrid官网vargrid安装常用命令Valgrind的主要命令vargrid介绍 Valgrind是一个用于构建动态分析工具的框架,能自动检测许多内存管理和线程错误,并详细分析程序性能。Valgrind发行版包括七个成熟工具:内存错误检测器、两个线程错误检测器、缓存和分支预…

Java8 - LocalDateTime时间日期类使用详解

&#x1f3f7;️个人主页&#xff1a;牵着猫散步的鼠鼠 &#x1f3f7;️系列专栏&#xff1a;Java全栈-专栏 &#x1f3f7;️个人学习笔记&#xff0c;若有缺误&#xff0c;欢迎评论区指正 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&…

redis+定时 模拟滑动窗口实现熔断降级

业务背景 公司业务现用的通道为 A、B&#xff0c;为了降本&#xff0c;引入新的支付通道 Y&#xff0c;但 Y 通道的稳定性要低于 A、B&#xff0c;系统要能在 Y 通道故障时自动切回到 A、B&#xff0c;等 Y 恢复正常后&#xff0c;再切换到 Y。 乍一看很简单&#xff0c;不就是…

使用链表和数组输出A~Z的ASCII码

输出结果 26个字母以及其对应的ASCII码 一、使用链表创建&#xff0c;注意&#xff1a; 节点需要有next指针初始化时head需要new一下 cur指针代表当前指针&#xff0c;每次不断的New新的节点&#xff0c;pre指针代表当前指针的前一个指针&#xff0c;每次pre的next指针指向cur…

sql注入攻击 - cookie注入

环境准备:构建完善的安全渗透测试环境:推荐工具、资源和下载链接_渗透测试靶机下载-CSDN博客 一、Cookie 知识介绍 Cookie(HTTP Cookie)是服务器发送到用户浏览器并保存在本地的一小段数据,用于记录用户的相关信息和状态。这些信息通常包括用户的身份标识、网站偏好设置…

3.1日学习打卡----初学FastDFS(一)

3.1日学习打卡 目录: 3.1日学习打卡一. 为什么要使用分布式文件系统二. FastDFS简介核心概念上传机制下载机制FastDFS环境搭建_LinuxFastDFS指令 一. 为什么要使用分布式文件系统 单机时代 初创时期由于时间紧迫&#xff0c;在各种资源有限的情况下&#xff0c;通常就直接在项…

HTML---Ajax

文章目录 目录 文章目录 前言 一.Ajax概述 二.原生创建Ajax 三,使用Jquery处理Ajax 总结 一.Ajax概述 AJAX&#xff08;Asynchronous Javascript And XML&#xff09;是一种创建交互式网页应用的网页开发技术。它使用Javascript语言与服务器进行异步交互&#xff0c;可以传…

【计算机网络】五种IO模型与IO多路转接之select

文章目录 一、五种IO模型二、非阻塞IO1.fcntl2.实现函数SetNoBlock3.轮询方式读取标准输入 三、I/O多路转接之select1.初识select2.select函数原型3.socket就绪条件4.select的特点5.select缺点6.select使用案例--只读取数据的server服务器1.err.hpp2.log.hpp3.sock.hpp4.select…

Linux上搭建并使用ffmpeg(Java)

关于MacOs和Windows系统上使用ffmpeg就不多说了&#xff0c;有很多相关文章&#xff0c;今天给大家分享一个在Linux环境下使用Java语言来使用ffmpeg 一、首先去官网下载一个Linux对应的ffmpeg包 1、进入ffmpeg官网&#xff1a;官网 2、点击左侧导航栏Download 3、选择Linux对…