Provisi Akun

Provisi mengacu pada konfigurasi komputer Windows dengan informasi yang diperlukan untuk terhubung ke jaringan operator. Provisi biasanya dilakukan setelah pembelian langganan broadband seluler. Windows menerima file provisi berbasis XML dari operator. API Provisi menerapkan file XML provisi dari operator, baik dengan menggunakan aplikasi broadband seluler atau melalui situs web pembelian.

Diagram berikut mengilustrasikan konten dan hierarki file XML provisi.

Diagram yang memperlihatkan hierarki file XML provisi untuk broadband seluler.

Untuk informasi selengkapnya tentang skema provisi, lihat Skema CarrierControlSchema.

Memperbarui metadata provisi

Ada beberapa cara untuk memperbarui metadata provisi di komputer.

Aplikasi broadband seluler

Setelah aplikasi broadband seluler diinstal di komputer, aplikasi tersebut dapat mengambil atau menghasilkan file provisi yang diperbarui berdasarkan pemicu apa pun yang Anda terapkan di aplikasi.

Aplikasi broadband seluler dapat menerapkan file provisi dengan menggunakan API Windows.Networking.NetworkOperator.ProvisioningAgent . Jika aplikasi dikaitkan dengan ID Akun Jaringan, aplikasi dapat menggunakan CreateFromNetworkAccountId untuk menyediakan metadata yang tidak ditandatangani. Jika aplikasi tidak terkait dengan ID Akun Jaringan, aplikasi harus menggunakan konstruktor default untuk ProvisioningAgent dan menandatangani XML.

Aplikasi broadband seluler dapat menggunakan pemicu berikut untuk memperbarui metadata provisi:

  • Penggunaan Setelah batas data awalnya dikonfigurasi, Anda dapat memberi tahu Windows untuk memberi tahu aplikasi setiap kenaikan penggunaan 5%. Ini memastikan bahwa aplikasi mengambil informasi penggunaan terbaru.

  • Timer Timer dapat memperbarui metadata provisi pada interval waktu yang sesuai.

  • SMS Masuk Anda dapat mengirim pesan SMS yang dipahami aplikasi Anda. Ini mungkin menentukan pesan yang memulai refresh, atau secara otomatis memeriksa penggunaan yang diperbarui saat menerima pemberitahuan ambang batas.

  • Layanan Pemberitahuan Windows Aplikasi UWP apa pun dapat mendaftar untuk pemberitahuan push dan mengambil tindakan berdasarkan kontennya. Anda dapat menggunakan ini sebagai saluran pemberitahuan untuk menyediakan pembaruan.

  • Perubahan lokasi besar Jika parameter yang berbeda berlaku untuk pengguna yang berada di lokal yang berbeda, perubahan lokasi mungkin memicu aplikasi untuk menerapkan pengaturan yang diperbarui untuk lokasi baru pengguna.

  • Perubahan zona waktu Untuk ukuran wilayah yang besar, perubahan zona waktu sistem dapat digunakan sebagai proksi untuk perubahan lokasi. Hal ini dapat menarik perhatian khusus pada komputer yang tidak memiliki GPS atau Mobile Broadband.

Provisi berbasis web

Situs web dapat menyediakan data provisi dengan menggunakan window.external.msProvisionNetworks API. File provisi yang disediakan ke API ini harus ditandatangani dengan menggunakan sertifikat X.509 dan XML-DSig.

Sertifikat dapat disediakan sebelumnya ke komputer dengan menggunakan database APN, metadata layanan, atau file metadata provisi akun sebelumnya. Jika sertifikat sudah tepercaya, tidak ada interaksi pengguna. Jika sertifikat sebelumnya tidak diketahui oleh komputer, sertifikat tersebut harus berupa sertifikat EV, dan pengguna dimintai persetujuan sebelum sertifikat diterima.

Refresh provisi otomatis

File provisi dapat menyertakan arahan untuk Windows untuk secara otomatis mengambil file provisi yang diperbarui pada interval terjadwal atau sebagai respons terhadap pesan SMS tertentu. Metode ini tidak mengharuskan aplikasi broadband seluler diinstal pada komputer lokal.

Menyediakan konten metadata

Metadata provisi mencakup bagian berikut:

Untuk informasi selengkapnya tentang bagian ini, lihat skema CarrierControlSchema.

Global

Bagian global diperlukan dalam setiap file provisi. Elemen yang diperlukan di bagian ini adalah sebagai berikut:

  • CarrierId GUID yang secara unik mengidentifikasi organisasi yang menulis file. Jika Anda membangun aplikasi broadband seluler, Anda harus menggunakan GUID yang Anda tentukan di bidang Nomor LayananServiceInfo.xml dalam paket metadata layanan. Untuk informasi tentang skema paket metadata layanan, lihat Referensi skema paket metadata layanan.

    Catatan

    Ini adalah nomor layanan yang sama dengan yang Anda berikan di wizard Buat pengalaman broadband seluler di Dasbor Windows Dev Center – Perangkat Keras. Jika Anda tidak membuat aplikasi broadband seluler, Anda dapat membuat GUID untuk penggunaan organisasi Anda. Dalam kedua kasus, Anda harus selalu menggunakan GUID yang sama pada semua file provisi yang masalah organisasi Anda.

  • SubscriberId String yang secara unik mengidentifikasi pelanggan di organisasi Anda. Jika Anda adalah operator seluler, ini harus berupa rentang IMSI atau ICCID untuk operator GSM atau ID penyedia atau nama penyedia untuk operator CDMA. Jika Anda bukan operator seluler, Anda dapat memilih string yang cukup unik.

Aktivasi

