Heim Datenbank MySQL-Tutorial 保护与IBM Informix JDBC、ODBC和ESQL/C驱动程序的连接

保护与IBM Informix JDBC、ODBC和ESQL/C驱动程序的连接

Jun 07, 2016 pm 05:54 PM
ibm jdbc odbc

为数据源使用连接池可能会导致基于角色的安全性破坏。IBM Informix 服务器中对可信连接和可信上下文的支持能够灵活地重用连接,向中间层授予受控的权限,以及在三层应用程序中加强用户责任性而不损害其数据库安全性,所有这些都改善了系统性能。

本文将讨论可信连接和可信上下文,展示如何使用 JDBC、ESQL/C 和 ODBC 驱动程序管理可信上下文。

在传统的三层应用程序模型中,您只有在成功授权之后才能与交互,检查和审计由中间层执行。即使有多个用户登录到中间层,中间层也仅使用单个用户 ID 来访问,而且会在所有资源上授予权限。此模型无法获取尝试访问数据库的实际用户身份,以进行访问控制。另外,如果中间层用户 ID 被盗用,可能导致严重的安全威胁。

为了在中间层服务器与数据库服务器之间实现惟一的交互组,Informix 中引入了可信数据库连接 的概念。可信上下文 是在数据库服务器上创建的一种数据库安全对象,它定义了一个可信数据库连接的属性。在连接属性与 Informix 服务器上定义的惟一可信上下文属性匹配时,就会建立可信连接。中间层服务器建立可信连接后,可重用同一个物理连接,而无需在数据库服务器上对最终用户重新进行身份验证。

从应用程序开发人员的角度讲,可信连接的重要性离不开这样一个事实:单个数据库连接可与其他用户共享,同时维护每一个尝试访问数据库的应用程序或用户的 ID。对用户权限的控制有助于适当地授予或限制用户对敏感资源的访问,进而提高系统安全性和用户责任性。

使用 Informix 客户端驱动程序管理可信上下文

在本节中,您将学习如何创建、修改和丢弃一个可信上下文。要创建和管理可信上下文,您的应用程序必须通过 TCP/IP 连接 Informix 服务器。以下 Informix 客户端驱动程序通过公开后面几节中将探讨的相关 API 来支持可信连接。

  • IBM Informix JDBC 驱动程序
  • IBM Informix ODBC 驱动程序
  • IBM Informix ESQL/C 驱动程序

建立可信连接

使用 JDBC 驱动程序

要在 JDBC 应用程序中请求一个可信连接,可将 TRUSTED_CONTEXT = TRUE; 属性包含在数据库 URL 中,如清单 1 中所示。

清单 1. 使用 JDBC 驱动程序连接

				
  jdbc:informix-sqli://hostname:portnumber/database_name:INFORMIXSERVER = server_name;
  TRUSTED_CONTEXT = TRUE;
Nach dem Login kopieren

使用 ODBC 驱动程序

以下是通过 ODBC 建立可信连接的两种方式,一个示例如清单 2 中所示。

使用 SQLSetConnectAttr() API:
SQLSetConnectAttr(hdbc1,SQL_ATTR_USE_TRUSTED_CONTEXT,SQL_TRUE,SQL_IS_INTEGER));

使用连接字符串参数:
TRUSTEDCONTEXT=1; 或 TCTX=1;

清单 2. ODBC 驱动程序的样例连接字符串

"Server=ol_informix_1170;Host=9.124.123.54;Service=ol_informix_1170;Protocol=onsoctcp; Database=stores7;TRUSTEDCONTEXT=1;"

使用 ESQL/C 驱动程序

在 ESQL/C 中,可信连接使用 TRUSTED 关键字和连接语句,以及用户名和密码来建立,如清单 3 中所示。

清单 3. 使用 ESQL/C 驱动程序连接

				
  EXEC SQL CONNECT TO 'database_name' USER 'informix' USING :infx_passwd TRUSTED;
Nach dem Login kopieren

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Nach Java8 (291) ist TLS1.1 deaktiviert und JDBC kann keine Verbindung zu SqlServer2008 über SSL herstellen. Wie kann das Problem gelöst werden? Nach Java8 (291) ist TLS1.1 deaktiviert und JDBC kann keine Verbindung zu SqlServer2008 über SSL herstellen. Wie kann das Problem gelöst werden? May 16, 2023 pm 11:55 PM

