【问题标题】:Azure CosmosDB Spark OLTP Connector with Managed Identity具有托管标识的 Azure CosmosDB Spark OLTP 连接器
【发布时间】:2022-07-14 23:23:58
【问题描述】:

我们正在尝试将一些数据从 DataLake 摄取到 Azure Cosmos DB,Spark OLTP Connector 似乎是最容易使用的。

但是由于公司的政策,我们不应该使用主密钥,我们通常对应用程序使用托管标识。我看到 Cosmos DB Java 客户端构建器具有 \'TokenCredential\' 选项,示例代码如下:

    CosmosAsyncClient client = CosmosClientBuilder
     .credential(new DefaultAzureCredentialBuilder().build())
     .buildAsyncClient();

无论如何设置连接器以使用与托管身份相同的身份验证机制?

    标签: apache-spark azure-cosmosdb azure-cosmosdb-sqlapi


    【解决方案1】:

    我看到 Cosmos DB Java 客户端构建器具有带有示例代码的“TokenCredential”选项

    在CosmosAsyncClient 中,您还必须提及maker key。没有这种方法可以使用托管身份。

    我们不应该使用主密钥,我们通常对应用程序使用托管标识。

    如你所愿将数据从 Data Lake 传输到 Cosmos DB和Managed Identities您可以在 Azure 数据工厂中使用 Copy Data Tool。为 cosmos db 创建 Linked service 并在身份验证类型中选择托管身份系统或用户.

    你可以参考这个So Thread经过@KarthikBhyresh-MT了解更多关于复制数据工具的信息。

    【讨论】:

      【解决方案2】:

      目前,Spark 连接器不支持 MSI。我看到您在包含源代码的 repo 上正确创建了问题:https://github.com/Azure/azure-sdk-for-java/issues/29958

      这肯定会用于跟踪目的,或者至少链接到跟踪该区域进度的工作项。该功能将在未来推出,但目前没有 ETA。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-08-03
        • 2022-06-14
        • 2021-07-26
        • 1970-01-01
        • 2019-03-15
        • 2022-11-11
        • 2021-01-28
        • 2020-12-30
        相关资源
        最近更新 更多