2014年10月23日木曜日

[Oracle] 10g→11gの移行後、UTL_SMTPパッケージでのメール送信時にORA-24247エラー

Oracle11gの環境に、UTL_SMTPパッケージを使用してメール送信する
バッチを移行、実行したところORA-24247エラーが出てメールが送信できない
現象が発生しました。


調べてみたところ、セキュリティ強化の一環でアクセス制御リスト(ACL)に
スキーマとSMTPサーバを登録してあげる必要があるそうで。


そんなわけで、登録用のPL/SQLを覚書。

BEGIN
  DBMS_NETWORK_ACL_ADMIN.CREATE_ACL(
    acl         => 'hoge.xml',       --名前(任意の名前.xml)
    description => 'description', --説明(なんでもよい)
    principal   => 'hoge',           --スキーマ
    is_grant    => TRUE,
    privilege   => 'connect'
  );

  DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(
    acl         => 'hoge.xml',       --名前(任意の名前.xml)
    principal   => 'hoge',           --スキーマ
    is_grant    => TRUE,
    privilege   => 'resolve'
  );

  DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL(
    acl         => 'hoge.xml',                       --名前(任意の名前.xml)
    host        => 'HostName or IP Address' --SMTPサーバ
  );

END;
/

0 件のコメント:

コメントを投稿