• 利用PROFILE管理口令和资源


    利用PROFILE管理口令和资源

    首先建立PROFILE
    CREATE PROFILE lock_act LIMIT
    FAILED_LOGIN_ATTEMPTS 3 PASSWORD_LOCK_TIME 2;
    分配用户TEST PROFILE
    ALTER USER TEST PROFILE LOCK_ACT;

    解锁帐户
    ALTER USER TEST ACCOUNT UNLOCK;

    CREATE PROFILE PLT LIMIT
    PASSWORD_LIFE_TIME 10 PASSWORD_GRACE_TIME 2;
    ----PASSWORD_RESUME-TIME 10 PASSWORD_RESUME_MAX UNLIMITED;

    ALTER USER TEST PROFILE PLT;
    --------更改后前面的 profile lock_act 失效!!!

    使用PROFILE管理口令
    包括以下几个选项
    FAILED_LOGIN_ATTEMPTS
    PASSWORD_GRACE_TIME
    PASSWORD_LIFE_TIME
    PASSWORD_LOCK_TIME
    PASSWORD_REUSE_MAX
    PASSWORD_REUSE_TIME
    PASSWORD_VERIFY_FUNCTION
    同时系统提供了个默认校验函数 VERIFY_FUNCTION   oracle_home%\rdbms\admin\utlpwdmg.sql
    PASSWORD_VERIFY_FUNCTION 只要有以下限制
    1,口令不能少于4个字符 2,口令不能与用户名相同 3 口令必须包含一个字符、一个数字、一个特殊符。
    也可以自定义口令校验函数
    利用PROFILE管理用户资源
    -----首先要激活资源管理限制
    ALTER SYSTEM SET RESOURCE_LIMIT=TRUE SCOPE=BOTH;
    ----七个回话限制
    CPU_PER_SESSION
    SESSION_PER_USER
    CONNECT_TIME
    LDLE_TIME
    LOGICAL_READS_PER_SESSION
    PRIVATE_SGA(只适合Multi-Thread Server)
    COMPOSITE_LIMIT

    CREATE PROFILE session_limit LIMIT
    CPU_PER_SESSION 5000 SESSION_PER_USER 3
    CONNECT_TIME 90 LDLE_TIME 15
    LOGICAL_READS_PER_SESSION UNLIMITED PRIVATE_SGA UNLIMITED
    COMPOSITE_LIMIT DEFAULT

    ALTER USER TEST PROFILE session_limit;
    ----两个调用限制
    CPU_PER_CALL
    LOGICAL_READS_PER_CALL

    -----更改,删除PROFILE
    ALTER PROFILE session_limit LIMIT
    ...........;
    DROP PROFILE PLT [CASCADE];

    显示用户profile等信息
    SELECT DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE,PROFILE FROM DBA_USER
    WHERE USERNAME='TEST';
    显示PROFILE的口令,资源限制选项。
    SELECT PROFILE,LIMIT,PROFILE FROM DBA_FROFILES WHERE PROFILE='session_limit';
    -----------共16个口令,资源选项。
    COMPOSITE_LIMIT
    CONNECT_TIME
    CPU_PER_CALL
    CPU_PER_SESSION
    FAILED_LOGIN_ATTEMPTS
    IDLE_TIME
    LOGICAL_READS_PER_CALL
    LOGICAL_READS_PER_SESSION
    PASSWORD_GRACE_TIME
    PASSWORD_LIFE_TIME
    PASSWORD_LOCK_TIME
    PASSWORD_REUSE_MAX
    PASSWORD_REUSE_TIME
    PASSWORD_VERIFY_FUNCTION
    PRIVATE_SGA
    SESSIONS_PER_USER

    以下是创建PROFILE一例
    Note: In order to enforce kernel limits, resource_limit must be set to true
    create profile
       test_profile1
    limit
       sessions_per_user                 2 --
       cpu_per_session             10000 -- hunderth of seconds
       cpu_per_call                   100   -- hunderth of seconds
       connect_time                   10 -- minutes
       idle_time                      5 -- minutes
       logical_reads_per_session default -- db blocks
       logical_reads_per_call    default -- db blocks
       composite_limit          default --
       private_sga                   20M --
       failed_login_attempts          3 --
       password_life_time             10 -- days
       password_reuse_time              12 --
       password_reuse_max        unlimited --
       password_lock_time       default -- days
       password_grace_time             4 -- days
       password_verify_function    null;

    以上参数基本上都测试过。在测试IDLE_TIME这项(闲置时间)时,出现过如下问题
    SQL> conn outdo@villa
    请输入口令:
    ERROR:
    ORA-02396: 超出最大空闲时间,请重新连接


    ERROR:
    ORA-24315: 非法的属性类型

    SQL> conn sys@lab
    请输入口令:
    ERROR:
    ORA-24315: 非法的属性类型

    SQL> conn sys@lab as sysdba
    请输入口令:
    ERROR:
    ORA-24313: 用户已获得证明
    超过最大空闲时候的时候。其他用户再连接也不成功。导致这个问题的原因还不很清楚。
  • 相关阅读:
    使用DBUtils获取Blob类型数据
    关于 JupyterLab 与 Pandas 资源整理
    关于 Conda 在 MacOS Catalina 环境变量问题
    推荐一个符合 OIDC 规范的 JAVA 客户端
    关于 Chrome 的 Kiosk 模式
    Kubernetes 中的服务发现与负载均衡
    Prometheus 监控领域最锋利的“瑞士军刀”
    CD 基金会、Jenkins、Jenkins X、Spinnaker 和 Tekton 的常问问题
    Installing on Kubernetes with NATS Operator
    升级 ASP.NET Core 3.0 设置 JSON 返回 PascalCase 格式与 SignalR 问题
  • 原文地址:https://www.cnblogs.com/danghuijian/p/4400801.html
Copyright © 2020-2023  润新知