次の方法で共有


MB PIN 操作

概要

このトピックでは、MB デバイス メモリまたはサブスクライバー ID モジュール (SIM) カードに格納されているサブスクリプション情報のアクセス制御に関連する操作について説明します。 これには、暗証番号 (PIN) の有効化、無効化、または変更のほか、PIN または個人用ロック解除キー (PUK) を使用したロック解除が含まれます。

アーキテクチャ/フロー

PIN を有効/無効/ロック解除/変更するためのユーザー アクション

PIN の有効化、無効化、ロック解除、変更に関するユーザー アクションを示すフローチャート。

PIN1/PUK1 状態の携帯ネットワーク UX クエリ

携帯ネットワーク 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 は 1 回だけ報告する必要があります。

PIN1 として報告される PIN は PIN1 ガイドラインに準拠している必要があります。CDMA ベースのデバイスの場合、これは電源オン検証または識別機能を提供する PIN であり、GSM ベースのデバイスの場合はサブスクライバー ID モジュール (SIM) PIN です。

関数は、準備完了状態が MBIMSubscriberReadyStateInitialized に変わるか、準備完了状態が MBIMSubscriberReadyStateDeviceLocked (PIN ロック) の場合に、この情報を返すことができる必要があります。 関数は、可能な限り、この情報を他の準備完了状態で返す必要もあります。

クエリのみ

クエリ メッセージの InformationBuffer が空です。 MBIM_COMMAND_DONEの InformationBuffer には、MBIM_PIN_LIST_INFOが含まれています。

パラメーター

オン クエリ 通知
命令 なし 空っぽ なし
応答 なし MBIM_PIN_LIST_INFO なし

データ構造

MBIM_PIN_MODE

種類 価値
MBIMPinModeNotSupported 0
MBIMピンモード有効 1
MBIMPinModeDisabled (MBIMピンモード無効) 2

MBIM_PIN_FORMAT

種類 価値
MBIMPinFormatUnknown 0
MBIMPinFormatNumeric 1
MBIMPinFormatAlphaNumeric 2

MBIM_PIN_DESC

オフセット サイズ フィールド タイプ 説明
0 4 PinMode MBIM_PIN_MODE 上の表 MBIM_PIN_MODEを参照してください。 ロックが有効かどうかが表示されます。 ロック状態がロックされているかロック解除されているかは表示されません。
4 4 PinFormat MBIM_PIN_FORMAT 上の表 MBIM_PIN_FORMATを参照してください。
8 4 Pin長さ最小値 UINT32 PIN の最小文字数。 デバイスでは、16 より大きい値を指定しないでください。 PIN の長さが使用できない場合は、デバイスで0xffffffffを指定する必要があります。
12 4 ピンの最大長 UINT32 PIN の最大文字数。 デバイスでは、16 より大きい値を指定しないでください。 PIN の長さが使用できない場合は、デバイスで0xffffffffを指定する必要があります。

クエリ

InformationBuffer は null 、InformationBufferLength は ゼロでなければなりません。

[応答]

InformationBuffer では、次の構造を使用する必要があります。

MBIM_PIN_LIST_INFO

オフセット サイズ フィールド タイプ 説明
0 16 PinDescPin1 MBIM_PIN_DESC PIN1 を記述するMBIM_PIN_DESC構造。 GSM ベースのデバイスの場合、これはサブスクライバー ID モジュール (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 MBIM_PIN_DESCネットワーク パーソナル化 PIN を記述する構造。 これは、デバイスをネットワークにカスタマイズできるようにする PIN です。 この PIN の種類の詳細については、3GPP 仕様 22.022 を参照してください。
80 16 PinDescNetworkSubsetPin MBIM_PIN_DESC MBIM_PIN_DESCネットワーク サブセットのパーソナル化 PIN を記述する構造です。 これは、デバイスをネットワークのサブセットに合わせてカスタマイズできるようにする 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 補助を記述するMBIM_PIN_DESC構造は PIN のロックを解除します。 これは、デバイスが特定のネットワークで動作するように制限できる PIN です。 この PIN の種類の詳細については、3GPP 仕様 22.022 を参照してください。
144 16 PinDescCustom MBIM_PIN_DESC MBIM_PIN_DESCカスタム PIN を記述する構造体。 これは、ベンダーが定義したカスタム PIN の種類です。 上記の一覧には含まれていません。

状態コード

状態コード 説明
MBIM_STATUS_PIN_REQUIRED (PINが必要です) この操作を続行する前に PIN を入力する必要があるため、PIN リスト操作に失敗しました。

テスティング

次のテストは、 TestPin HLK テスト リストの一部として実行されます。

テスト名 説明
ピンリストクエリラジオオン このテストでは、無線をオンにしたピン リスト クエリが試行されます。
PinListQueryRadioOff このテストでは、無線をオフにしてピン リスト クエリを試行します。
NoPinサポート このテストでは、PIN1 をサポートしていないデバイスを検証します。
PinExSetEnableDisableWithValidPin このテストでは、有効なピンで PIN1 を有効または無効にします。
PinExSetDisableIncorrectPinWithValidLength このテストでは、有効な長さの正しくない PIN で PIN1 を有効にしようとします。
PukEnableDisableThroughIncorrectPinExDisable このテストでは、正しくない PIN1 を複数回入力して PUK1 を有効にし、PUK1 を無効にします。
PinExSetChangeWithBothInvalidAndValidPin このテストでは、PIN1 を有効にし、すぐに PIN を変更して無効にします。
テストマシンを再起動してPINをロック状態にする このテストでは、デバイスが再起動され、モデムがロック状態になり、有効な PIN エントリが求められます。
PinExSetEnterWithValidPin このテストでは、PIN コード エントリを要求するためにデバイスがロック状態であることを検証します。

TestPowerStates HLK テスト リストには、関連する 1 つのテスト (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 

PIN の設定 (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

MobileBroadbandPin クラス

こちらもご覧ください

OID_WWAN_PIN_EX2

OID_WWAN_PIN_LIST

MB UICC アプリケーションとファイル システム アクセス する

PIN 操作の詳細については、「 OID_WWAN_PIN」を参照してください。