Aktivasi perangkat terjadi setelah proses aktivasi selesai di ujung belakang. PC mungkin perlu mengikuti instruksi tertentu sebelum menyambungkan ke jaringan. Mesin provisi menggunakan instruksi aktivasi yang diterima dalam elemen aktivasi perangkat. Jika tidak ada nilai yang ditentukan, maka tidak ada tindakan klien yang diperlukan. Tindakan yang tersedia meliputi:

  • Sambungkan kembali Putuskan sambungan dan sambungkan ke jaringan operator.

    Daftar ulang Putuskan sambungan dan daftar ke jaringan operator.

  • Data Data atau instruksi yang ingin Anda kirim ke perangkat untuk mengaktifkan koneksi. Mesin Provisi meneruskan data ini apa adanya ke perangkat. Untuk CDMA, ini dapat mencakup instruksi seperti *228 untuk memulai Sesi Pemrograman OTA dan menyambungkan kembali ke jaringan.

Informasi broadband seluler

Informasi broadband seluler berisi beberapa elemen:

MBNProfiles

Menentukan informasi pelanggan di jaringan operator seluler. Ada dua profil berbeda yang dapat digunakan:

  • PurchaseProfile: Informasi yang diperlukan untuk terhubung ke jaringan operator untuk membeli langganan baru.

  • DefaultProfile Setiap langganan broadband seluler dapat memiliki satu profil default yang digunakan untuk terhubung ke operator jaringan rumah. Windows Pengelola Sambungan menggunakan profil ini untuk menyambungkan otomatis ke jaringan.

    <MBNProfiles>
        <DefaultProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WWAN/v1">
          <Name>Contoso MBN</Name>
          <Description>Contoso Mobile Broadband</Description>
          <HomeProviderName>Contoso MBN</HomeProviderName>
          <Context>
            <AccessString>contoso.com</AccessString>
            <UserLogonCred>
              <UserName>mbuser</UserName>
              <Password>[PLACEHOLDER]</Password>
            </UserLogonCred>
          </Context>
        </DefaultProfile>
      </MBNProfiles>
    

Pencitrraan merek

Penting

Mulai Windows 10, versi 1709, bidang branding yang disediakan oleh PROVISIONINGAgent API telah digantikan oleh bidang branding dalam database COSA. Logo telah digantikan oleh Branding Icon di COSA, dan Nama telah digantikan oleh Branding Name di COSA.

Logo dan Nama tidak akan lagi dipertimbangkan saat provisi di Windows 10, versi 1709 dan yang lebih baru. API ProvisioningAgent tidak akan melemparkan kesalahan jika digunakan, tetapi Anda harus mengubah Ikon Branding dan Nama Branding di COSA sebagai gantinya.

Untuk informasi selengkapnya tentang Ikon Branding dan Nama Branding, lihat Pengaturan database COSA/APN Desktop (Pengaturan khusus COSA Desktop).

Branding memungkinkan Anda menentukan bagaimana Windows menampilkan jaringan broadband seluler Anda. Informasi ini mengambil alih metadata layanan apa pun, jika ada. Jika tidak ada informasi yang disediakan, konten paket metadata layanan akan digunakan. Elemen branding adalah sebagai berikut:

  • Logo File .PNG or.BMP yang dikodekan Base64 yang disematkan dalam XML. Logo ini diterapkan ke profil broadband seluler Anda untuk ditampilkan di Daftar Jaringan.

  • Nama Mengatur nama tampilan operator untuk profil broadband seluler.

Penguraian SMS

Anda dapat menyediakan aturan untuk mengidentifikasi pesan teks dan mengekstrak informasi sebagai bagian dari file XML provisi. Anda dapat menggunakan pesan SMS untuk memperbarui statistik penggunaan data atau untuk memulai refresh informasi provisi. Pesan-pesan ini dapat diidentifikasi dengan kombinasi hal berikut:

  • Jenis pembawa (SMS/USSD)

  • Pengirim (khusus SMS)

  • Regex

Untuk informasi selengkapnya tentang pemberitahuan SMS, lihat Mengaktifkan pemberitahuan operator seluler dan peristiwa sistem.

