在请求令牌时,如何在Azure存储Blob中为REST请求指定作用域?[AZURE-BLOB][REST API]

在请求令牌时,如何在Azure存储Blob中为REST请求指定作用域?[AZURE-BLOB][REST API],rest,scope,azure-storage,azure-storage-blobs,azure-blob-storage,Rest,Scope,Azure Storage,Azure Storage Blobs,Azure Blob Storage,是否有人可以确认,要向Azure storage发出REST请求,我们必须 创建应用注册并获取其客户端ID和客户端机密 转到API权限->添加权限->Azure存储,将用户模拟添加为允许应用程序代表登录用户访问存储帐户的API权限 转到访问控制IAM->添加角色->指定指定的登录用户(电子邮件)您喜欢的角色 接下来,您现在可以访问令牌以发出请求 在此逻辑中,我必须在步骤3中授予读/写/完整存储帐户对角色的访问权,然后将该行为模拟到创建的应用程序 但假设我想在令牌请求时授予这些级别的访问权限。如图

是否有人可以确认,要向Azure storage发出REST请求,我们必须

  • 创建应用注册并获取其
    客户端ID
    客户端机密
  • 转到
    API权限
    ->
    添加权限
    ->
    Azure存储
    ,将
    用户模拟
    添加为允许应用程序代表登录用户访问存储帐户的API权限
  • 转到
    访问控制IAM
    ->
    添加角色
    ->指定指定的
    登录用户(电子邮件)
    您喜欢的角色
  • 接下来,您现在可以访问令牌以发出请求
  • 在此逻辑中,我必须在步骤3中授予
    读/写/完整存储帐户
    对角色的访问权,然后将该行为模拟到创建的应用程序

    但假设我想在令牌请求时授予这些级别的访问权限。如图所示:

    我可以这样做吗?我在访问令牌时获得了不同的读/写/所有者权限。 如果没有,我如何管理不同的访问级别

    • 我应该使用多个用户吗
    • 我应该使用多个应用程序吗

    您不需要多个应用程序,但当您使用
    Azure Storage
    API(即
    API)的委派权限
    user\u模拟时,需要多个用户https://storage.azure.com/user_impersonation
    范围内
    ,用户登录后,应用程序将获得用户在存储帐户中的所有权限。此外,我注意到您使用了
    https://myaccount.blob.core.windows.net/user_impersonation
    ,它只适用于特定的存储帐户,请确保它满足您的要求。

    根据您的描述,您想获得具有不同权限的不同令牌吗?是的,类似的。我想要的是,我的客户不必创建多个用户和应用程序来管理不同的角色/访问(读/写/删除)在Azure门户上,我可以通过使用REST调用的代码为他做这件事吗?在我上次与@PamelaPeng的讨论中,她建议使用myaccount.blob.core.windows.net,这对我来说很有效,那么这两者之间到底有什么区别呢?说到主要问题,我可以在生成访问令牌时授予读/写/所有者访问权限,还是只能通过用户模拟来实现?@MayankPatel 1.
    https://myaccount.blob.core.windows.net
    仅适用于一个特定的存储帐户,如果它符合您的场景,请忽略它。2.不,权限(例如,
    读/写
    是RBAC角色中定义的操作权限,当您请求令牌时,我们需要传递API公开的权限,即用户模拟,这意味着只能通过用户模拟来完成。