AS/400如何监控ODBC的数据传输?
中国IT动力,最新最全的IT技术教程最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 未整理篇 | 技术讨论
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护 CPU 主板 硬盘 内存 显卡 显示器 键盘鼠标 声卡音箱 打印机 机箱电源 BIOS 网卡 C# Java Delphi vs.net2005
当前位置: > 操作系统 > IBM Server
AS/400如何监控ODBC的数据传输?
作者:未知 时间:2005-09-13 22:58 出处:Blog.ChinaUnix.net 责编:chinaitpower
摘要:AS/400如何监控ODBC的数据传输?
ODBC为异种OS访问AS/400提供接口,但是,安全方面的问题也接踵而来,如何有效监控ODBC对AS/400数据的传输?本文将通过Exit Program的方式来进行监控。
QIBM_QTF_TRANSFER(程序1)
PGM PARM(&RC &STRU)
DCL VAR(&RC) TYPE(*CHAR) LEN(1)
DCL VAR(&STRU) TYPE(*CHAR) LEN(80)
DCL VAR(&USER) TYPE(*CHAR) LEN(10) /* user profile*/
DCL VAR(&APP1) TYPE(*CHAR) LEN(10) /* function */
DCL VAR(&APP2) TYPE(*CHAR) LEN(10) /* sub function*/
DCL VAR(&TFOBJ) TYPE(*CHAR) LEN(10) /* file name */
DCL VAR(&TFLIB) TYPE(*CHAR) LEN(10) /*library */
DCL VAR(&TFMBR) TYPE(*CHAR) LEN(10) /* member */
DCL VAR(&TFFMT) TYPE(*CHAR) LEN(10) /* format */
DCL VAR(&TYPE) TYPE(*CHAR) LEN(2) /* journaltype */
MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(EXIT))
CHGVAR &RC VALUE(1) /* set return code to +
allow request unless rejected by program */
CHGVAR &USER VALUE(%SST(&STRU 1 10)) /*user */
CHGVAR &APP2 VALUE(%SST(&STRU 21 10)) /*funct*/
CHGVAR &TFOBJ VALUE(%SST(&STRU 31 10)) /*file */
CHGVAR &TFLIB VALUE(%SST(&STRU 41 10)) /*libr */
CHGVAR &TFMBR VALUE(%SST(&STRU 51 10)) /*mbr */
CHGVAR &TFFMT VALUE(%SST(&STRU 61 10)) /*fmt */
LOG: CHGVAR VAR(&TYPE) VALUE(X *CAT &RC)
SNDJRNE JRN(QAUDJRN) TYPE(&TYPE) ENTDTA(&STRU)
EXIT:ENDPGM
QIBM_QZDA_NDB1(程序2)
PGM PARM(&RC &REQUEST)
DCL VAR(&RC) TYPE(*CHAR) LEN(1) VALUE(1)
DCL VAR(&REQUEST) TYPE(*CHAR) LEN(700)
DCL VAR(&TYPE) TYPE(*CHAR) LEN(2)
DCL &X1800 *CHAR 4 VALUE(X00001800) /*create database file*/
DCL &X1801 *CHAR 4 VALUE(X00001801) /*create source file*/
DCL &X1802 *CHAR 4 VALUE(X00001802) /*add member */
DCL &X1803 *CHAR 4 VALUE(X00001803) /*clear member */
DCL &X1804 *CHAR 4 VALUE(X00001804) /*delete member */
DCL &X1805 *CHAR 4 VALUE(X00001805) /*file override */
DCL &X1806 *CHAR 4 VALUE(X00001806) /*delete file override*/
DCL &X1807 *CHAR 4 VALUE(X00001807) /*create save file */
DCL &X1808 *CHAR 4 VALUE(X00001808) /*clear save file */
DCL &X1809 *CHAR 4 VALUE(X00001809) /*delete file */
/* OPTIMIZED DATABASE SERVER DECLARES */
DCL &DBFMT *CHAR 8 /* format name */
DCL &DBFID *CHAR 4 /* function identifier */
/* FOLLOWING PARAMETERS ADDITIONAL FOR FORMAT ZDAD0100 */
DCL &DBFILE *CHAR 128 /* file name */
DCL &DBLIB *CHAR 10 /* library name */
DCL &DBMBR *CHAR 10 /* member name */
DCL &DBAUT *CHAR 10 /* authority to file */
DCL &DBBFIL *CHAR 128 /* based on file name */
DCL &DBBLIB *CHAR 10 /* based on library name */
DCL &DBOFIL *CHAR 10 /* override file name */
DCL &DBOLIB *CHAR 10 /* override library name */
DCL &DBOMBR *CHAR 10 /* override member name */
MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(EXIT))
/* allow request unless rejected by program */
CHGVAR VAR(&RC) VALUE(1)
/* set variables from request description */
CHGVAR VAR(&DBFMT) VALUE(%SST(&REQUEST 21 8))
CHGVAR VAR(&DBLIB) VALUE(%SST(&REQUEST 161 10))
CHGVAR VAR(&DBMBR) VALUE(%SST(&REQUEST 171 10))
CHGVAR VAR(&DBOFIL) VALUE(%SST(&REQUEST 329 10))
CHGVAR VAR(&DBOLIB) VALUE(%SST(&REQUEST 339 10))
CHGVAR VAR(&DBOMBR) VALUE(%SST(&REQUEST 349 10))
LOG:
CHGVAR VAR(&TYPE) VALUE(Z *CAT &RC)
SNDJRNE JRN(QAUDJRN) TYPE(&TYPE) ENTDTA(&REQUEST)
EXIT: ENDPGM
☆具体实施方法:
1、将上述2个程序编译,Owner改为QSECOFR,并使用继承权限。
2、CHGNETA PCSACC(*REGFAC)。
3、使用ADDEXITPGM命令把程序添加到相应的Exit point。
4、可以给这2个程序设置一个权限列表,凡是在权限列表内有权限执行此程序的人才可以利用ODBC下传数据
5、用DSPJRN JRN(QAUDJRN) ENTTYP(Z1)就可以查看下传的数据情况了。
6、可以用WRKREGINF查看Exit program设置情况。
注:需要有QAUDJRN,如没有需先WRKSYSVAL修改系统值QAUDCTL、QAUDLVL,然后CRTJRN创建QAUDJRN和创建QAUDJRN。