Archives for 2006

破解 Oracle E-Business Suite 用户密码

APPS.FND_WEB_SEC 管理着跟用户授权相关的数据,比如密码。 这个包里面有加密和解密函数: — Function to encrypt a string using a specified key. — 4257466 Changed this function to call the new overloaded version. — This is backwards compatible because null is returned if the profile — does not exist. function encrypt(key in varchar2, value in varchar2) return varchar2 is begin — bug 4676957 Renamed [...]

限制Listener的网络链接

通过在sqlnet.ora设置简单参数来限制未经授权的链接。 TCP.VALIDNODE_CHECKING = yes TCP.INVITED_NODES = (client1,client2,client3,dbnode) tcp.validnode_checking 表示需要检查node授权。 tcp.invited_nodes 表示经过授权的node,必须包含db所在的node。sqlnet.ora 中总共有4个相关的参数: tcp.validnode_checking tcp.invited_nodes tcp.excluded_nodes 需要排除的未经授权的node tcp.nodelay 修改TCP/IP的包传送方式,关闭nagle算法。 具体参考RFC896: http://www.faqs.org/rfcs/rfc896.html 附上sqlnet.ora的参数列表: bequeath_detach disable_oob log_directory_client log_directory_server log_file_client log_file_server names.connect_timeout names.dce.prefix names.default_domain names.directory_path names.initial_retry_timeout names.max_open_connections names.message_pool_start_size names.nis.meta_map names.preferred_servers names.request_retries namesctl.echo namesctl.internal_encrypt_password namesctl.internal_use namesctl.no_initial_server namesctl.noconfirm namesctl.server_password namesctl.trace_directory namesctl.trace_file namesctl.trace_level namesctl.trace_unique sqlnet.authentication_gssapi_service sqlnet.authentication_kerberos5_service sqlnet.authentication_services sqlnet.client_registration sqlnet.crypto_checksum_client sqlnet.crypto_checksum_server sqlnet.crypto_checksum_type_client sqlnet.crypto_checksum_type_server [...]

Trace分析工具: SwingBench Trace Analyzer

Oracle常用的Trace分析工具是tkprof,对于官方的工具我一项支持并喜欢使用。 如果你遇到以下情况: 本地没有安装Oracle数据库,没有tkprof程序。 你需要登录服务器去抓取trace文件。 你厌倦在putty中麻烦的指令。 不妨尝试一下SwingBench Trace Analyzer。 这是一款用Java编写的有GUI的Trace Analyzer。它的图形界面画的非常漂亮而简便,并且令人赏心悦目 事实上,作者正是对tkprof有点小意见才写了这个软件: Now I know TKProf does a fine job of this but I’ve never been really comfortable with having to continually rerun TKProf to change the ordering and filter out classes of statements. This came to a head just recently after looking through a big [...]

PROFILE中的口令参数

今天看到了下AD中的PORFILE,其中的密码策略是这样的: SQL> SELECT * 2 FROM dba_profiles 3 WHERE profile != ‘DEFAULT’ 4 AND resource_name LIKE ‘PASSWORD%’; PROFILE RESOURCE_NAME RESOURCE LIMIT —————————— ——————————– ——– ——- AD_PATCH_MONITOR_PROFILE PASSWORD_LIFE_TIME PASSWORD 60 AD_PATCH_MONITOR_PROFILE PASSWORD_REUSE_TIME PASSWORD DEFAULT AD_PATCH_MONITOR_PROFILE PASSWORD_REUSE_MAX PASSWORD DEFAULT AD_PATCH_MONITOR_PROFILE PASSWORD_VERIFY_FUNCTION PASSWORD DEFAULT AD_PATCH_MONITOR_PROFILE PASSWORD_LOCK_TIME PASSWORD .0416 AD_PATCH_MONITOR_PROFILE PASSWORD_GRACE_TIME PASSWORD 10 已选择6行。 这几个参数的含义分别是: PASSWORD_LIFE_TIME: 某个口令的有效时间。 PASSWORD_REUSE_TIME: 指口令在多少天内可被重用。 [...]

PCTFREE和PCTUSED

PCTFREE 和PCTUSED 用来控制一个block中row的插入和更新,这两个参数在create/alter table或cluster的时候指定。不同的值将影响数据插入或更新时的效率。 语法: SQL> create table test (id number) 2 pctused 80 3 pctfree 20; 表已创建。 PCTFREE用来控制表的数据段中各block已有row的用来更新的空间。比如PCTFREE为20,则block将保留20%的空间用于更新操作 (update)。我们在insert新的row的时候将占用一定空间,如果该空间大于80%,则会申请新的block来存储。 PCTUSED用来控制一个block中可用于插入新数据的可用空间。比如PCTUSED为60,则表示该block中只有60%的空间可用于插入新数据。只有当已用空间(used space)下降到59%或以下时,才允许在该block中插入新的行。 下面这张图可以很清楚的表达出来: Update操作可以减少空闲空间,当小于PCTFREE时,该block不再允许插入新行。