Setiap aturan berisi informasi berikut:

  • Diam Jika nilai ini benar, pesan hanya menghasilkan peristiwa MobileOperatorNotification . Jika nilai ini salah, pesan menghasilkan peristiwa SmsMessageReceived .

  • Pengirim yang diizinkan Menentukan alamat pengirim yang dipesan dari mana pemberitahuan diizinkan untuk tiba. Nomor ini harus sama persis dengan nomor pengirim yang diterima dalam pesan SMS, termasuk format internasional.

  • Pola Ekspresi reguler untuk mengidentifikasi dan secara opsional mengekstrak bidang data dari pesan teks. Pola ini akan cocok dengan semua pesan dari pengirim: [^]*

  • RuleId Pengidentifikasi untuk aturan ini, yang diteruskan ke aplikasi broadband seluler sebagai bagian dari peristiwa MobileOperatorNotification . Pengidentifikasi ini memungkinkan aplikasi untuk mengetahui aturan mana yang menyebabkan SMS memicu peristiwa MobileOperatorNotification, dan dapat mengurangi kebutuhan aplikasi untuk mengurai pesan lagi.

  • Bidang dan grup Setiap grup penangkapan dalam pola ekspresi reguler terkait dengan bidang bernama. Ini digunakan untuk mengekstrak dan mengubah data menjadi sekumpulan nilai yang dapat digunakan. Misalnya, grup kecocokan pertama dapat diikat ke bidang Penggunaan dan grup kecocokan kedua dapat diikat ke bidang UsageDataLimit . Asosiasi ini menunjukkan bahwa nilai pertama adalah informasi penggunaan saat ini, dan nilai kedua adalah penggunaan maksimum yang diizinkan.

    • Penggunaan, UsagePercentage, UsageOverage, UsageOveragePercentage: Mengekspresikan penggunaan saat ini sebagai angka absolut, sebagai persentase batas data, sebagai angka melebihi batas data, atau sebagai persentase melebihi batas data. Nilai absolut dapat mereferensikan grup yang menentukan unit tempat nilai dinyatakan.

    • UsageTimestamp: Tanggal dan waktu di mana bidang penggunaan dihitung. Informasi ini harus disertakan jika ada bidang Usage\* yang disertakan. String format berisi pengidentifikasi berikut untuk mengekspresikan bagaimana substring harus ditafsirkan:

      Pengidentifikasi Deskripsi
      %d Hari dalam sebulan sebagai angka desimal (01 – 31)
      %H Jam dalam format 24 jam (00 – 23)
      %I Jam dalam format 12 jam (01 – 12)
      %m Bulan sebagai angka desimal (01 – 12)
      %M Menit sebagai angka desimal (00 – 59)
      %S Kedua sebagai angka desimal (00 – 59)
      %y Tahun tanpa abad, sebagai angka desimal (00 – 99)
      %Y Tahun dengan abad, sebagai angka desimal (0000-9999)
      %p Indikator AM/PM
      %#d, %#H, %#I, %#m, %#M, %#S, %#y, %#Y Sama seperti di atas tetapi tanpa nol di depannya
    • DataLimit: Jumlah absolut byte yang diizinkan digunakan pengguna; ini termasuk grup yang menentukan unit tempat nilai dinyatakan.

    • OverDataLimit, Congested: Memodifikasi bendera yang dilaporkan ke aplikasi untuk menunjukkan bahwa pengguna telah melebihi batas data mereka atau bahwa jaringan berada di bawah beban berat.

    • InboundBandwidth, OutboundBandwidth: Jika bandwidth maksimum diberlakukan oleh jaringan, ini menentukan grup yang mewakili nilai dan unit.

    • PlanType: Menentukan bagaimana pengguna ditagih untuk penggunaan di masa mendatang.

Hati Karena pesan SMS memengaruhi perilaku Windows, hanya pesan SMS tepercaya yang dapat digunakan. Keamanan dipertahankan dengan membatasi alamat pengirim. Metode keamanan ini mengasumsikan bahwa SMS Gateway jaringan Anda memastikan bahwa pesan dari pengirim terbatas tidak dapat di-spoofed.

informasi Wi-Fi

Bagian ini memungkinkan Anda menyediakan sejumlah profil jaringan Wi-Fi untuk digunakan Windows. Format bagian ini mirip dengan skema XML yang digunakan oleh WLAN API asli Windows.

Catatan

Satu profil dapat berisi beberapa SSD, jika semua pengaturan lainnya sama. Jika jaringan yang berbeda bervariasi dengan cara lain (metode autentikasi, pengaturan enkripsi, paket, dan sebagainya), Anda harus membuat profil tambahan.

Ketika Anda menentukan bagian WLAN, Anda juga harus menentukan semua profil yang harus dikonfigurasi di komputer. Jika profil tersebut mereferensikan paket data, bagian paket juga harus disertakan. Perilaku yang terjadi ketika bagian ini diproses adalah sebagai berikut:

  • Jika komputer memiliki profil yang tidak lagi ditentukan, profil tersebut akan dihapus.

  • Jika Anda menentukan profil, profil akan diperbarui atau dibuat.

  • Bagian WLAN kosong menghapus semua profil.

  • Menghilangkan bagian WLAN membuat profil WLAN pada komputer tidak berubah.

Simpul tambahan di bagian ini adalah paket terkait. Simpul ini memungkinkan Windows untuk mengaitkan profil WLAN dengan paket yang dijelaskan di bagian paket. Rencana ini memungkinkan Anda menginformasikan Windows tentang status pengukuran jaringan dan memengaruhi perilaku Windows selama komputer terhubung ke jaringan.

Jaringan tidak terenkripsi, tidak ada autentikasi otomatis

Profil ini mengonfigurasi Windows untuk tersambung ke jaringan terbuka.

  • Jika jaringan ini berisi portal tawanan, browser dibuka setelah koneksi ke jaringan.

  • Jika jaringan tidak berisi portal tawanan, pengguna terhubung tanpa tindakan lebih lanjut.

<WLANProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v1">
  <name>Contoso Wi-Fi</name>
  <SSIDConfig>
    <SSID>
      <name>Contoso Wi-Fi</name>
    </SSID>
  </SSIDConfig>
  <MSM>
    <security>
      <authEncryption>
        <authentication>open</authentication>
        <encryption>none</encryption>
        <useOneX>false</useOneX>
      </authEncryption>
    </security>
  </MSM>
</WLANProfile>

Jaringan tidak terenkripsi, autentikasi WISPr

Profil ini mengonfigurasi Windows untuk tersambung ke jaringan terbuka dan menggunakan autentikasi Wireless Internet Service Provider roaming (WISPr):

  • Jika jaringan berisi portal tawanan berkemampuan WISPr, nama pengguna dan kata sandi yang ditentukan dikirimkan ke server autentikasi yang ditentukan.

  • Jika portal tawanan tidak mampu wispr, browser dibuka setelah koneksi ke jaringan.

  • Jika jaringan tidak berisi portal tawanan, pengguna terhubung tanpa tindakan lebih lanjut.

<WLANProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v1">
  <name>Contoso Wi-Fi</name>
  <SSIDConfig>
    <SSID>
      <name>Contoso Wi-Fi</name>
    </SSID>
  </SSIDConfig>
  <MSM>
    <security>
      <authEncryption>
        <authentication>open</authentication>
        <encryption>none</encryption>
        <useOneX>false</useOneX>
      </authEncryption>
      <HotspotProfile xmlns="http://www.microsoft.com/networking/WLAN/HotspotProfile/v1">
        <UserName>WisprUser1</UserName>
        <Password>[PLACEHOLDER]</Password>
        <TrustedDomains>
          <TrustedDomain>www.contosoportal.com</TrustedDomain>
        </TrustedDomains>
      </HotspotProfile>
    </security>
  </MSM>
</WLANProfile>

Jaringan terenkripsi, autentikasi EAP-SIM

Profil ini mengonfigurasi Windows untuk tersambung ke jaringan terenkripsi dengan menggunakan SIM sebagai jenis autentikasi, seperti jaringan Hotspot 2.0. Hotspot 2.0 mendefinisikan jaringan seperti itu untuk digunakan WPA2-Enterprise dengan autentikasi EAP-SIM.

<WLANProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v1">
  <name>Contoso Wi-Fi</name>
  <SSIDConfig>
    <SSID>
      <name>Contoso Wi-Fi</name>
    </SSID>
  </SSIDConfig>
  <MSM>
    <security>
      <authEncryption>
        <authentication>WPA2</authentication>
        <encryption>AES</encryption>
        <useOneX>true</useOneX>
      </authEncryption>
      <OneX xmlns="http://www.microsoft.com/networking/OneX/v1">
        <EAcomputeronfig>
          <!-- The config XML for all EA methods can be found at: https://learn.microsoft.com/openspecs/windows_protocols/ms-gpwl/44d403cd-4b2b-4519-b475-b48dc7124bfb -->
          <EapHostConfig xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
            <EapMethod>
              <Type>18</Type>
              <VendorId>0</VendorId>
              <VendorType>0</VendorType>
              <AuthorId>311</AuthorId>
            </EapMethod>
            <Config xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
              <EapSim xmlns="http://www.microsoft.com/provisioning/EapSimConnectionPropertiesV1">
                <Realm Enabled="true"></Realm>
              </EapSim>
            </Config>
          </EapHostConfig>
        </EAcomputeronfig>
      </OneX>
    </security>
  </MSM>
</WLANProfile>

Jaringan tidak terenkripsi, autentikasi berbasis aplikasi

Profil ini mengonfigurasi Windows untuk terhubung ke jaringan terbuka dan menggunakan autentikasi WISPr bekerja sama dengan aplikasi broadband seluler Anda.

  • Jika jaringan berisi portal tawanan, aplikasi Anda dibuka di latar belakang untuk memberikan kredensial WISPr. Info masuk kemudian dikirimkan ke server autentikasi yang ditentukan.

  • Jika portal tawanan tidak mampu wispr, browser dibuka setelah koneksi ke jaringan.

  • Jika jaringan tidak berisi portal tawanan, pengguna terhubung tanpa tindakan lebih lanjut.

<WLANProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v1">
  <name>Contoso WiFi</name>
  <SSIDConfig>
    <SSID>
      <name>Contoso Wi-Fi</name>
    </SSID>
  </SSIDConfig>
  <MSM>
    <security>
      <authEncryption>
        <authentication>open</authentication>
        <encryption>none</encryption>
        <useOneX>false</useOneX>
      </authEncryption>
      <HotspotProfile xmlns="http://www.microsoft.com/networking/WLAN/HotspotProfile/v1">
        <ExtAuth>
          <ExtensionId>YourAppIdGoesHere</ExtensionId>
        </ExtAuth>
        <TrustedDomains>
          <TrustedDomain>www.contosoportal.com</TrustedDomain>
        </TrustedDomains>
      </HotspotProfile>
    </security>
  </MSM>
</WLANProfile>

Informasi paket

Setiap broadband seluler dan profil hotspot mereferensikan paket. Beberapa profil dapat mereferensikan paket yang sama. Paket dijelaskan di bagian tingkat atas terpisah.

Paket dibagi menjadi dua bagian—Deskripsi dan Penggunaan. Ini memungkinkan Anda untuk awalnya memberikan profil dan deskripsi dalam file provisi yang lebih besar, lalu kemudian menyediakan file provisi yang lebih kecil yang hanya berisi penggunaan pelanggan saat ini.

Informasi ini digunakan untuk secara langsung memengaruhi perilaku Windows, dan diberikan kepada aplikasi untuk menyesuaikan perilakunya dengan jaringan. Informasi ini dapat disediakan untuk aplikasi pihak ketiga melalui API informasi jaringan.

Deskripsi

Elemen yang umumnya berubah dengan frekuensi rendah selama periode langganan pelanggan, termasuk:

  • PlanType Jenis hubungan penagihan yang dimiliki pelanggan dengan operator:

    • Unrestricted Penggunaan tidak dikenakan biaya tambahan.

    • Tetap Pengguna dialokasikan sejumlah penggunaan dengan biaya tetap.

    • Variabel Pengguna membayar berdasarkan penggunaan.

  • SecurityUpdatesExempt Nilai Boolean yang menentukan apakah pembaruan keamanan dihitung terhadap penggunaan pelanggan.

  • DataLimitInMegabytes Penggunaan yang dialokasikan pengguna, jika PlanTypeDiperbaiki.

  • Siklus Penagihan Menentukan tanggal dan waktu mulai paket, durasinya, dan apa yang terjadi di akhir siklus penagihan.

  • BandwidthInKbps Kecepatan koneksi pengguna seperti yang diizinkan oleh jaringan; ini dapat mencerminkan norma untuk rencana mereka, atau mencerminkan tingkat yang lebih rendah yang saat ini diberlakukan oleh operator karena kemacetan atau penggunaan yang berlebihan (maksimum 2 Gbps).

  • MaxTransferSizeInMegabytes Bilangan bulat yang mengekspresikan ukuran unduhan individu yang harus diizinkan oleh aplikasi yang sesuai melalui koneksi terukur, tanpa persetujuan pengguna eksplisit dari koneksi yang digunakan.

  • UserSMSEnabled Menunjukkan apakah paket menyertakan dukungan SMS pengguna-ke-pengguna. Jika true, Windows akan menjaga perangkat tetap terpasang pada jaringan di Connected Standby bahkan ketika antarmuka broadband seluler tidak digunakan. Jika false, Windows dapat mematikan antarmuka broadband seluler untuk menghemat daya, sehingga mengakibatkan perangkat tidak dapat diatasi oleh jaringan ketika komputer menganggur.

