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

Update-AzSynapseWorkspace

汇报 Synapse Analytics 工作区。

语法

Update-AzSynapseWorkspace
      [-ResourceGroupName <String>]
      -Name <String>
      [-Tag <Hashtable>]
      [-SqlAdministratorLoginPassword <SecureString>]
      [-ManagedVirtualNetwork <PSManagedVirtualNetworkSettings>]
      [-EncryptionKeyName <String>]
      [-UserAssignedIdentityInEncryption <String>]
      [-UseSystemAssignedIdentityInEncryption <Object>]
      [-GitRepository <PSWorkspaceRepositoryConfiguration>]
      [-UserAssignedIdentityAction <UserAssignedManagedIdentityActionType>]
      [-UserAssignedIdentityId <System.Collections.Generic.List`1[System.String]>]
      [-EnablePublicNetworkAccess <Boolean>]
      [-AsJob]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzSynapseWorkspace
      -InputObject <PSSynapseWorkspace>
      [-Tag <Hashtable>]
      [-SqlAdministratorLoginPassword <SecureString>]
      [-ManagedVirtualNetwork <PSManagedVirtualNetworkSettings>]
      [-EncryptionKeyName <String>]
      [-UserAssignedIdentityInEncryption <String>]
      [-UseSystemAssignedIdentityInEncryption <Object>]
      [-GitRepository <PSWorkspaceRepositoryConfiguration>]
      [-UserAssignedIdentityAction <UserAssignedManagedIdentityActionType>]
      [-UserAssignedIdentityId <System.Collections.Generic.List`1[System.String]>]
      [-EnablePublicNetworkAccess <Boolean>]
      [-AsJob]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzSynapseWorkspace
      -ResourceId <String>
      [-Tag <Hashtable>]
      [-SqlAdministratorLoginPassword <SecureString>]
      [-ManagedVirtualNetwork <PSManagedVirtualNetworkSettings>]
      [-EncryptionKeyName <String>]
      [-UserAssignedIdentityInEncryption <String>]
      [-UseSystemAssignedIdentityInEncryption <Object>]
      [-GitRepository <PSWorkspaceRepositoryConfiguration>]
      [-UserAssignedIdentityAction <UserAssignedManagedIdentityActionType>]
      [-UserAssignedIdentityId <System.Collections.Generic.List`1[System.String]>]
      [-EnablePublicNetworkAccess <Boolean>]
      [-AsJob]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

说明

Update-AzSynapseWorkspace cmdlet 更新 Azure Synapse Analytics 工作区。

示例

示例 1

Update-AzSynapseWorkspace -Name ContosoWorkspace -Tag @{'key'='value'}

此命令更新指定的 Azure Synapse Analytics 工作区的标记。

示例 2

$ws = Get-AzSynapseWorkspace -Name ContosoWorkspace
$ws | Update-AzSynapseWorkspace -Tag @{'key'='value1'}

此命令通过管道更新指定的 Azure Synapse Analytics 工作区的标记。

示例 3

Update-AzSynapseWorkspace -ResourceId /subscriptions/21686af7-58ec-4f4d-9c68-f431f4db4edd/resourceGroups/ContosoResourceGroup/providers/Microsoft.Synapse/workspaces/ContosoWorkspace -Tag @{'key'='value2'}

此命令通过具有资源 ID 的管道更新指定的 Azure Synapse Analytics 工作区的标记。

示例 4

$config = New-AzSynapseGitRepositoryConfig -RepositoryType GitHub -AccountName ContosoAccount -RepositoryName ContosoRepo -CollaborationBranch main
Update-AzSynapseWorkspace -Name ContosoWorkspace -GitRepository $config

此命令将更新指定 Azure Synapse Analytics 工作区所承认的 Git 存储库。

示例 5

Update-AzSynapseWorkspace -Name ContosoWorkspace -EnablePublicNetworkAccess $True

此命令将更新指定的 Azure Synapse Analytics 工作区以启用公共网络访问。

示例 6

$uamis = Get-AzUserAssignedIdentity -ResourceGroupName ContosoResourceGroup
$uamilist = New-Object System.Collections.Generic.List[string]
foreach($uami in $uamis){
	$uamilist.Add($uami.Id)
}

Update-AzSynapseWorkspace -Name ContosoWorkspace -UserAssignedIdentityAction Add -UserAssignedIdentityId $uamilist

此命令将更新工作区,以在$uamilist中添加用户分配的托管标识。

示例 7

$uamis = Get-AzUserAssignedIdentity -ResourceGroupName ContosoResourceGroup
$uamilist = New-Object System.Collections.Generic.List[string]
foreach($uami in $uamis){
	$uamilist.Add($uami.Id)
}

Update-AzSynapseWorkspace -Name ContosoWorkspace -UserAssignedIdentityAction Remove -UserAssignedIdentityId $uamilist[0]

此命令从工作区中删除用户分配的托管标识$uamilist[0]。

示例 8

$uamis = Get-AzUserAssignedIdentity -ResourceGroupName ContosoResourceGroup
$uamilist = New-Object System.Collections.Generic.List[string]
foreach($uami in $uamis){
	$uamilist.Add($uami.Id)
}

Update-AzSynapseWorkspace -Name ContosoWorkspace -UserAssignedIdentityAction Set -UserAssignedIdentityId $uamilist

此命令使用用户分配的托管标识更新工作区,$uamilist将涵盖当前标识。

示例 9

##Add a temp key to the workspace
New-AzSynapseWorkspaceKey -ResourceGroupName ContosoResourceGroup -WorkspaceName ContosoWorkspace -Name TempKey -EncryptionKeyIdentifier https://contosoKeyVault.vault.azure.net/keys/TempKey

##Update the workspace and set the temp key as the TDE protector
Update-AzSynapseWorkspace -WorkspaceName ContosoWorkspace -EncryptionKeyName TempKey -UseSystemAssignedIdentityInEncryption $true

##Note, we need to create a new key version for the original encrytion key of the Azure key vault before moving to next steps. 

##Update the workspace and set the encryption key back after we created a new key version. 
Update-AzSynapseWorkspace -WorkspaceName ContosoWorkspace -EncryptionKeyName default -UseSystemAssignedIdentityInEncryption $true

##Remove the temp key
Remove-AzSynapseWorkspaceKey -WorkspaceName ContosoWorkspace -Name TempKey

此命令演示如何轮换 Synapse 工作区的加密密钥,并使用系统分配的托管标识访问 Azure 密钥库。

示例 10

$uamis = Get-AzUserAssignedIdentity -ResourceGroupName ContosoResourceGroup
$identityId = $uamis[0].Id
$ws = Get-AzSynapseWorkspace -Name ContosoWorkspace
$ws | Update-AzSynapseWorkspace -UseSystemAssignedIdentityInEncryption $false -UserAssignedIdentityInEncryption $identityId
$ws = Get-AzSynapseWorkspace -Name ContosoWorkspace
$ws.Encryption.CustomerManagedKeyDetails.Key

Name    KeyVaultUrl
----    -----------
default https://contosoKeyValut.vault.azure.net/keys/testkey

$ws = Get-AzSynapseWorkspace -name ContosoWorkspace
$ws.Encryption.CustomerManagedKeyDetails.KekIdentity

UserAssignedIdentity                                                                                                                                        UseSystemAssignedIdentity
--------------------                                                                                                                                        -------------------------
/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/ContosoResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uaminame                     False

此命令将工作区加密托管标识更新为用户分配,并指定用户分配的标识 ID 以访问存储在密钥保管库中的客户管理的密钥。 更新后,我们可以调用 Get-AzSynapseWorkspace 以获取工作区的加密属性。

参数

-AsJob

在后台运行 cmdlet

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnablePublicNetworkAccess

启用或禁用对工作区的公共网络访问。 可能的值包括:“Enabled”、“Disabled”

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EncryptionKeyName

工作区加密密钥名称。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-GitRepository

Git 存储库设置。 连接工作区到存储库进行源代码管理和协作,以便处理工作区管道

Type:PSWorkspaceRepositoryConfiguration
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

工作区输入对象,通常通过管道传递。

Type:PSSynapseWorkspace
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ManagedVirtualNetwork

托管虚拟网络 设置。

Type:PSManagedVirtualNetworkSettings
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Synapse 工作区的名称。

Type:String
Aliases:WorkspaceName
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

资源组名称。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceId

Synapse 工作区的资源标识符。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SqlAdministratorLoginPassword

工作区的新 SQL 管理员密码。

Type:SecureString
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tag

与资源关联的标记的字符串字符串字典。

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserAssignedIdentityAction

在为工作区添加/删除/设置用户分配的托管标识时,必须指定操作。 支持的操作包括:添加“删除集添加”意味着为工作区添加用户分配的托管标识,删除从工作区中删除用户分配的托管标识的方法。如果要同时添加和删除用户分配的托管标识,可以使用 Set。

Type:Microsoft.Azure.Commands.Synapse.Models.SynapseConstants+UserAssignedManagedIdentityActionType
Accepted values:Add, Remove, Set
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserAssignedIdentityId

用户分配的工作区托管标识 ID。

Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserAssignedIdentityInEncryption

工作区加密中使用的用户分配的标识资源 ID

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSystemAssignedIdentityInEncryption

指定是否在工作区加密中使用系统分配的标识

Type:Object
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

PSSynapseWorkspace

输出

PSSynapseWorkspace