如果我所有的资源都在同一订阅中,是否真正使用了用户分配的托管身份?

问题描述 投票:0回答:1

我正在尝试在特定的订阅中创建HDInsight群集。现在,我选择的默认存储类型为ADLS Gen2类型,并且该存储实例存在于同一订阅中(无论如何,此处的UI只会列出同一订阅中的ADLS Gen2存储帐户)。然后,如您在下面的屏幕快照中所见,UI还将要求用户分配的服务标识作为必填字段。我在这里不了解这种身份的真正需要。由于群集和ADLS Gen2将在同一订阅中,因此群集无论如何都将能够访问存储-因为发生的方式是在群集部署期间,由于存储密钥是动态存储在密钥中的,因此它们是动态获取的。相同的订阅。这就是存储连接的方式。因此,如果仍然发生这种情况,那么指定用户分配的托管身份的需求是什么?我还验证了仅当我们选择存储类型为ADLS Gen2而不选择ADLS Gen1和Azure存储时,才显示输入用户分配的受管身份的选项。 ADLS Gen2具有Blob以及目录接口。但是这些只是接口,在它下面总有一个具有访问密钥的Blob存储。事实上,ADLS Gen1没有访问密钥之类的东西,因为它仅提供目录接口,但是我们仍然不需要为用户指定托管身份那,所以我想知道为什么对于ADLS Gen2,它会询问是否所有资源都在同一订阅中。

enter image description here

azure-active-directory azure-data-lake hdinsight azure-managed-identity azure-data-lake-gen2
1个回答
0
投票

常见挑战:构建云应用程序时,如何管理代码中的凭据以对云服务进行身份验证。确保凭据安全是一项重要任务。理想情况下,凭据永远不会出现在开发人员工作站上,也不会签入源代码管理。 Azure密钥保管库提供了一种安全存储凭据,机密和其他密钥的方法,但是您的代码必须通过密钥保管库进行身份验证才能检索它们。

Azure Active Directory(Azure AD)中Azure资源的托管身份功能解决了此问题。该功能在Azure AD中为Azure服务提供自动管理的身份。您可以使用该身份进行身份验证,以支持任何支持Azure AD身份验证的服务,包括Key Vault,而无需在代码中添加任何凭据。

托管身份是在Azure Active Directory(Azure AD)中注册的身份,其凭据由Azure管理。使用托管身份,您无需在Azure AD中注册服务主体或维护证书等凭据。

可在Azure HDInsight中使用托管身份,以使您的群集访问Azure AD域服务,访问Azure密钥保险库或访问Azure Data Lake Storage Gen2中的文件。

将用户分配的托管身份作为独立的Azure资源创建。通过创建过程,Azure在Azure AD租户中创建一个使用中的订阅信任的身份。创建身份后,可以将身份分配给一个或多个Azure服务实例。用户分配的身份的生命周期与为其分配到的Azure服务实例的生命周期是分开管理的。

参考: Managed identities in Azure HDInsight

希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.