Penggunaan

Elemen berikut dapat berubah dengan frekuensi yang lebih tinggi:

  • UsageInMegabytes Penggunaan data terbaru pengguna.

  • OverDataLimit Nilai Boolean yang menunjukkan apakah pengguna telah melewati penggunaan yang dialokasikan, jika PlanTypeDiperbaiki.

  • Padat Nilai Boolean yang menunjukkan apakah kecepatan koneksi yang lebih rendah dari biasanya diberlakukan karena penggunaan yang berlebihan. Bendera Congested menunjukkan bahwa jaringan saat ini mengalami (atau mengharapkan untuk mengalami) beban berat, dan transfer berprioritas lebih rendah harus ditangguhkan sampai waktu lain, jika memungkinkan. Anda dapat menggunakan bendera ini untuk menunjukkan konsep seperti jam sibuk, atau untuk merespons hotspot yang kelebihan beban.

Refresh

Anda dapat mendorong pengaturan yang diperbarui ke komputer sebagaimana diperlukan karena perubahan jaringan atau untuk dukungan teknis. Windows mencoba refresh berkala dengan menggunakan informasi yang disediakan oleh Anda atau oleh API provisi. Refresh dapat dipicu oleh pemberitahuan SMS dari operator. Untuk mengaktifkan Refresh, Anda harus memberikan informasi berikut dalam XML provisi:

  • TrustedCertificates Daftar thumbprint sertifikat yang memiliki tanda tangan tepercaya pada file provisi di masa mendatang.

  • DelayInDays Jumlah (bilangan bulat) hari sebelum refresh tidak dicoba.

  • RefreshURL URL HTTPS untuk mendapatkan salinan terbaru file provisi pengguna.

  • Kredensial Opsional UserName & Password yang akan disajikan dengan menggunakan HTTP-Auth saat mengambil file provisi ulang. Informasi ini harus dienkripsi ketika disimpan.

Atau, aplikasi broadband seluler dapat menyediakan file provisi baru kapan saja, berdasarkan komunikasi antara aplikasi dan backend operator.

<RefreshParameters>
      <DelayInDays>30</DelayInDays>
      <RefreshURL>https://www.contoso.com/refresh</RefreshURL>
      <Username>[PLACEHOLDER]</Username>
      <Password>[PLACEHOLDER]</Password>
    </RefreshParameters>

Tanda Tangan

Karena provisi memodifikasi pengaturan sistem yang bertahan setelah pengguna keluar atau menghapus instalan aplikasi, ukuran verifikasi yang lebih ketat diperlukan daripada sebagian besar API. Verifikasi ini disediakan oleh kombinasi perangkat keras khusus operator (SIM), tanda tangan kriptografi, dan konfirmasi pengguna.

Persyaratan provisi:

SIM hadir? Sumber provisi Persyaratan tanda tangan Persyaratan konfirmasi pengguna
Ya, penyedia MB Aplikasi broadband seluler Tidak ada Tidak ada
Ya, penyedia MB Situs web operator Sertifikat harus:
- Rantai kembali ke CA akar tepercaya.
- Dikaitkan dengan perangkat keras broadband seluler dalam database APN atau metadata pengalaman.
Tidak ada
Tidak, penyedia Wi-Fi Situs web appor broadband seluler Sertifikat harus:
- Rantai kembali ke CA akar tepercaya.
- Ditandai untuk Validasi Diperpanjang.
Pengguna diminta untuk mengonfirmasi saat pertama kali sertifikat digunakan; tidak ada konfirmasi yang diperlukan setelahnya.

Kombinasi yang diizinkan

Meskipun Global adalah satu-satunya simpul tingkat pertama yang diperlukan oleh skema, kombinasi tertentu dari simpul lain adalah khas. Bagian ini membahas kombinasi khas ini:

  • Profil (WLANProfiles, MBNProfiles) + Paket termasuk Deskripsi dan Penggunaan Membuat atau memperbarui kumpulan profil lengkap, dan menerapkan informasi paket dan penggunaan saat ini untuk masing-masing profil. Kesalahan dikembalikan jika profil mereferensikan Paket yang tidak ditentukan dalam file provisi yang sama, dan peringatan dikembalikan jika tidak ada profil dalam file provisi yang mereferensikan Paket tertentu.

  • Paket termasuk Deskripsi dan (opsional) Informasi Paket Updates Penggunaan untuk profil yang ada di komputer, tetapi tidak mengubah profil di komputer. Peringatan dikembalikan jika tidak ada profil di komputer yang mereferensikan Paket tertentu.

  • Paket termasuk Penggunaan hanya Updates informasi penggunaan di profil yang ada di komputer, tetapi tidak mengubah profil atau deskripsi Paket yang terkait dengan setiap profil.

Skenario Umum