Nach Java8-291 ist TLS1.1 deaktiviert, sodass JDBC keine Verbindung zu SqlServer2008 über SSL herstellen kann. Was soll ich tun? es ist jre, gehen Sie zu {JAVA_HOME}/jre/ In lib/security, zum Beispiel????C:\ProgramFiles\Java\jre1.8.0_301\lib\security Wenn es sich um die grüne, installationsfreie tragbare Version von Eclipse handelt , suchen Sie im Installationsordner nach java.security, z. B.????xxx\plugins \org

Java-Fehler: JDBC-Fehler, wie man sie löst und vermeidet Java-Fehler: JDBC-Fehler, wie man sie löst und vermeidet Jun 24, 2023 pm 02:40 PM

Durch die weit verbreitete Anwendung von Java treten häufig JDBC-Fehler auf, wenn Java-Programme eine Verbindung zu Datenbanken herstellen. JDBC (JavaDatabaseConnectivity) ist eine Programmierschnittstelle in Java, die zum Herstellen einer Verbindung zu einer Datenbank verwendet wird. Daher ist ein JDBC-Fehler ein Fehler, der auftritt, wenn ein Java-Programm mit einer Datenbank interagiert. Hier sind einige der häufigsten JDBC-Fehler und wie man sie löst und vermeidet. ClassNotFoundException Dies ist die häufigste JDBC-Ausnahme

So installieren Sie ODBC unter Linux, um eine Verbindung zur SQLServer-Datenbank herzustellen So installieren Sie ODBC unter Linux, um eine Verbindung zur SQLServer-Datenbank herzustellen May 16, 2023 pm 12:19 PM

Betriebssystem: Centos7.21. Laden Sie das ODBC-Installationspaket unixODBC-2.3.9.tar.gzfreetds-1.3.9.tar.gz2 herunter. Schritt 1: Laden Sie zwei Installationspakete auf den Server hoch. Installieren Sie dies zuerst und installieren Sie dann freetds. Hinweis: Wenn die Installationsreihenfolge hier inkonsistent ist, wird die Treiberdatei libtdsodbc.so nicht generiert (sehr wichtig). 2.1 Das Betriebssystem installiert zuerst gcc: yuminstallgcc2.2 und dann odbctar-xvfunixODBC -2.3.9.tar .gzcdunixODBC-2.3.9./conf

So implementieren Sie JDBC-Batch-Insert in Java So implementieren Sie JDBC-Batch-Insert in Java May 18, 2023 am 10:02 AM

1. Erklären Sie, dass in JDBC die Methode „executeBatch“ mehrere DML-Anweisungen stapelweise ausführen kann und die Effizienz viel höher ist als die einzelne Ausführung von „executeUpdate“. Wie implementiert man die Batch-Ausführung in MySQL und Oracle? Dieser Artikel stellt Ihnen das Prinzip dahinter vor. 2. Einführung in das Experiment Dieses Experiment wird in den folgenden drei Schritten durchgeführt: a. Zeichnen Sie den Zeitaufwand für die Stapelausführung und Einzelausführung von JDBC in Oracle auf. c. Zeichnen Sie die Batch-Ausführung und die Einzelausführung von Oracleplsql auf. Die ausführungsaufwändigen Java- und Datenbankversionen sind wie folgt: Java17, Mysql8, Oracle

Häufige Probleme, die in Java bei der Verwendung der JDBC-API zum Herstellen einer Verbindung zur MySQL-Datenbank auftreten Häufige Probleme, die in Java bei der Verwendung der JDBC-API zum Herstellen einer Verbindung zur MySQL-Datenbank auftreten Jun 10, 2023 am 09:55 AM

