MSV1_0_LM20_LOGON 結構 (ntsecapi.h)
MSV1_0_LM20_LOGON 結構包含網路登入中使用的登入資訊。
LsaLogonUser 會使用它。
語法
typedef struct _MSV1_0_LM20_LOGON {
MSV1_0_LOGON_SUBMIT_TYPE MessageType;
UNICODE_STRING LogonDomainName;
UNICODE_STRING UserName;
UNICODE_STRING Workstation;
UCHAR ChallengeToClient[MSV1_0_CHALLENGE_LENGTH];
STRING CaseSensitiveChallengeResponse;
STRING CaseInsensitiveChallengeResponse;
ULONG ParameterControl;
} MSV1_0_LM20_LOGON, *PMSV1_0_LM20_LOGON;
成員
MessageType
指定所要求登入類型的 MSV1_0_LOGON_SUBMIT_TYPE 值。 此成員必須設定為 MsV1_0Lm20Logon 或 MsV1_0NetworkLogon。
如果此成員設定為 MsV1_0Lm20Logon,MSV1_0套件會忽略 ParameterControl 成員。
LogonDomainName
包含登入網域名稱 的UNICODE_STRING 。 指定的域名必須是此計算機受信任網域清單中的 Windows 網域 (或混合網域) 。 例如,如果登入功能變數名稱不知道 (,對於未提供這項資訊的用戶端) ,此成員應該以零長度字串的形式傳入。 此網域是驗證授權單位。
UserName
表示用戶帳戶名稱 的UNICODE_STRING 。 名稱長度上限為 255 個字節。 名稱會被視為不區分大小寫。
Workstation
UNICODE_STRING,其中包含起始使用者登入要求之用戶端工作站的計算機名稱。
ChallengeToClient[MSV1_0_CHALLENGE_LENGTH]
包含從先前呼叫 LsaCallAuthenticationPackage 傳回的挑戰,當 MsV1_0Lm20ChallengeRequest 指定為訊息類型時。 如需詳細資訊,請參閱 MSV1_0_PROTOCOL_MESSAGE_TYPE 中的 MsV1_0Lm20ChallengeRequest描述。 這可讓 驗證套件 判斷挑戰回應是否正確。
CaseSensitiveChallengeResponse
包含用戶端區分大小寫 Unicode 密碼的一些函式。 一般而言,它會是以區分大小寫的密碼版本加密 的 ChallengeToClient 成員。
有些用戶端只會提供 純文本 區分大小寫 的 Unicode 密碼。 在此情況下,此成員會指向該 純文本 密碼。 根據組態選項, MSV1_0驗證套件 可以接受這個無類型表單。
某些客戶端不支援區分大小寫 的 Unicode 密碼。 在此情況下,此成員應該包含長度為零的字串。
CaseInsensitiveChallengeResponse
包含用戶端 (MBCS) 密碼不區分大小寫的多位元組字元集的一些函式。 一般而言,它會是以不區分大小寫的密碼版本加密的 ChallengeToClient 成員。
僅支援 MBCS 而非 Unicode 的用戶端會提供不區分大小寫的 純文字 MBCS 密碼。 在此情況下,此成員會指向該 純文本 密碼。 根據組態選項,MSV1_0驗證套件將接受這個無群組表單。
ParameterControl
指定其他參數的屬性。 這可以是下列一或多個旗標。
值 | 意義 |
---|---|
|
LanMan2.0 或 LanMan1.0 會傳送 純文本 密碼,而不是挑戰回應。 若要允許在 NetworkLogon 訊息中使用純文字密碼,應用程式必須提供此旗標。 |
|
更新帳戶的登入統計數據。 如果未設定此旗標,在成功登入時,密碼計數會設定為零。 |
|
如果指定這個旗標,MSV1_0_LM20_LOGON_PROFILE傳回緩衝區的UserParameters成員是有效的。 |
|
防止使用者使用來賓帳戶登入。 |
|
如果已設定此旗標,則可以使用域控制器帳戶進行驗證;否則,只能使用用戶帳戶。 |
|
導致在輸出緩衝區中傳回之 MSV1_0_LM20_LOGON_PROFILE 結構之LogoffTime成員中傳回密碼到期時間。 |
|
表示 CaseInsensitiveChallengeResponse 包含前 8 個字節中的客戶端挑戰。 |
|
讓使用者使用來賓帳戶登入。 |
|
傳回加密 檔系統 (EFS) 的配置檔路徑。 EFS 會使用配置檔路徑來找出使用者的配置檔,並尋找用於加密和解密檔案的使用者密鑰。 此資訊不會傳回給呼叫端;它會儲存在 LSA 內,並由內部進程使用。 |
|
在正常作業中, LogonDomainName 成員會當做建議使用。 使用 NetLogon 服務 (套件) 會繼續將登入要求傳遞至信任網域路徑中較高層級的域控制器,直到有一個授權拒絕登入為止。
此旗標會覆寫該行為,因此只有指定的域控制器會嘗試處理登入。 如果 LogonDomainName 是空白的,將不會嘗試登入。 |
|
允許遠端開機用戶端使用電腦帳戶登入。 |
|
允許使用者使用純文字密碼。
Windows XP 和 Windows Server 2003: 不支援。 |
|
只允許用於路由的網域。
Windows XP 和 Windows Server 2003: 不支援。 |
|
允許 SubAuthentication 登入。
Windows XP 和 Windows Server 2003: 不支援。 |
|
允許 S4U 用戶端在沒有密碼的情況下登入。
Windows Vista、Windows Server 2003 SP2、Windows XP 和 Windows Server 2003: 不支援。 |
|
檢查 S4U 登入用戶端的登入時數。
Windows Vista、Windows Server 2003 SP2、Windows XP 和 Windows Server 2003: 不支援。 |
|
允許登入因特網使用者。 此旗標應該由來自驗證套件的呼叫直接使用,而不是來自 netlogon 的呼叫。
Windows 7、Windows Server 2008 R2、Windows Vista、Windows Server 2008、Windows XP 和 Windows Server 2003: 不支援。 |
備註
如果 UserName、 CaseSensitiveChallengeResponse 和 CaseInsensitiveChallengeResponse 成員全都包含零長度字元串,則會為登入產生匿名令牌。 此匿名令牌可讓用戶無法存取受保護的系統資源,但允許存取未受保護的系統資源。 伺服器會使用這個方法來支援 NULL 會話。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
標頭 | ntsecapi.h |