你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

New-AzStorageContext

创建 Azure 存储上下文。

语法

New-AzStorageContext
   [-StorageAccountName] <String>
   [-UseConnectedAccount]
   [-Protocol <String>]
   [-Endpoint <String>]
   [-EnableFileBackupRequestIntent]
   [<CommonParameters>]
New-AzStorageContext
   [-StorageAccountName] <String>
   [-StorageAccountKey] <String>
   [-Protocol <String>]
   [-Endpoint <String>]
   [<CommonParameters>]
New-AzStorageContext
   [-StorageAccountName] <String>
   [-StorageAccountKey] <String>
   [-Protocol <String>]
   -Environment <String>
   [<CommonParameters>]
New-AzStorageContext
   [-StorageAccountName] <String>
   [-Anonymous]
   [-Protocol <String>]
   [-Endpoint <String>]
   [<CommonParameters>]
New-AzStorageContext
   [-StorageAccountName] <String>
   [-Anonymous]
   [-Protocol <String>]
   -Environment <String>
   [<CommonParameters>]
New-AzStorageContext
   [-StorageAccountName] <String>
   -SasToken <String>
   [-Protocol <String>]
   [-Endpoint <String>]
   [<CommonParameters>]
New-AzStorageContext
   [-StorageAccountName] <String>
   -SasToken <String>
   -Environment <String>
   [<CommonParameters>]
New-AzStorageContext
   [-StorageAccountName] <String>
   [-UseConnectedAccount]
   [-Protocol <String>]
   -Environment <String>
   [-EnableFileBackupRequestIntent]
   [<CommonParameters>]
New-AzStorageContext
   [-StorageAccountName] <String>
   [-StorageAccountKey] <String>
   -BlobEndpoint <String>
   [-FileEndpoint <String>]
   [-QueueEndpoint <String>]
   [-TableEndpoint <String>]
   [<CommonParameters>]
New-AzStorageContext
   -SasToken <String>
   [-BlobEndpoint <String>]
   [-FileEndpoint <String>]
   [-QueueEndpoint <String>]
   [-TableEndpoint <String>]
   [<CommonParameters>]
New-AzStorageContext
   -ConnectionString <String>
   [<CommonParameters>]
New-AzStorageContext
   [-Local]
   [<CommonParameters>]
New-AzStorageContext
   [-Anonymous]
   [-BlobEndpoint <String>]
   [-FileEndpoint <String>]
   [-QueueEndpoint <String>]
   [-TableEndpoint <String>]
   [<CommonParameters>]
New-AzStorageContext
   [-UseConnectedAccount]
   [-BlobEndpoint <String>]
   [-FileEndpoint <String>]
   [-QueueEndpoint <String>]
   [-TableEndpoint <String>]
   [-EnableFileBackupRequestIntent]
   [<CommonParameters>]

说明

New-AzStorageContext cmdlet 创建Azure 存储上下文。 存储上下文的默认身份验证为 OAuth(Microsoft Entra ID),前提是仅输入存储帐户名称。 请参阅 中 https://learn.microsoft.com/rest/api/storageservices/authorization-for-the-azure-storage-services存储服务身份验证的详细信息。

示例

示例 1:通过指定存储帐户名称和密钥创建上下文

New-AzStorageContext -StorageAccountName "ContosoGeneral" -StorageAccountKey "< Storage Key for ContosoGeneral ends with == >"

此命令为使用指定密钥的名为 ContosoGeneral 的帐户创建上下文。

示例 2:通过指定连接字符串创建上下文

New-AzStorageContext -ConnectionString "DefaultEndpointsProtocol=https;AccountName=ContosoGeneral;AccountKey=< Storage Key for ContosoGeneral ends with == >;"

此命令基于帐户 ContosoGeneral 的指定连接字符串创建上下文。

示例 3:为匿名存储帐户创建上下文

New-AzStorageContext -StorageAccountName "ContosoGeneral" -Anonymous -Protocol "http"

此命令为名为 ContosoGeneral 的帐户创建匿名使用的上下文。 该命令将 HTTP 指定为连接协议。

示例 4:使用本地开发存储帐户创建上下文

New-AzStorageContext -Local

此命令使用本地开发存储帐户创建上下文。 该命令指定 Local 参数。

示例 5:获取本地开发人员存储帐户的容器

New-AzStorageContext -Local | Get-AzStorageContainer

此命令使用本地开发存储帐户创建上下文,然后使用管道运算符将新上下文 传递给 Get-AzStorageContainer cmdlet。 该命令获取本地开发人员存储帐户的Azure 存储容器。

示例 6:获取多个容器

$Context01 = New-AzStorageContext -Local 
$Context02 = New-AzStorageContext -StorageAccountName "ContosoGeneral" -StorageAccountKey "< Storage Key for ContosoGeneral ends with == >"
($Context01, $Context02) | Get-AzStorageContainer

第一个命令使用本地开发存储帐户创建上下文,然后将该上下文存储在 $Context 01 变量中。 第二个命令为名为 ContosoGeneral 的帐户创建一个上下文,该帐户使用指定的键,然后将该上下文存储在 $Context 02 变量中。 最后一个命令使用 Get-AzStorageContainer 获取存储在 $Context 01 和 $Context 02 中的上下文的容器。

示例 7:使用终结点创建上下文

New-AzStorageContext -StorageAccountName "ContosoGeneral" -StorageAccountKey "< Storage Key for ContosoGeneral ends with == >" -Endpoint "contosoaccount.core.windows.net"

此命令创建具有指定存储终结点的Azure 存储上下文。 该命令为使用指定密钥的名为 ContosoGeneral 的帐户创建上下文。

示例 8:创建具有指定环境的上下文

New-AzStorageContext -StorageAccountName "ContosoGeneral" -StorageAccountKey "< Storage Key for ContosoGeneral ends with == >" -Environment "AzureChinaCloud"

此命令创建具有指定 Azure 环境的 Azure 存储上下文。 该命令为使用指定密钥的名为 ContosoGeneral 的帐户创建上下文。

示例 9:使用 SAS 令牌创建上下文

$SasToken = New-AzStorageContainerSASToken -Name "ContosoMain" -Permission "rad"
$Context = New-AzStorageContext -StorageAccountName "ContosoGeneral" -SasToken $SasToken
$Context | Get-AzStorageBlob -Container "ContosoMain"

第一个命令使用名为 ContosoMain 的容器的 New-AzStorageContainerSASToken cmdlet 生成 SAS 令牌,然后将该令牌存储在$SasToken变量中。 该令牌用于读取、添加、更新和删除权限。 第二个命令为名为 ContosoGeneral 的帐户创建一个上下文,该帐户使用存储在$SasToken中的 SAS 令牌,然后将该上下文存储在$Context变量中。 最后一个命令使用存储在$Context中的上下文列出与名为 ContosoMain 的容器关联的所有 blob。

示例 10:使用 OAuth 身份验证创建上下文

Connect-AzAccount
$Context = New-AzStorageContext -StorageAccountName "myaccountname" -UseConnectedAccount

此命令使用 OAuth(Microsoft Entra ID)身份验证创建上下文。

示例 11:通过指定存储帐户名称、存储帐户密钥和自定义 Blob 终结点来创建上下文

New-AzStorageContext -StorageAccountName "myaccountname" -StorageAccountKey "< Storage Key for myaccountname ends with == >" -BlobEndpoint "https://myaccountname.blob.core.windows.net/"

此命令使用帐户的密钥和指定的 Blob 终结点为名为 myaccountname 的帐户创建上下文。

示例 12:为具有指定 Blob 终结点的匿名存储帐户创建上下文

New-AzStorageContext -Anonymous -BlobEndpoint "https://myaccountname.blob.core.windows.net/"

此命令为名为 myaccountname 的帐户创建一个上下文,该帐户具有指定的 blob enpoint。

示例 13:使用具有指定终结点的 SAS 令牌创建上下文

$SasToken = New-AzStorageContainerSASToken -Name "MyContainer" -Permission "rad"
New-AzStorageContext -SasToken $SasToken -BlobEndpoint "https://myaccountname.blob.core.windows.net/" -TableEndpoint "https://myaccountname.table.core.windows.net/" -FileEndpoint "https://myaccountname.file.core.windows.net/" -QueueEndpoint "https://myaccountname.queue.core.windows.net/"

第一个命令使用名为 MyContainer 的容器的 New-AzStorageContainerSASToken cmdlet 生成 SAS 令牌,然后将该令牌存储在$SasToken变量中。 第二个命令创建一个上下文,该上下文使用 SAS 令牌和指定的 Blob 终结点、表终结点、文件终结点和队列终结点。

示例 14:使用具有指定 Blob 终结点的 OAuth 身份验证创建上下文

New-AzStorageContext -UseConnectedAccount -BlobEndpoint  "https://myaccountname.blob.core.windows.net/"

此命令使用具有指定 Blob 终结点的 OAuth 身份验证创建上下文。

示例 15:使用文件服务上的 OAuth 身份验证创建上下文

New-AzStorageContext -StorageAccountName "myaccountname" -UseConnectedAccount -EnableFileBackupRequestIntent

此命令创建一个上下文,以在文件服务上使用 OAuth(Microsoft Entra ID)身份验证。 需要参数“-EnableFileBackupRequestIntent”才能对文件服务使用 OAuth(Microsoft Entra ID)身份验证。 这将根据允许的数据操作绕过任何文件/目录级别权限检查并允许访问,即使这些文件/目录存在 ACL。

参数

-Anonymous

指示此 cmdlet 为匿名登录创建Azure 存储上下文。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-BlobEndpoint

Azure 存储 Blob 服务终结点

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-ConnectionString

指定Azure 存储上下文的连接字符串。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-EnableFileBackupRequestIntent

与 OAuth(Microsoft Entra ID)一起使用所需的参数,用于文件身份验证。 这将根据允许的数据操作绕过任何文件/目录级别权限检查并允许访问,即使这些文件/目录存在 ACL。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Endpoint

指定Azure 存储上下文的终结点。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Environment

指定 Azure 环境。 此参数的可接受值为:AzureCloud 和 AzureChinaCloud。 要了解详情,请键入 Get-Help Get-AzEnvironment

类型:String
别名:Name, EnvironmentName
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-FileEndpoint

Azure 存储文件服务终结点

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Local

指示此 cmdlet 使用本地开发存储帐户创建上下文。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Protocol

传输协议(https/http)。

类型:String
接受的值:Http, Https
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-QueueEndpoint

Azure 存储队列服务终结点

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SasToken

为上下文指定共享访问签名 (SAS) 令牌。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-StorageAccountKey

指定Azure 存储帐户密钥。 此 cmdlet 为此参数指定的键创建上下文。

类型:String
Position:1
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-StorageAccountName

指定Azure 存储帐户名称。 此 cmdlet 为此参数指定的帐户创建上下文。

类型:String
Position:0
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-TableEndpoint

Azure 存储表服务终结点

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UseConnectedAccount

指示此 cmdlet 使用 OAuth(Microsoft Entra ID)身份验证创建Azure 存储上下文。 如果未指定其他身份验证,cmdlet 将默认使用 OAuth 身份验证。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

String

输出

AzureStorageContext