sql-server - 使用 Keycloak 的 Azure Active Directory 服务主体身份验证配置 SQL Server

标签 sql-server azure azure-active-directory keycloak azure-service-principal

我有一个托管在 Azure 上的 SQL Server 数据库。它可以使用 Azure Active Directory 服务主体进行访问。我正在尝试在 AKS 上部署 keycloak (16.1.0) 并配置前面提到的数据库。我有一个可以使用 Azure Active Directory 服务主体连接到该 SQL Server 的应用程序。但使用keycloak,就没有运气了。

我已使用 JDBC_PARAMS="authentication=ActiveDirectoryServicePrincipal" 在 keycloak 中配置数据库属性。

谢谢

最佳答案

在 AKS 上部署 keycloak

请关注此doc :

使用 Azure Active Directory 服务主体连接到该 SQL Server

Active Directory 服务主体身份验证模式,客户端应用程序可以通过提供服务主体身份的客户端 ID 和 secret 来连接到 Azure SQL 数据源。服务主体身份验证涉及:

  1. 使用 secret 设置应用注册。

  2. 向 Azure SQL 数据库实例中的应用授予权限。

  3. 使用正确的凭据进行连接。

授予对 Azure SQL 数据库的访问权限

我们需要让您的应用程序访问 Azure SQL 数据库服务。这是通过 API 权限完成的。

Reference 1

添加客户端身份验证

为了验证其 Active Directory 表示形式,请切换到证书并创建新的客户端 key 。

以下示例演示如何使用 Active Directory 服务主体身份验证

Reference 2

以下示例演示如何使用 Active Directory 服务主体身份验证。

// Use your own server, database, app ID, and secret.
string ConnectionString = @"Server=demo.database.windows.net; Authentication=Active Directory Service Principal; Database=testdb; User Id=App Id; Password=secret";

using (SqlConnection conn = new SqlConnection(ConnectionString)) {
    conn.Open();
}

引用此link .

关于sql-server - 使用 Keycloak 的 Azure Active Directory 服务主体身份验证配置 SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71608173/

相关文章:

python - Azure Flask Web 应用程序中的 Postgres

node.js - 如何使用 Azure AD 验证 VueJS 应用程序?

node.js - nodejs 在 azure 事件目录中查找用户

sql-server - Localdb 的配置为 "MultipleActiveResultSets = True"

sql - SQL Server 中的 SYSNAME 数据类型是什么?

c# - Entity Framework 6.0 原始 SQL 以查看模型

使用 Orchard cms 进行 Azure 扩展

node.js - Visual Studio代码: Deploy to azure appears to work but no files seem to transfer

azure-active-directory - wso2 api 管理器,带有 azure ad 作为 OAuth 提供者

sql-server - Azure Maps 和 SQL AT TIME ZONE 夏威夷时区不兼容