MB-PIN-Vorgänge
Übersicht
In diesem Thema werden die Vorgänge im Zusammenhang mit der Zugriffssteuerung von Abonnementinformationen beschrieben, die entweder im MB-Gerätespeicher oder auf der SIM-Karte (Subscriber Identity Module) gespeichert sind. Dies umfasst das Aktivieren, Deaktivieren oder Ändern der persönlichen Identifikationsnummer (PIN) sowie das Entsperren per PIN oder persönlichem Entsperrschlüssel (PUK).
Architektur/Flows
Benutzeraktionen zum Aktivieren/Deaktivieren/Entsperren/Ändern der PIN
Mobilfunk-UX-Abfrage für PIN1/PUK1-Status
Automatische Entsperrung nach dem Fortsetzen des Ruhezustands
MBIM_CID_MS_PIN_EX
Diese CID wird hier beschrieben: MBIM_CID_MS_PIN_EX
MBIM_CID_PIN_LIST
Beschreibung
Dieser Befehl gibt eine Liste aller verschiedenen Typen von persönlichen Identifikationsnummern (PINs) zurück, die vom MB-Gerät unterstützt werden, sowie zusätzliche Details für jeden PIN-Typ, z. B. die Länge der PIN (minimale und maximale Länge), das PIN-Format und den PIN-Eingabemodus (aktiviert/deaktiviert/nicht verfügbar). Diese CID gibt auch den aktuellen Modus jeder PIN an, die von der Funktion unterstützt wird. Funktionen müssen alle unterstützten PINs melden. PIN1 für Geräte mit mehreren Modus darf jedoch nur einmal gemeldet werden.
Eine PIN, die als PIN1 gemeldet wird, muss den PIN1-Richtlinien entsprechen: Für CDMA-basierte Geräte ist dies eine PIN, die Power-On-Überprüfungs- oder Identifikationsfunktionen bietet, und für GSM-basierte Geräte ist dies eine SIM-PIN (Subscriber Identity Module).
Funktionen müssen in der Lage sein, diese Informationen zurückzugeben, wenn sich der Bereitzustand in MBIMSubscriberReadyStateInitialized ändert oder wenn der Ready-Zustand MBIMSubscriberReadyStateDeviceLocked ist (PIN gesperrt). Funktionen sollten diese Informationen auch in anderen Ready-Status zurückgeben, wenn möglich.
Nur Abfrage
InformationBuffer der Abfragemeldung ist leer. InformationBuffer von MBIM_COMMAND_DONE enthält eine MBIM_PIN_LIST_INFO.
Parameter
Set | Abfrage | Benachrichtigung | |
---|---|---|---|
Befehl | – | Empty | – |
Antwort | – | MBIM_PIN_LIST_INFO | – |
Datenstrukturen
MBIM_PIN_MODE
Typen | Wert |
---|---|
MBIMPinModeNotSupported | 0 |
MBIMPinModeEnabled | 1 |
MBIMPinModeDisabled | 2 |
MBIM_PIN_FORMAT
Typen | Wert |
---|---|
MBIMPinFormatUnknown | 0 |
MBIMPinFormatNumeric | 1 |
MBIMPinFormatAlphaNumeric | 2 |
MBIM_PIN_DESC
Offset | Size | Feld | type | Beschreibung |
---|---|---|---|---|
0 | 4 | PinMode | MBIM_PIN_MODE | Siehe tabelle MBIM_PIN_MODE oben. Dies zeigt an, ob die Sperre aktiviert ist oder nicht. Es wird nicht angezeigt, ob der Sperrstatus gesperrt oder entsperrt ist. |
4 | 4 | PinFormat | MBIM_PIN_FORMAT | Siehe tabelle MBIM_PIN_FORMAT oben. |
8 | 4 | PinLengthMin | UINT32 | Die Mindestanzahl von Zeichen in der PIN. Geräte sollten keinen Wert angeben, der größer als 16 ist. Geräte sollten 0xffffffff angeben, wenn die PIN-Länge nicht verfügbar ist. |
12 | 4 | PinLengthMax | UINT32 | Die maximale Anzahl von Zeichen in der PIN. Geräte sollten keinen Wert angeben, der größer als 16 ist. Geräte sollten 0xffffffff angeben, wenn die PIN-Länge nicht verfügbar ist. |
Abfrage
Der InformationBuffer muss NULL und InformationBufferLength null sein.
Antwort
Die folgende Struktur ist im InformationBuffer zu verwenden:
MBIM_PIN_LIST_INFO
Offset | Size | Feld | type | Beschreibung |
---|---|---|---|---|
0 | 16 | PinDescPin1 | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die PIN1 beschreibt. Für GSM-basierte Geräte ist dies eine SIM-PIN (Subscriber Identity Module). Für CDMA-basierte Geräte wird die Einschaltgerätesperre als PIN1 gemeldet. |
16 | 16 | PinDescPin2 | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die PIN2 beschreibt. Hierbei handelt es sich um eine SIM-PIN2, die bestimmte SIM-Funktionen schützt. |
32 | 16 | PinDescDeviceSimPin | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die die Device-to-SIM-Karte PIN beschreibt. Dies ist eine PIN, die das Gerät an eine bestimmte SIM-Karte sperrt. |
48 | 16 | PinDescDeviceFirstSimPin | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die geräte-zu-sehr-erste-SIM-Karte-PIN beschreibt. Dies ist eine PIN, die das Gerät mit der ersten eingesteckten SIM-Karte sperrt. |
64 | 16 | PinDescNetworkPin | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die die Netzwerkpersonalisierungs-PIN beschreibt. Dies ist eine PIN, mit der das Gerät in ein Netzwerk personalisiert werden kann. Weitere Informationen zu diesem PIN-Typ finden Sie unter 3GPP-Spezifikation 22.022. |
80 | 16 | PinDescNetworkSubsetPin | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die die Netzwerkteilset-Personalisierungs-PIN beschreibt. Dies ist eine PIN, mit der das Gerät in eine Teilmenge eines Netzwerks personalisiert werden kann. Weitere Informationen zu diesem PIN-Typ finden Sie unter 3GPP-Spezifikation 22.022. |
96 | 16 | PinDescServiceProviderPin | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die die Personalisierungs-PIN des Dienstanbieters (SP) beschreibt. Dies ist eine PIN, mit der das Gerät an einen Dienstanbieter personalisiert werden kann. Weitere Informationen zu diesem PIN-Typ finden Sie unter 3GPP-Spezifikation 22.022. |
112 | 16 | PinDescCorporatePin | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die die Personalisierungs-PIN des Unternehmens beschreibt. Dies ist eine PIN, mit der das Gerät für ein bestimmtes Unternehmen personalisiert werden kann. Weitere Informationen zu diesem PIN-Typ finden Sie unter 3GPP-Spezifikation 22.022. |
128 | 16 | PinDescSubsidyLock | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die die Subvention beschreibt, entsperrt PIN. Dies ist eine PIN, mit der das Gerät für den Betrieb in einem bestimmten Netzwerk eingeschränkt werden kann. Weitere Informationen zu diesem PIN-Typ finden Sie unter 3GPP-Spezifikation 22.022. |
144 | 16 | PinDescCustom | MBIM_PIN_DESC | MBIM_PIN_DESC Struktur, die die benutzerdefinierte PIN beschreibt. Hierbei handelt es sich um einen benutzerdefinierten vom Anbieter definierten PIN-Typ. Sie ist nicht in der obigen Liste enthalten. |
Statuscodes
Statuscode | BESCHREIBUNG |
---|---|
MBIM_STATUS_PIN_REQUIRED | Fehler beim Vorgang der PIN-Liste, da eine PIN eingegeben werden muss, bevor dieser Vorgang fortgesetzt werden kann. |
Testen
Die folgenden Tests werden als Teil der TestPin HLK-Testliste ausgeführt:
Prüfungsname | BESCHREIBUNG |
---|---|
PinListQueryRadioOn | Dieser Test versucht eine Pinlistenabfrage mit eingeschaltetem Radio. |
PinListQueryRadioOff | Bei diesem Test wird eine Anheftlistenabfrage mit ausgeschaltetem Funkgerät versucht. |
NoPinSupport | Dieser Test überprüft ein Gerät, das PIN1 nicht unterstützt. |
PinExSetEnableDisableWithValidPin | Dieser Test aktiviert und deaktiviert PIN1 mit einer gültigen Pin. |
PinExSetDisableIncorrectPinWithValidLength | Dieser Test versucht, PIN1 mit einem falschen Pin mit gültiger Länge zu aktivieren. |
PukEnableDisableThroughIncorrectPinExDisable | Dieser Test aktiviert PUK1 durch mehrfache Eingabe einer falschen PIN1 und deaktiviert dann PUK1. |
PinExSetChangeWithBothInvalidAndValidPin | Dieser Test aktiviert PIN1, ändert sofort die PIN und deaktiviert sie. |
RebootTestMachineToPutPinIntoLockState | Bei diesem Test wird das Gerät neu gestartet, um das Modem in den Sperrzustand zu versetzen und eine gültige PIN-Eingabe einzufordern. |
PinExSetEnterWithValidPin | Dieser Test überprüft, ob sich das Gerät im Sperrzustand befindet, um die PIN-Codeeingabe anzufordern. |
Die TestPowerStates HLK-Testliste enthält auch einen relevanten Test – SimPinUnlockAfterHibernate.
Protokollanalyse
Beispielprotokolle:
Automatische Entsperrung:
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
Pin festlegen (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}}
Liste anheften:
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
Weitere Informationen
MB UICC-Anwendungs- und Dateisystemzugriff
Weitere Informationen zu PIN-Vorgängen finden Sie unter OID_WWAN_PIN.