In den letzten Jahren hat sich die Anwendung der Java-Sprache immer weiter verbreitet, und JDBCAPI ist eine kreative Methode für Java-Anwendungen zur Interaktion mit Datenbanken. JDBC basiert auf einem offenen Datenbankverbindungsstandard namens ODBC, der es Java-Anwendungen ermöglicht, eine Verbindung zu beliebigen Datenbanken herzustellen Datenbank. Managementsystem (DBMS). Unter ihnen ist MySQL ein beliebtes Datenbankverwaltungssystem. Allerdings werden Entwickler auch auf einige häufige Probleme stoßen, wenn sie eine Verbindung zu MySQL-Datenbanken herstellen. Dieser Artikel zielt darauf ab, die JDBCAPI-Verbindung M vorzustellen

So analysieren Sie die JDBC-Programmierung in MySQL So analysieren Sie die JDBC-Programmierung in MySQL May 30, 2023 pm 10:19 PM

1. Voraussetzungen für die Datenbankprogrammierung Programmiersprachen wie Java, C, C++, Python und andere Datenbanken wie Oracle, MySQL, SQLServer und andere Datenbanktreiberpakete: Verschiedene Datenbanken stellen beispielsweise unterschiedliche Datenbanktreiberpakete bereit, die verschiedenen Programmiersprachen entsprechen : MySQL stellt das Java-Treiberpaket mysql-connector-java zur Verfügung, das für den Betrieb von MySQL auf Java-Basis erforderlich ist. Ebenso ist für den Betrieb einer auf Java basierenden Oracle-Datenbank das Datenbanktreiberpaket ojdbc von Oracle erforderlich. 2. Java-Datenbankprogrammierung: JDBCJDBC, JavaDatabaseConnectiv

Mar 18, 2024 am 09:40 AM

IBM kündigte plötzlich eine neue Entlassungsrunde an! Der Chief Communications Officer von IBM gab die Neuigkeiten auf der letzten siebenminütigen Mitarbeiterbesprechung bekannt. Diesmal liegt der Fokus vor allem auf den Marketing- und Kommunikationsabteilungen. Obwohl IBM keine formelle Stellungnahme zum Ausmaß der Entlassungen abgegeben hat, kündigte das Unternehmen erst im Januar dieses Jahres an, 3.400 Mitarbeiter zu entlassen. Der CEO des Unternehmens, Arvind Krishna, sagte zuvor, dass das Unternehmen in den nächsten fünf Jahren 8.000 Arbeitsplätze durch künstliche Intelligenz ersetzen werde. Diese völlig plötzliche Operation hat die Mitarbeiter direkt verwirrt ... Haben diese 8.000 Menschen schon vor langer Zeit damit begonnen, Mitarbeiter zu entlassen? Quelle: One Acre Three Points Laut Statistiken relevanter Websites haben in diesem Jahr bisher etwa 204 Technologieunternehmen Mitarbeiter entlassen, fast 50.000 Menschen. Darunter Google-Mutterkonzern Alphabet, Amazon

IBM stellt die neueste Tool-Suite vor, um die Entwicklung künstlicher Intelligenz der nächsten Generation auf Mainframe-Plattformen zu verlagern IBM stellt die neueste Tool-Suite vor, um die Entwicklung künstlicher Intelligenz der nächsten Generation auf Mainframe-Plattformen zu verlagern Sep 28, 2023 pm 07:37 PM

IBM hat kürzlich eine neue Reihe von Produkten angekündigt, die auf den kürzlich eingeführten generativen KI-Codierungsfunktionen für Mainframe-Entwickler aufbauen, um die Ausführung künstlicher Intelligenz auf ihrer älteren Rechenzentrumshardware zu erleichtern. IBM sagte in einem Update für IBMZ, dass es Kunden dabei helfen soll, ihre Geschäftsergebnisse zu verbessern Durch die Implementierung von Geschäfts-KI in mehreren Branchen und Anwendungsfällen umfasst es eine neue Reihe von Entwickler-Toolkits, die die am weitesten verbreiteten KI-Frameworks und die Programmiersprache Python unterstützen, Verbesserungen des maschinellen Lernens für z/OS und Leistungsverbesserungen im IBMz/OS-Mainframe-Betriebssystem . IBM sagte, dass diese Aktualisierungen es Kunden ermöglichen werden, die Genauigkeit der Richtlinienberatung zu verbessern, die Zuverlässigkeit und Aktualität der Anti-Geldwäsche-Kontrollen zu verbessern und zu reduzieren

See all articles