Berikut adalah beberapa skenario umum yang mungkin Anda butuhkan saat membuat metadata provisi:

Menemukan skema provisi akun

Skema XSD tersedia di bawah %SYSTEMROOT%\schemas\provisioning di komputer apa pun yang menjalankan Windows 8, Windows 8.1, atau Windows 10.

Menerapkan XML provisi ke perangkat

Anda dapat menerapkan file XML provisi ke perangkat dengan menggunakan aplikasi broadband seluler, aplikasi UWP, atau dari situs web.

Untuk memprovisikan dari aplikasi broadband seluler:

  1. Buat instans ProvisioningAgent (dengan menggunakan Windows.Networking.NetworkOperators.ProvisioningAgent.CreateFromNetworkAccountId).

  2. Panggil ProvisionFromXmlDocumentAsync, meneruskan dokumen XML provisi yang tidak ditandatangani.

Operasi asinkron selesai dan hasil operasi provisi dikembalikan.

Untuk memprovisikan dari aplikasi UWP selain aplikasi broadband seluler:

  1. Buat dokumen XML Provisi Akun yang ditandatangani.

  2. Membuat instans ProvisioningAgent (dengan menggunakan konstruktor default).

  3. Panggil ProvisionFromXmlDocumentAsync, meneruskan dokumen XML yang ditandatangani.

Operasi asinkron selesai dan hasil operasi provisi dikembalikan.

Dari situs web:

  1. Buat dokumen XML Provisi Akun yang ditandatangani.

  2. Panggil window.external.msProvisionNetworks, meneruskan dokumen XML yang ditandatangani.

Operasi selesai dan hasil operasi provisi dikembalikan.

Memprovisikan perangkat untuk terhubung secara otomatis ke jaringan broadband seluler

Anda dapat menentukan dokumen XML provisi dengan menggunakan bagian MBNProfile .

<?xml version="1.0"?>
<CarrierProvisioning xmlns="http://www.microsoft.com/networking/CarrierControl/v1">
    <Global>
        <CarrierId>{00000000-1111-2222-3333-444444444444}</CarrierId>
        <SubscriberId>1234567890</SubscriberId>
    </Global>
    <MBNProfiles>
      <DefaultProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WWAN/v1">
          <Name>Profile Name</Name>
          <Description>The Description</Description>
          <HomeProviderName>Contoso</HomeProviderName>
          <Context>
              <AccessString>apn</AccessString>
              <UserLogonCred>
                  <UserName>username</UserName>
                  <Password>[PLACEHOLDER]</Password>
              </UserLogonCred>
          </Context>
      </DefaultProfile>
    </MBNProfiles>
</CarrierProvisioning>

Catatan

Elemen anak dari DefaultProfile diperlukan. Lihat referensi skema XML provisi untuk detail selengkapnya.

Memprovisikan perangkat untuk terhubung secara otomatis ke jaringan Wi-Fi

Anda dapat menentukan dokumen XML provisi dengan menggunakan bagian WlanProfiles .

<?xml version="1.0"?>
<CarrierProvisioning xmlns="http://www.microsoft.com/networking/CarrierControl/v1">
  <Global>
    <CarrierId>{00000000-1111-2222-3333-444444444444}</CarrierId>
    <SubscriberId>1234567890</SubscriberId>
  </Global>
  <WLANProfiles>
    <WLANProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v1">
      <name>My Wi-Fi Hotspot</name>
      <SSIDConfig>
        <SSID>
          <name>wifihotspot1</name>
        </SSID>
      </SSIDConfig>
      <MSM>
        <security>
          <authEncryption>
            <authentication>open</authentication>
            <encryption>none</encryption>
            <useOneX>false</useOneX>
          </authEncryption>
        </security>
      </MSM>
    </WLANProfile>
  </WLANProfiles>
</CarrierProvisioning>

Elemen anak MSM menentukan cara menyambungkan ke jaringan. Ini termasuk konfigurasi EAP yang diperlukan. Semua elemen anak dari elemen MSM dalam Skema WLAN_profile didukung. Lihat referensi skema XML provisi untuk detail selengkapnya.

Memprovisikan perangkat untuk terhubung secara otomatis ke hotspot yang diaktifkan WISPr

Anda dapat menggunakan salah satu dari dua cara berikut untuk mengaktifkan autentikasi hotspot:

  1. Secara langsung mendeklarasikan kredensial dengan menggunakan direktif BasicAuth :

    <?xml version="1.0"?>
    <CarrierProvisioning xmlns="http://www.microsoft.com/networking/CarrierControl/v1">
      <WLANProfiles>
        <WLANProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v1">
          <name>Contoso Wi-Fi</name>
          <SSIDConfig>
            <SSID>
              <name>Contoso Wi-Fi</name>
            </SSID>
          </SSIDConfig>
          <MSM>
            <security>
              <authEncryption>
                <authentication>open</authentication>
                <encryption>none</encryption>
                <useOneX>false</useOneX>
              </authEncryption>
              <HotspotProfile xmlns="http://www.microsoft.com/networking/WLAN/HotspotProfile/v1">
                <BasicAuth>
                  <UserName>[PLACEHOLDER]</UserName>
                  <Password>[PLACEHOLDER]</Password>
                </BasicAuth>
                <TrustedDomains>
                  <TrustedDomain>hotspot.contoso.com</TrustedDomain>
                </TrustedDomains>
              </HotspotProfile>
            </security>
          </MSM>
        </WLANProfile>
      </WLANProfiles>
    </CarrierProvisioning>
    
  2. Alihkan ke aplikasi untuk autentikasi dengan menggunakan direktif ExtAuth :

    <?xml version="1.0"?>
    <CarrierProvisioning xmlns="http://www.microsoft.com/networking/CarrierControl/v1">
      <WLANProfiles>
        <WLANProfile xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v1">
          <name>Contoso Wi-Fi</name>
          <SSIDConfig>
            <SSID>
              <name>Contoso Wi-Fi</name>
            </SSID>
          </SSIDConfig>
          <MSM>
            <security>
              <authEncryption>
                <authentication>open</authentication>
                <encryption>none</encryption>
                <useOneX>false</useOneX>
              </authEncryption>
              <HotspotProfile xmlns="http://www.microsoft.com/networking/WLAN/HotspotProfile/v1">
                <ExtAuth>
                  <ExtensionId>Alice</ExtensionId>
                </ExtAuth>
                <TrustedDomains>
                  <TrustedDomain>hotspot.contoso.com</TrustedDomain>
                </TrustedDomains>
              </HotspotProfile>
            </security>
          </MSM>
        </WLANProfile>
      </WLANProfiles>
    </CarrierProvisioning>
    

