概述
本主題描述有關管理儲存在 MB 裝置記憶體或訂閱者身分識別模組(SIM 卡)上的訂閱資訊的訪問控制作業。 這包括啟用、停用或變更個人標識號(PIN),以及透過 PIN 或個人解除鎖定金鑰 (PUK) 解除鎖定。
架構/流程
啟用/停用/解除鎖定/變更 PIN 的用戶動作
查詢行動裝置 UX 的 PIN1/PUK1 狀態
從休眠恢復后自動解除鎖定
MBIM_CID_MS_PIN_EX
這裡將說明此 CID:MBIM_CID_MS_PIN_EX
MBIM_CID_PIN_LIST
描述
此命令會傳回 MB 裝置支援的所有不同類型的個人識別號 (PIN)清單,以及每個 PIN 類型的其他詳細數據,例如 PIN 長度(最小和最大長度)、PIN 格式和 PIN 輸入模式(已啟用/停用/無法使用)。 此 CID 也會指定函式所支援之每個 PIN 的目前模式。 函式必須報告它們支援的所有 PIN。 不過,多模式裝置的 PIN1 只能報告一次。
回報為 PIN1 的 PIN 必須符合 PIN1 指導方針:針對 CDMA 型裝置,這是提供電源驗證或識別功能的 PIN,而針對 GSM 型裝置,這是訂閱者身分識別模組 (SIM) PIN。
當就緒狀態變更為 MBIMSubscriberReadyStateInitialized 或變成 MBIMSubscriberReadyStateDeviceLocked(PIN 鎖定)時,函式必須能夠傳回這項資訊。 函式也應該盡可能在其他就緒狀態中傳回此資訊。
僅限查詢
查詢訊息的 InformationBuffer 是空的。 MBIM_COMMAND_DONE 的資訊緩衝區包含MBIM_PIN_LIST_INFO。
參數
| 設置 | 查詢 | 通知 | |
|---|---|---|---|
| 命令 | N/A | 空 | N/A |
| 回應 | N/A | MBIM_PIN_LIST_INFO | N/A |
數據結構
MBIM_PIN模式
| 類型 | 價值 |
|---|---|
| MBIMPinModeNotSupported | 0 |
| MBIMPinModeEnabled | 1 |
| MBIMPinModeDisabled | 2 |
MBIM_PIN_FORMAT
| 類型 | 價值 |
|---|---|
| MBIMPinFormatUnknown | 0 |
| MBIMPinFormatNumeric | 1 |
| MBIMPinFormatAlphaNumeric | 2 |
MBIM_PIN_DESC
| 抵消 | 大小 | 田 | 類型 | 描述 |
|---|---|---|---|---|
| 0 | 4 | PinMode | MBIM_PIN模式 | 請參閱上表 MBIM_PIN_MODE。 這會顯示是否啟用鎖定。 它不會顯示鎖定狀態是否已鎖定或解除鎖定。 |
| 4 | 4 | PinFormat | MBIM_PIN_FORMAT | 請參閱上表 MBIM_PIN_FORMAT。 |
| 8 | 4 | 引腳長度最小值 | UINT32 | PIN 中的字元數下限。 裝置不應指定大於16的值。 如果無法取得 PIN 長度,裝置應指定 0xffffffff。 |
| 12 | 4 | 最大引腳長度 | UINT32 | PIN 中的字元數上限。 裝置不應指定大於16的值。 如果無法取得 PIN 長度,裝置應指定 0xffffffff。 |
查詢
InformationBuffer 應為 空值,且 InformationBufferLength 應為 零。
回應
下列結構應該用於 InformationBuffer:
MBIM_PIN_LIST_INFO
| 抵消 | 大小 | 田 | 類型 | 描述 |
|---|---|---|---|---|
| 0 | 16 | PinDescPin1 | MBIM_PIN_DESC | 描述 PIN1 的 MBIM_PIN_DESC 結構。 針對 GSMbased 裝置,這是訂閱者身分識別模組 (SIM) PIN。 針對CDMA型裝置,電源裝置鎖定會回報為PIN1。 |
| 16 | 16 | PinDescPin2 | MBIM_PIN_DESC | 描述 PIN2 的 MBIM_PIN_DESC 結構。 這是可保護特定 SIM 卡功能的 SIM PIN2。 |
| 32 | 16 | PinDescDeviceSimPin | MBIM_PIN_DESC | MBIM_PIN_DESC 結構描述裝置與 SIM 卡之間的 PIN。 這是將裝置鎖定至特定 SIM 卡的 PIN。 |
| 48 | 16 | PinDescDeviceFirstSimPin | MBIM_PIN_DESC | MBIM_PIN_DESC 結構,描述裝置與第一個 SIM 卡的 PIN。 這是將裝置鎖定至第一個插入的 SIM 卡的 PIN。 |
| 64 | 16 | PinDescNetworkPin | MBIM_PIN_DESC | 描述網路個人化 PIN 的MBIM_PIN_DESC結構。 這是一個 PIN,可讓裝置個人化到網路。 如需此 PIN 類型的詳細資訊,請參閱 3GPP 規格 22.022。 |
| 80 | 16 | PinDesc網路子集針 | MBIM_PIN_DESC | 描述網路子集個人化 PIN 的MBIM_PIN_DESC結構。 這是一個 PIN,允許將裝置個人化配置為網路中的特定子集。 如需此 PIN 類型的詳細資訊,請參閱 3GPP 規格 22.022。 |
| 96 | 16 | PinDescServiceProviderPin | MBIM_PIN_DESC | MBIM_PIN_DESC 結構用來描述服務提供者 (SP) 的個人化 PIN。 這是一個 PIN,可讓裝置個人化為服務提供者。 如需此 PIN 類型的詳細資訊,請參閱 3GPP 規格 22.022。 |
| 112 | 16 | PinDescCorporatePin | MBIM_PIN_DESC | MBIM_PIN_DESC 結構描述企業個人化 PIN。 這是一個 PIN,可讓裝置個人化給特定公司。 如需此 PIN 類型的詳細資訊,請參閱 3GPP 規格 22.022。 |
| 128 | 16 | PinDescSubsidyLock | MBIM_PIN_DESC | 描述補貼解除鎖定 PIN 的 MBIM_PIN_DESC 結構。 這是一個 PIN,可讓裝置限制在特定網路上運作。 如需此 PIN 類型的詳細資訊,請參閱 3GPP 規格 22.022。 |
| 144 | 16 | PinDescCustom | MBIM_PIN_DESC | 描述自定義 PIN 的 MBIM_PIN_DESC 結構。 這是自定義廠商定義的 PIN 類型。 它不包含在上述清單中。 |
狀態代碼
| 狀態代碼 | 描述 |
|---|---|
| MBIM_STATUS_需要PIN碼 | PIN 清單作業失敗,因為必須先輸入 PIN 才能繼續此作業。 |
測試
下列測試會在 TestPin HLK 測試清單中執行:
| 測試名稱 | 描述 |
|---|---|
| 固定清單查詢無線電開啟 | 此測試會嘗試在開啟收音機的情況下進行釘選清單查詢。 |
| 釘選列表查詢關閉无线电 | 此測試會嘗試在無線電關閉的情況下進行釘選列表查詢。 |
| NoPinSupport | 此測試會驗證不支援 PIN1 的裝置。 |
| 設定啟用禁用有效PIN碼 | 此測試會使用有效的 PIN 碼來啟用和停用 PIN1。 |
| 設置為禁用長度正確但錯誤的密碼PIN | 此測試會嘗試啟用 PIN1,並使用有效長度但不正確的密碼。 |
| PUK通過錯誤PIN碼啟用禁用可禁用 | 此測試會因多次輸入不正確的 PIN1 而啟用 PUK1,然後再將 PUK1 停用。 |
| 使用無效和有效 PIN 的 PinEx 集變更 | 此測試會啟用 PIN1,然後立即變更 PIN,最後將其停用。 |
| RebootTestMachineToPutPinIntoLockState(重啟測試機器以將 PIN 設為鎖定狀態) | 此測試會重新啟動裝置,讓數據機進入鎖定狀態,並提示有效的 PIN 輸入。 |
| 輸入有效密碼以設置進入 | 此測試會驗證裝置是否處於鎖定狀態,以要求輸入 PIN 碼。 |
TestPowerStates HLK 測試清單中也包含了一個相關的測試:SimPinUnlockAfterHibernate。
記錄分析
範例記錄:
自動解除鎖定:
462678 [0]0F3C.1280::2020-05-05 13:03:46.378805100 [Microsoft-Windows-WWAN-SVC-EVENTS][Request=0x53] Received PinInfo, status=WWAN_STATUS_SUCCESS , Type=WwanPinTypePin1 State=WwanPinStateEnter Attempts=3, miniport={7971731f-33f9-4f1a-9718-087c12e64c5d}
462753 [7]0F3C.2A6C::2020-05-05 13:03:46.379718400 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::maybeUnlockPin: Attempting auto-PIN-unlock. Interface: {{7971731f-33f9-4f1a-9718-087c12e64c5d}}
462809 [7]0F3C.2A6C::2020-05-05 13:03:46.380157500 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Error] CWwanPinSM::maybeUnlockPin: Attempt to auto-unlock PIN succeeded
設定密碼【WwanPinTypePin1】
546408 [3]0F3C.1240::2020/05/02-09:18:09.178460200 [Microsoft-Windows-WWAN-SVC-EVENTS][Request=0x6C] Sent SET PinAction, Type=2(WwanPinTypePin1), Operation=0(WwanPinOperationEnter), miniport={7971731f-33f9-4f1a-9718-087c12e64c5d}, ErrorCode=3407873(WIN=The request will be completed later by NDIS status indication.)
546425 [1]3DB0.12EC::2020/05/02-09:18:09.178564700 [Microsoft.Windows.CellCore.MBBSettingsUX]{"meta":{"provider":"Microsoft.Windows.CellCore.MBBSettingsUX","event":"MBCategory::_SetPinAction. WwanSetInterface succeeded","time":"2020-05-02T16:18:09.1785647Z","cpu":1,"pid":15792,"tid":4844,"channel":11,"level":4}}
546644 [2]0F3C.39E4::2020/05/02-09:18:09.426362600 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::processPinActionResponse: SetPin rsp rcvd (result:0x0) PIN Info (state:1, type:3, attemptsRemaining:3) IsPin1Blocked 0
546645 [2]0F3C.39E4::2020/05/02-09:18:09.426364800 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::maybeCapturePin: Capturing PIN for PIN ENTER/ENABLE operation Interface: {{7971731f-33f9-4f1a-9718-087c12e64c5d}}
546688 [7]3B64.2A80::2020/05/02-09:18:09.426727000 [MbaeApiLogging]{"NotificationCode":"WwanMsmEventTypePinActionComplete: Success","AdapterID":"{7971731f-33f9-4f1a-9718-087c12e64c5d}","NotificationSize":24,"meta":{"provider":"MbaeApiLogging","event":"CWwanTranslator::ProcessWwanNotification","time":"2020-05-02T16:18:09.4267270Z","cpu":7,"pid":15204,"tid":10880,"channel":11,"level":5}}
546702 [0]3B64.242C::2020/05/02-09:18:09.426762000 [Microsoft.Windows.CellCore.MBBSettingsUX]{"meta":{"provider":"Microsoft.Windows.CellCore.MBBSettingsUX","event":"MBMediaManager::ProcessWwanNotification WwanMsmEventTypePinActionComplete","time":"2020-05-02T16:18:09.4267620Z","cpu":0,"pid":15204,"tid":9260,"channel":11,"level":4}}
546710 [7]0F3C.1208::2020/05/02-09:18:09.426809700 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] _PublishSebNotification: Event Source=WwanNotificationSourceMsm, Code=WwanMsmEventTypePinActionComplete
547064 [2]3DB0.1194::2020/05/02-09:18:09.427921200 [MbaeApiLogging]{"NotificationCode":"WwanMsmEventTypePinActionComplete: Success","AdapterID":"{7971731f-33f9-4f1a-9718-087c12e64c5d}","NotificationSize":24,"meta":{"provider":"MbaeApiLogging","event":"CWwanTranslator::ProcessWwanNotification","time":"2020-05-02T16:18:09.4279212Z","cpu":2,"pid":15792,"tid":4500,"channel":11,"level":5}}
547106 [2]3DB0.0B38::2020/05/02-09:18:09.428040100 [Microsoft.Windows.CellCore.MBBSettingsUX]{"meta":{"provider":"Microsoft.Windows.CellCore.MBBSettingsUX","event":"MBMediaManager::ProcessWwanNotification WwanMsmEventTypePinActionComplete","time":"2020-05-02T16:18:09.4280401Z","cpu":2,"pid":15792,"tid":2872,"channel":11,"level":4}}
釘選清單:
465632 [4]0F3C.47F4::2020-05-05 13:03:46.395488200 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: PIN1 (mode:1, format:1, pinlnmin:4, pinlnmax:8)
465633 [4]0F3C.47F4::2020-05-05 13:03:46.395489800 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: PIN2 (mode:1, format:1, pinlnmin:4, pinlnmax:8)
465634 [4]0F3C.47F4::2020-05-05 13:03:46.395491400 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: DEVSIMPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0)
465635 [4]0F3C.47F4::2020-05-05 13:03:46.395492800 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: DEVFIRSTSIMPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0)
465636 [4]0F3C.47F4::2020-05-05 13:03:46.395494200 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: NWPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0)
465637 [4]0F3C.47F4::2020-05-05 13:03:46.395495800 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: NWSUBSETPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0)
465641 [5]0F3C.47F4::2020-05-05 13:03:46.395510100 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: SVCPROVIDERPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0)
465643 [5]0F3C.47F4::2020-05-05 13:03:46.395513700 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: CORPORATEPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0)
465644 [5]0F3C.47F4::2020-05-05 13:03:46.395515200 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: SUBSIDYLOCK (mode:0, format:0, pinlnmin:0, pinlnmax:0)
WinRT API
另請參閱
如需 PIN 作業的其他資訊,請參閱 OID_WWAN_PIN。