Set-AzStorageLocalUser

在記憶體帳戶中建立或更新指定的本機使用者。

Syntax

Set-AzStorageLocalUser
   [-ResourceGroupName] <String>
   [-StorageAccountName] <String>
   -UserName <String>
   [-HomeDirectory <String>]
   [-SshAuthorizedKey <PSSshPublicKey[]>]
   [-PermissionScope <PSPermissionScope[]>]
   [-HasSharedKey <Boolean>]
   [-HasSshKey <Boolean>]
   [-HasSshPassword <Boolean>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzStorageLocalUser
   -StorageAccount <PSStorageAccount>
   -UserName <String>
   [-HomeDirectory <String>]
   [-SshAuthorizedKey <PSSshPublicKey[]>]
   [-PermissionScope <PSPermissionScope[]>]
   [-HasSharedKey <Boolean>]
   [-HasSshKey <Boolean>]
   [-HasSshPassword <Boolean>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Set-Az 儲存體 LocalUser Cmdlet 會在記憶體帳戶中建立或更新指定的本機使用者。 若要執行此 Cmdlet,記憶體帳戶必須已將 EnableLocalUser 設定為 true。

範例

範例 1:建立或更新本機使用者

$sshkey1 = New-AzStorageLocalUserSshPublicKey -Key "ssh-rsa base64encodedkey=" -Description "sshpublickey name1"

$permissionScope1 = New-AzStorageLocalUserPermissionScope -Permission rw -Service blob -ResourceName container1 

$localuser = Set-AzStorageLocalUser -ResourceGroupName "myresourcegroup" -AccountName "mystorageaccount" -UserName testuser1 -HomeDirectory "/" -SshAuthorizedKey $sshkey1 -PermissionScope $permissionScope1 -HasSharedKey $true -HasSshKey $true -HasSshPassword $true

$localuser

   ResourceGroupName: myresourcegroup, StorageAccountName: mystorageaccount

Name      Sid                                          HomeDirectory HasSharedKey HasSshKey HasSshPassword PermissionScopes        
----      ---                                          ------------- ------------ --------- -------------- ----------------         
testuser1 S-1-2-0-0000000000-000000000-0000000000-0000 /             True         True      True           [container1]

$localuser.SshAuthorizedKeys 

Description       Key                     
-----------       ---                     
sshpublickey name1 ssh-rsa base64encodedkey=

$localuser.PermissionScopes 

Permissions Service ResourceName
----------- ------- ------------
rw          blob    container1

第一個命令會建立本機 SSH 公鑰物件。 請注意,金鑰會遵循數據是公鑰的base64編碼內容的格式 <algorithm> <data> 。 第二個命令會建立本機許可權範圍物件,以定義本機使用者的容器層級存取權。 第三個命令會使用前 2 個命令中的本機物件,建立或更新本機使用者。 最後一個命令會顯示本機用戶屬性。

範例 2:使用 json 依輸入許可權範圍和 SSH 金鑰建立或更新本機使用者

Set-AzStorageLocalUser -ResourceGroupName "myresourcegroup" -AccountName "mystorageaccount" -UserName testuser1 -HomeDirectory "/" -HasSharedKey $true -HasSshKey $true -HasSshPassword $true `
            -SshAuthorizedKey (@{
                Description="sshpulickey name1";
                Key="ssh-rsa base64encodedkey=";                
            },
            @{
                Description="sshpulickey name2";
                Key="ssh-rsa otherbase64encodedkey="; 
            }) `
            -PermissionScope (@{
                Permissions="rw";
                Service="blob"; 
                ResourceName="container1";                
            },
            @{
                Permissions="rwd";
                Service="share"; 
                ResourceName="share1";
            })

ResourceGroupName: weitry, StorageAccountName: weisftp3

Name      Sid                                          HomeDirectory HasSharedKey HasSshKey HasSshPassword PermissionScopes        
----      ---                                          ------------- ------------ --------- -------------- ----------------         
testuser1 S-1-2-0-0000000000-000000000-0000000000-0000 /             True         True      True           [container1,...]

此命令會使用 json,透過輸入許可權範圍和 SSH 金鑰來建立或更新本機使用者。

參數

-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

-HasSharedKey

共用金鑰是否存在。 將它設定為 false,以移除現有的共用金鑰。

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

-HasSshKey

SSH 金鑰是否存在。 將它設定為 false 以移除現有的 SSH 金鑰。

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

-HasSshPassword

SSH 密碼是否存在。 將它設定為 false 以移除現有的 SSH 密碼。

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

-HomeDirectory

本機用戶主目錄

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

-PermissionScope

本機用戶的許可權範圍。 使用 New-Az 儲存體 LocalUserPermissionScope Cmdlet 取得 物件。

Type:PSPermissionScope[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

資源群組名稱。

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

-SshAuthorizedKey

SFTP 的本機使用者 SSH 授權金鑰。 使用 New-Az 儲存體 LocalUserSshPublicKey Cmdlet 取得 物件。

Type:PSSshPublicKey[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StorageAccount

儲存體 帳戶物件

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

-StorageAccountName

儲存體 帳戶名稱。

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

-UserName

本機用戶的名稱。 使用者名稱必須只包含小寫字母和數位。 它只能在記憶體帳戶內是唯一的。

Type:String
Aliases:Name
Position:Named
Default value:None
Required:True
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

輸入

PSStorageAccount

輸出

PSLocalUser