Oracle Database Real Application Security

Oracle Database Real Application Security ist ein Datenbankautorisierungsmodell, das deklarative Sicherheits-Policys unterstützt, End-to-End-Sicherheit für Multitier-Anwendungen ermöglicht, eine integrierte Lösung zur Sicherung von Datenbank- und Anwendungsressourcen bietet und die Sicherheitsarchitektur von Oracle Database vorantreibt, um vorhandene und neue Anforderungen von Anwendungen zu erfüllen, die für das Internet entwickelt wurden.

Siehe Introducing Oracle Database Real Application Security.

Real Application Security funktioniert in Autonomous Database genauso wie in einer On-Premise-Oracle Database. Sie müssen jedoch die folgenden ADMIN-Aufgaben ausführen, bevor Sie Real Application Security in Autonomous Database verwenden:

  • Um Benutzer/Rollen mit Real Application Security zu erstellen, benötigen Sie die Systemberechtigung PROVISION. Führen Sie als ADMIN-Benutzer den folgenden Befehl aus, um einem Datenbankbenutzer diese Berechtigung zu erteilen:

    SQL> EXEC XS_ADMIN_CLOUD_UTIL.GRANT_SYSTEM_PRIVILEGE('PROVISION','DB_USER');

    In diesem Beispiel ist DB_USER ein Datenbankbenutzer.

    Wenn Sie diesen Befehl in Autonomous Database ausführen, wird der folgende On-Premise-Datenbankbefehl ersetzt (beachten Sie, dass _CLOUD_ nicht im folgenden Packagenamen enthalten ist):

    SQL> EXEC SYS.XS_ADMIN_UTIL.GRANT_SYSTEM_PRIVILEGE('PROVISION', 'DB_USER', XS_ADMIN_UTIL.PTYPE_XS);

    Weitere Informationen finden Sie unter General Procedures for Creating Application User Accounts.

  • Um Real Application Security Data Controls zu erstellen, benötigen Sie die Berechtigung ADMIN_ANY_SEC_POLICY. Führen Sie als ADMIN-Benutzer den folgenden Befehl aus, um diese Berechtigung zu erteilen:

    EXEC XS_ADMIN_CLOUD_UTIL.GRANT_SYSTEM_PRIVILEGE('ADMIN_ANY_SEC_POLICY','DB_USER');

    In diesem Beispiel ist DB_USER ein Datenbankbenutzer.

    Wenn Sie diesen Befehl in Autonomous Database ausführen, wird der folgende On-Premise-Datenbankbefehl ersetzt (beachten Sie, dass _CLOUD_ nicht im folgenden Packagenamen enthalten ist):

    SQL> EXEC SYS.XS_ADMIN_UTIL.GRANT_SYSTEM_PRIVILEGE('ADMIN_ANY_SEC_POLICY','DB_USER');

    Weitere Informationen finden Sie unter Rollen und Anwendungsbenutzer erstellen.