Anda harus langsung menentukan kredensial jika memungkinkan. Mengalihkan ke aplikasi lain memiliki implikasi daya dan kompleksitas.

Mengirim aktivasi ke perangkat broadband seluler

Objek besar biner arbitrer (BLOB) yang terkandung di dalam elemen CarrierSpecificData dapat dikodekan Base64 dan dikirim ke perangkat dengan menggunakan ProvisioningAgent. Anda dapat melakukan ini dengan menggunakan direktif Aktivasi<ServiceActivatation> di XML provisi:

<?xml version="1.0"?>
<CarrierProvisioning xmlns="http://www.microsoft.com/networking/CarrierControl/v1">
  <Global>
    <CarrierId>{00000000-1111-2222-3333-444444444444}</CarrierId>
    <SubscriberId>1234567890</SubscriberId>
  </Global>
  <Activation>
    <ServiceActivation xmlns="http://www.microsoft.com/networking/CarrierControl/WWAN/v1">
      <CarrierSpecificData>YXJiaXRyYXJ5ZGF0YQ==</CarrierSpecificData>
    </ServiceActivation>
  </Activation>
</CarrierProvisioning>

Metode ini setara dengan memanggil metode IMbnVendorSpecificOperation::SetVendorSpecific dari Mobile Broadband API, dan meneruskan SAFEARRAY bersama dengan konten BLOB.

Paksa perangkat broadband seluler untuk terhubung kembali ke jaringan setelah provisi selesai

Ada dua cara untuk memaksa perangkat broadband seluler terhubung kembali ke jaringan setelah provisi: ReregisterToNetwork dan ReconnectToNetwork.

Anda dapat menggunakan direktif ReregisterToNetwork untuk memaksa pendaftaran ulang ke jaringan broadband seluler dengan mematikan radio broadband seluler lalu menyalakannya kembali. Setelah radio kembali menyala, adaptor terhubung dengan menggunakan profil default. Anda harus menggunakan direktif ini dengan hemat, dan hanya jika perlu untuk membatalkan pendaftaran dari jaringan setelah aktivasi akun.

Anda dapat menggunakan arahan ReconnectToNetwork saat aktivasi konteks harus menerapkan pengaturan keamanan atau kebijakan baru setelah aktivasi akun selesai. Ini dilakukan dengan menonaktifkan konteks PDP dan mengaktifkan kembali berdasarkan pengaturan profil default untuk adaptor broadband seluler. Jika profil default diperbarui dalam XML provisi yang sama, pengaturan profil baru akan digunakan.

Secara opsional, Anda dapat menentukan arahan ini dengan menggunakan jumlah/interval coba lagi dan waktu eksekusi yang tertunda.

Catatan

Jika radio berhasil di-siklus di ReregisterToNetwork tetapi koneksi otomatis kembali ke jaringan menggunakan profil default gagal, maka percobaan ulang berikutnya tidak memutar radio lagi.

<?xml version="1.0"?>
<CarrierProvisioning xmlns="http://www.microsoft.com/networking/CarrierControl/v1">
  <Global>
    <CarrierId>{00000000-1111-2222-3333-444444444444}</CarrierId>
    <SubscriberId>1234567890</SubscriberId>
  </Global>
  <Activation>
      <!-- Cycle the radio and reconnect to the default profile with an 
           initial execution delay of 30 seconds and retries every 1 minute 
           up to 3 times.
           -->
      <ReregisterToNetwork
          xmlns="http://www.microsoft.com/networking/CarrierControl/WWAN/v1"
          Delay="PT30S"
          RetryCount="3"
          RetryInterval="PT1M"
          />
  </Activation>
</CarrierProvisioning>

Memperbarui statistik penggunaan data untuk profil koneksi

Anda hanya dapat memperbarui penggunaan untuk profil yang disediakan dengan menggunakan ProvisioningAgent dengan menerapkan file provisi akun baru yang telah memperbarui informasi rencana. Anda dapat menyediakan file provisi yang hanya berisi informasi penggunaan, atau hanya informasi paket. Bergantung pada berapa banyak konfigurasi sistem yang ingin Anda ubah, file provisi baru dapat mencakup yang berikut ini:

  • Profil, deskripsi paket, dan penggunaan

  • Merencanakan deskripsi dan penggunaan (memperbarui profil yang ada)

  • Merencanakan penggunaan (memperbarui profil dan paket yang ada)

Jika Anda menerapkan profil baru dan rencana referensi yang tidak ditentukan dalam XML, hasil provisi menyertakan peringatan.

Memperbarui penggunaan data dengan menggunakan pesan SMS

