使用 EF Core 的 ORACLE SET ROLE

ORACLE SET ROLE with EF Core

使用Oracle,我们有一个非常重要的Oracle连接安全工具就是

设置角色角色通过密码

识别

注意这里不是Identity中使用的导航的Add Role,而是ORACLE连接的ROLE

我很难找到如何将此命令与 EntityFrameworkCore 一起使用。

有人知道怎么做吗?

或者至少如何获得 Oracle 连接,以便我可以 运行 明确地执行命令。

像这样尝试 .FromSql。

Executing Raw SQL Queries

Or at least how to get the Oracle connection so that I can run the command explicitly.

您可以随时“下拉”至 ADO.NET,如下所示:

var con = db.Database.GetDbConnection();
con.Open();
var cmd = con.CreateCommand();
cmd.CommandText = "SET ROLE role IDENTIFIED BY password";
cmd.ExecuteNonQuery();

con.Open() 之后,连接将在 DbContext 的生命周期内保持打开状态。在处理 DbContext 并将连接返回到连接池之前,您可能需要取消设置角色。