【问题标题】:Azure Language services is trying to create roles and I don't have the permission to do soAzure 语言服务正在尝试创建角色,但我没有这样做的权限
【发布时间】:2022-01-19 10:16:54
【问题描述】:

我正在尝试部署 Azure 语言服务(自定义文本分类)。但是我无法创建我想要的资源,因为该服务正在尝试分配角色。原因是它可以访问存储帐户。显然我没有权限这样做,因为我在一家公司工作。有什么办法可以规避这种情况吗?有没有一种不需要分配角色权限就可以创建资源的方法?

附带说明:我确实有权创建资源以开始

【问题讨论】:

    标签: azure azure-cognitive-services


    【解决方案1】:

    您有 2 个选项可以在 Azure 语言服务上使用自定义文本分类:

    1. 使用新创建的 Azure 语言服务资源并在设置此资源期间选择“自定义文本分类”
    2. 使用现有的 Azure 语言服务资源并在其上启用“自定义文本分类”(2 步设置)

    在这两种情况下,您都需要可以在资源上设置角色的人的干预,但第二种选择需要较少的操作(它只是角色分配而不是第一种选择的资源创建)。

    1 步资源设置

    在第一种情况下(我猜是您所做的),该过程需要设置您提到的角色,并且由于您没有此权限而被阻止。

    两步设置

    程序

    在第二种情况下,您可以:

    • 首先创建 Azure 语言服务,不要选择“自定义文本分类”(详见下文)
    • 在此资源上启用托管标识
    • 然后创建一个存储帐户供以后使用
    • 请管理员设置您的存储权限
    • 在 Azure 语言资源上启用“自定义文本分类”

    Azure 语言服务资源设置

    创建资源

    • 在创建过程中不要选择“自定义文本分类”功能
    • 地区:“美国西部 2”或“西欧”
    • 定价:“标准 S”

    启用托管标识

    在 Azure 门户中,在“身份”选项卡下,打开托管身份(无论是系统分配的还是用户分配的,由您决定)

    点击“开启”并保存后:

    存储帐户设置

    创建资源

    在您的语言服务资源所在的区域创建您的存储:

    设置权限

    权限是文档中的详细信息here

    您的 Azure blob 存储帐户必须具有以下角色:

    • 您的资源在存储帐户上具有所有者或参与者角色。
    • 您的资源在存储帐户上具有存储 blob 数据所有者或存储 blob 数据参与者角色。
    • 您的资源在存储帐户上具有读者角色。

    因此,您必须让您的“管理员”转到存储帐户资源的“访问控制 (IAM)”部分,并将角色添加到您之前启用的托管身份。通过使用最小权限原则,我将设置以下角色:

    • 存储 blob 数据贡献者
    • 读者

    Storage Blob Data Contributor 设置示例:

    完成 Azure 语言服务设置

    转到 Language Studio (https://language.cognitive.azure.com/) 并选择您的语言服务资源。然后,转到“自定义文本分类”。

    点击“创建新项目”,您将被引导将您的语言服务资源链接到您的存储帐户:

    选择存储帐户并单击下一步。

    您可以在语言服务资源的“活动日志”中检查它是否将存储链接到此资源:

    它在属性中添加了“userOwnedStorage”属性:

    那你就可以走了!

    【讨论】:

    • 感谢您的详细解答。并没有真正解决无法分配角色的问题,但我得到了权限,今天终于可以创建资源了!
    • 没有办法解决权限问题;)
    • 我是这么认为的。值得一试。谢谢你:)
    猜你喜欢
    • 2021-05-26
    • 2019-11-02
    • 1970-01-01
    • 1970-01-01
    • 2021-09-07
    • 1970-01-01
    • 2021-08-17
    • 2021-08-19
    • 2019-06-05
    相关资源
    最近更新 更多