Ini dicapai dengan salah satu cara berikut:

  • Tentukan pesan operator, terima pesan pemberitahuan operator, baca pesan dengan menggunakan SMS API, uraikan pesan di aplikasi, lalu atur penggunaan dengan menggunakan IProvisionedProfile.

  • Tentukan aturan pesan operator yang memiliki kombinasi bidang penggunaan yang valid dan langsung memberikan penggunaan yang diperbarui dalam SMS.

Pemecahan Masalah

Jika Anda mengalami masalah provisi, Anda bisa menggunakan bagian berikut untuk membantu Anda mencari tahu.

Memprovisikan hasil API

Jika provisi gagal, Anda akan menerima pengecualian saat mencoba melakukan tindakan provisi. Kegagalan yang dapat menyebabkan pengecualian meliputi hal-hal berikut:

  • XML provisi tidak sesuai dengan skema CarrierControlSchema.

  • XML provisi memerlukan tanda tangan, tetapi tidak ditandatangani dengan tepat.

Kegagalan provisi parsial

Bagian dari operasi provisi mungkin tidak berhasil karena berbagai alasan. Misalnya, Anda mungkin memiliki referensi ke perangkat keras Wi-Fi yang tidak ada pada saat provisi. Agen provisi melakukan upaya terbaik untuk menyediakan semua yang ada dalam file. Ketika sesuatu gagal, itu dicatat dalam hasil provisi yang dikembalikan secara asinkron dengan menggunakan ProvisionFromXmlDocumentAsync.

Hasilnya dikembalikan sebagai XML dan dapat diurai untuk menemukan kegagalan. Elemen menyediakan struktur untuk menunjukkan apa yang gagal, dan atribut ErrorCode menunjukkan alasan kegagalan sebagai HRESULT standar.

Misalnya, kode kesalahan berikut menunjukkan bahwa tidak ada profil WLAN yang disediakan karena layanan WLAN tidak aktif:

<CarrierProvisioningResult>
    <WLANProfiles ErrorCode=”80070426”/>
</CarrierProvisioningResult>

Jika profil individual tidak dapat diterapkan, profil tersebut akan muncul sebagai berikut:

<CarrierProvisioningResult>
    <WLANProfiles>
        <WLANProfile Name=”MyProfile” ErrorCode=”80070005”/>
    </WLANProfiles>
</CarrierProvisioningResult>

Log Peristiwa

Peristiwa di saluran Applications and Services Logs\Microsoft\Windows\NetworkProvisioning\Operational dapat memberikan umpan balik terperinci tentang kegagalan provisi.

Modul PowerShell ProvisioningTestHelper

Anda dapat mengimpor modul ProvisioningTestHelper dari SDK Windows 8, Windows 8.1, dan Windows 10. Dengan menggunakan modul ini, Anda dapat membuat dan menginstal sertifikat EV, menandatangani file XML dengan menggunakan sertifikat yang diinstal, dan memvalidasi XML terhadap skema provisi. Untuk mengimpor modul ke sesi PowerShell, ketik perintah berikut:

Import-Module "<path_to_sdk>\bin\<arch>\ProvisioningTestHelper.psd1"

Di mana <path_to_sdk\bin\<arch>> adalah lokasi penginstalan SDK Windows 8, Windows 8.1, atau Windows 10 yang sesuai dengan arsitektur komputer.

Setelah Anda mengimpor modul ini, empat cmdlet PowerShell berikut tersedia:

  • Install-TestEVCert Menghasilkan sertifikat CA baru, mendaftarkannya di komputer pengujian Anda sebagai penyedia EV SSL tepercaya, dan menggunakannya untuk menghasilkan dan menginstal sertifikat EV untuk digunakan dalam penandatanganan. Anda harus menjalankan cmdlet ini hanya satu kali untuk menginstal sertifikat. Anda dapat menandatangani sejumlah file dengan menggunakan sertifikat.

    Install-TestEVCert -CertName <Certificate Name> -RootCertOutputPath <complete path to the folder to which the root certificate is to be exported>
    

    Sertifikat klien memiliki nama yang ditentukan dalam perintah dan sertifikat akar memiliki "Root" yang ditambahkan bersama dengan nama sertifikat klien. Parameter -CertName bersifat opsional. Jika parameter –CertName tidak ditentukan, MBAPTestCert akan digunakan.

    Parameter -RootCertOutputPath juga opsional. Ini harus digunakan jika Anda ingin mengekspor sertifikat akar untuk diinstal di komputer lain dengan menggunakan cmdlet Install-RootCertFromFile.

  • Install-RootCertFromFile Menerapkan sertifikat akar pengujian pada komputer yang berbeda, untuk menguji pengalaman klien di komputer selain komputer pengembangan.

    Install-RootCertFromFile -CertFile <complete path to the root certificate>
    
  • ConvertTo-SignedXml Menggunakan sertifikat EV (dihasilkan untuk pengujian, atau dikeluarkan oleh penyedia pihak ketiga) untuk menerapkan tanda tangan XML-DSig ke file XML provisi. Tanda tangan dari sertifikat tepercaya ini menyebabkan Windows menerima file provisi sebagai valid dari aplikasi broadband seluler tanpa perangkat keras afiliasi.

    ConvertTo-SignedXml -InputFile <complete path to the input XML file> -OutputFile <complete path to the output XML file> -CertName <name of the certificate used to sign the xml>
    

    Perintah ini akan menandatangani file XML input, meletakkan tanda tangan di XML, dan menyimpannya ke file XML output.

  • Test-ValidProvisioningXml Memvalidasi XML Provisi (ditandatangani atau tidak ditandatangani) terhadap skema provisi.

    Test-ValidProvisioningXml -InputFile <complete path to the input XML file>