本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
UpdateUser
將新屬性指派給使用者。您傳遞的參數會修改下列任何或所有項目: 和ServerId
您指定的主目錄、角色UserName
和政策。
回應會傳回UserName
已更新使用者的 ServerId
和 。
在主控台中,您可以在建立或更新使用者時選取限制。這可確保使用者無法存取主目錄以外的任何內容。設定此行為的程式設計方法是更新使用者。將 HomeDirectoryType
設定為 LOGICAL
,並使用 HomeDirectoryMappings
Entry
指定為根 (/
) 和 Target
作為其主目錄。
例如,如果使用者的主目錄是 /test/admin-user
,則下列命令會更新使用者,以便其在主控台中的組態顯示選取的限制旗標。
aws transfer update-user --server-id <server-id> --user-name admin-user --home-directory-type LOGICAL --home-directory-mappings "[{\"Entry\":\"/\", \"Target\":\"/test/admin-user\"}]"
請求語法
{
"HomeDirectory": "string
",
"HomeDirectoryMappings": [
{
"Entry": "string
",
"Target": "string
",
"Type": "string
"
}
],
"HomeDirectoryType": "string
",
"Policy": "string
",
"PosixProfile": {
"Gid": number
,
"SecondaryGids": [ number
],
"Uid": number
},
"Role": "string
",
"ServerId": "string
",
"UserName": "string
"
}
請求參數
如需所有動作的一般參數資訊,請參閱《Common Parameters》。
請求接受下列JSON格式的資料。
- HomeDirectory
-
使用者使用其用戶端登入伺服器時的登陸目錄 (資料夾)。
HomeDirectory
範例為/bucket_name/home/mydirectory
。注意
只有在
HomeDirectoryType
設為PATH
時才會使用HomeDirectory
參數。類型:字串
長度限制:長度下限為 0。長度上限為 1024。
模式:
(|/.*)
必要:否
- HomeDirectoryMappings
-
邏輯目錄映射,可指定使用者應看到哪些 Amazon S3 或 Amazon EFS 路徑和金鑰,以及您希望如何使其可見。您必須指定
Entry
和Target
對,其中Entry
顯示如何顯示路徑,並且Target
是實際的 Amazon S3 或 Amazon EFS 路徑。如果您只指定目標,則會顯示為原樣。您也必須確保 AWS Identity and Access Management (IAM) 角色提供對 中路徑的存取權Target
。只有在 設定為 時,才能HomeDirectoryType
設定此值LOGICAL。以下是
Entry
和Target
對範例。[ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
在大多數情況下,您可以使用此值來取代工作階段政策,將使用者鎖定到指定的主目錄 ("
chroot
")。若要執行此操作,您可以將Entry
設定為 '/' 並Target
設定為 HomeDirectory 參數值。以下是 的
Entry
和Target
對範例chroot
。[ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
類型:HomeDirectoryMapEntry 物件陣列
陣列成員:項目數下限為 1。最多 50000 個項目。
必要:否
- HomeDirectoryType
-
使用者登入伺服器時,您希望的使用者主目錄之登陸目錄 (資料夾) 類型。如果您將其設定為
PATH
,則使用者會看到絕對 Amazon S3 儲存貯體或 Amazon EFS 路徑,就像在其檔案傳輸通訊協定用戶端一樣。如果您將其設定為LOGICAL
,則需要在 中提供映射,HomeDirectoryMappings
以了解如何讓使用者看見 Amazon S3 或 Amazon EFS 路徑。注意
如果
HomeDirectoryType
是LOGICAL
,您必須使用HomeDirectoryMappings
參數提供映射。另一方面,如果HomeDirectoryType
是PATH
,則您使用HomeDirectory
參數提供絕對路徑。您無法在範本HomeDirectoryMappings
中同時擁有HomeDirectory
和 。類型:字串
有效值:
PATH | LOGICAL
必要:否
- Policy
-
適用於使用者的工作階段政策,讓您可以在多個使用者之間使用相同的 AWS Identity and Access Management (IAM) 角色。此政策會減少使用者對其 Amazon S3 儲存貯體部分存取權的範圍。您可以在此政策內使用的變數包括
${Transfer:UserName}
、${Transfer:HomeDirectory}
和${Transfer:HomeBucket}
。注意
此政策僅適用於 的網域
ServerId
為 Amazon S3 時。Amazon EFS 不會使用工作階段政策。對於工作階段政策, 會將政策 AWS Transfer Family 儲存為 JSON Blob,而不是政策的 Amazon Resource Name (ARN)。您可以將政策儲存為 BlobJSON,並將其傳遞到
Policy
引數中。如需工作階段政策的範例,請參閱 Example session policy (工作階段政策範例)。
如需詳細資訊,請參閱 安全權杖服務參考 AssumeRole中的 。 AWS API
類型:字串
長度限制:長度下限為 0。長度上限為 2048。
必要:否
- PosixProfile
-
指定完整POSIX身分,包括使用者 ID (
Uid
)、群組 ID IDs(Gid
) 和任何次要群組 (SecondaryGids
),以控制使用者對 Amazon Elastic File Systems (Amazon) 的存取EFS。檔案系統中檔案和目錄上設定的POSIX許可決定了使用者在傳輸檔案進出 Amazon EFS 檔案系統時所取得的存取層級。類型:PosixProfile 物件
必要:否
- Role
-
(ARN) 角色的 Amazon Resource Name AWS Identity and Access Management (IAM),可控制使用者對 Amazon S3 儲存貯體或 Amazon EFS 檔案系統的存取。附加至此角色的政策會決定在將檔案移入和移出 Amazon S3 儲存貯體或 Amazon EFS 檔案系統時,您要為使用者提供的存取層級。此IAM角色也應包含信任關係,允許伺服器在服務使用者的傳輸請求時存取您的資源。
類型:字串
長度限制︰長度下限為 20。長度上限為 2048。
模式:
arn:.*role/\S+
必要:否
- ServerId
-
系統指派的唯一識別碼,用於使用者指派至的 Transfer Family 伺服器執行個體。
類型:字串
長度限制條件:固定長度為 19。
模式:
s-([0-9a-f]{17})
必要:是
- UserName
-
識別使用者並且和
ServerId
所指定伺服器建立關聯的唯一字串。此使用者名稱的長度必須最少為 3 個字元,最多為 100 個字元。以下是有效字元:a-z、A-Z、0-9、底線 '_'、連字號 '-'、句號 '。',以及位置符號 '@'。使用者名稱不能以連字號、句號或符號開頭。類型:字串
長度限制:長度下限為 3。長度上限為 100。
模式:
[\w][\w@.-]{2,99}
必要:是
回應語法
{
"ServerId": "string",
"UserName": "string"
}
回應元素
如果動作成功,服務會傳回 HTTP 200 個回應。
服務會以 JSON 格式傳回下列資料。
錯誤
如需所有動作常見錯誤的資訊,請參閱常見錯誤。
- InternalServiceError
-
當 AWS Transfer Family 服務發生錯誤時,就會擲回此例外狀況。
HTTP 狀態碼:500
- InvalidRequestException
-
當用戶端提交格式不正確的請求時,就會擲回此例外狀況。
HTTP 狀態碼:400
- ResourceNotFoundException
-
當 AWS Transfer Family 服務找不到資源時,就會擲回此例外狀況。
HTTP 狀態碼:400
- ServiceUnavailableException
-
請求失敗,因為 AWS Transfer Family 服務無法使用。
HTTP 狀態碼:500
- ThrottlingException
-
由於請求調節,因此請求遭到拒絕。
HTTP 狀態碼:400
範例
範例
下列範例會更新 Transfer Family 使用者。
請求範例
{
"HomeDirectory": "/bucket2/documentation",
"HomeDirectoryMappings": [
{
"Entry": "/directory1",
"Target": "/bucket_name/home/mydirectory"
}
],
"HomeDirectoryType:" "PATH",
"Role": "AssumeRole",
"ServerId": "s-01234567890abcdef",
"UserName": "my_user"
}
範例
這是此API呼叫的範例回應。
回應範例
{
"ServerId": "s-01234567890abcdef",
"UserName": "my_user"
}
另請參閱
如需在其中一種語言特定的 API中使用此功能的詳細資訊 AWS SDKs,請參閱下列內容: