Configurer les réseaux

Vous pouvez utiliser des règles pour configurer des réseaux Wi-Fi sur un appareil. Android L'API Management utilise Open Network Configuration, un format standard basé sur JSON développé à l'origine dans le cadre du projet Chromium. Consultez le pour en savoir plus sur la configuration de réseau ouvert.

Pour inclure une configuration de réseau ouvert dans une règle, définissez le paramètre Champ openNetworkConfiguration au niveau d'une Policy ressource.

Pour les appareils entièrement gérés, vous pouvez empêcher manuellement un utilisateur configurez les paramètres Wi-Fi sur son appareil en définissant wifiConfigDisabled sur true dans Policy ressource.

<ph type="x-smartling-placeholder">

Fonctionnalités compatibles

L'API Android Management n'est compatible qu'avec un sous-ensemble du réseau ouvert Spécification de la configuration.

  • Objet de premier niveau: <ph type="x-smartling-placeholder">
      </ph>
    • Type doit être omis ou défini sur UnencryptedConfiguration. Il n'y a aucun chiffrer la configuration réseau dans une stratégie, car l'intégralité de la stratégie est chiffrée dans le service de l'API Android Management. De plus, il existe une deuxième couche de chiffrement des informations telles que des phrases secrètes et des clés privées.
  • Objets NetworkConfiguration:
    • GUID, Name, Type et WiFi sont champs pris en charge et sont tous obligatoires.
    • ProxySettings est un champ facultatif. Si c'est le cas, uniquement Manual et PAC (configuration automatique du proxy) sont compatibles.
    • Type doit être défini sur WiFi. Les autres types de réseaux ne sont pas compatibles.
  • Objets WiFi:
    • AllowGatewayARPPolling n'est pas compatible.
    • SignalStrength n'est pas compatible.
    • Security est obligatoire et les valeurs suivantes sont acceptées: - Aucun - WEP-PSK - WPA-PSK - WPA-EAP - WEP-8021X - WPA3-Enterprise_192
    • Pour les phrases secrètes WEP-PSK, utilisez uniquement les valeurs 40 bits (10 chiffres) ou 104 bits (26 chiffres). les mots de passe multitermes acceptés.
    • La spécification indique que les phrases secrètes WEP-PSK doivent commencer par préfixe 0x. Toutefois, par souci de cohérence avec le framework Android, n'est pas obligatoire.
    • Pour définir le mode de randomisation MAC, utilisez la propriété MACAddressRandomizationMode. défini avec les valeurs Hardware ou Automatic. Cette propriété est actuellement non disponible dans la spécification ONC (Open Network Configuration) mais il est fourni en AMAPI et peut être spécifié lors de la configuration des réseaux WiFi. Cela ne s'applique qu'à Android 13 ou version ultérieure, quel que soit le mode de gestion.
      • Hardware utilise l'adresse MAC d'usine lors de la connexion au réseau.
      • Automatic permet au framework Wi-Fi de déterminer automatiquement l'adresse MAC de randomisation. Elle peut être persistante ou non. des adresses MAC générées aléatoirement qui sont utilisées lors de la connexion à le réseau.
  • Objets EAP:
    • ClientCertPattern n'est pas compatible.
    • SaveCredentials n'est pas compatible.
    • UseSystemCAs n'est pas compatible.
    • DomainSuffixMatch est accepté.
      Configurations sans fil d'entreprise sans ce champ (ou avec un champ vide) liste comme valeur) sont considérés non sécurisées et rejetées par la plate-forme. Les valeurs doivent être des noms de domaine valides (par exemple, "example.com", "sous-domaine.example.com").
    • Les valeurs suivantes sont acceptées pour ClientCertType: Ref, KeyPairAlias
    • Les valeurs suivantes sont acceptées pour Inner: MSCHAPv2, PAP
    • Les valeurs suivantes sont acceptées pour Outer: EAP-AKA, EAP-TLS, EAP-TTLS, EAP-SIM et PEAP
  • Objets Certificate:
    • Remove n'est pas compatible. Omettre le certificat dans la configuration à la place.
    • TrustBits n'est pas compatible.

Exemples

Plusieurs réseaux Wi-Fi

Cet exemple de fragment de règle montre trois réseaux Wi-Fi configurés avec différents schémas de sécurité. Le JSON Open Network Configuration est imbriqué dans le champ openNetworkConfiguration de Policy JSON.

"openNetworkConfiguration": {
  "NetworkConfigurations": [{
    "GUID": "a",
    "Name": "Example A",
    "Type": "WiFi",
    "WiFi": {
      "SSID": "Example A",
      "Security": "None",
      "AutoConnect": true
    }
  }, {
    "GUID": "b",
    "Name": "Example B",
    "Type": "WiFi",
    "WiFi": {
      "SSID": "Example B",
      "Security": "WEP-PSK",
      "Passphrase": "1234567890"
    }
  }, {
    "GUID": "c",
    "Name": "Example C",
    "Type": "WiFi",
    "WiFi": {
      "SSID": "Example C",
      "Security": "WPA-PSK",
      "Passphrase": "baseball"
    }
  },
  "GUID": "networkA",
   "Name": "networkA",
   "Type": "WiFi",
   "WiFi": {
     "SSID": "networkA",
     "Security": "WPA-PSK",
     "Passphrase": "pwd1234567",
     "MACAddressRandomizationMode":"Hardware"
   }
 }]
}

Authentification EAP

Cet exemple de fragment de stratégie montre un réseau sans fil configuré avec EAP-TLS. l'authentification unique. Outre l'objet NetworkConfigurations, l'exemple comprend deux objets Certificates pour les certificats client et serveur.

"openNetworkConfiguration": {
   "Type": "UnencryptedConfiguration",
   "NetworkConfigurations": [
      {
         "GUID": "a",
         "Name": "Example A",
         "Type": "WiFi",
         "WiFi": {
            "SSID": "Example A",
            "EAP": {
               "Outer": "EAP-TLS",
               "Identity": "example",
               "DomainSuffixMatch": [
                  "example.com",
                  "example.org"
               ],
               "ServerCARef": "abc123",
               "ClientCertType": "Ref",
               "ClientCertRef": "xyz456"
            },
            "Security": "WPA-EAP"
         }
      }
   ],
   "Certificates": [
      {
         "GUID": "abc123",
         "Type": "Server",
         "X509": "TWFuIGlzIGRpc3Rpbmd1a"
      },
      {
         "GUID": "xyz456",
         "Type": "Client",
         "PKCS12": "6PQIEQYJKoZbdDu8gwggRlqCCAPEbAAcGClgvcNAQc"
      }
   ]
}

Le champ ClientCertType peut également être défini sur KeyPairAlias. Le champ ClientCertKeyPairAlias permet de spécifier l'alias d'un objet installé (voir DevicePolicyManager.installKeyPair ) ou générées (voir DevicePolicyManager.generateKeyPair ) KeyChain utilisée pour l'authentification Wi-Fi. Sur Android 12 et ci-dessus, la paire de clés KeyChain ayant l'alias spécifié par ClientCertKeyPairAlias est autorisé à s'authentifier auprès des réseaux Wi-Fi et est utilisé pour l’authentification auprès du réseau Wi-Fi correspondant. Sous Android 12, nonComplianceDetail par API_LEVEL motif est signalé. A nonComplianceDetail par INVALID_VALUE motif et ONC_WIFI_KEY_PAIR_ALIAS_NOT_CORRESPONDING_TO_EXISTING_KEY la raison spécifique est indiquée si l'alias de paire de clés spécifié ne correspond pas à une clé existante. Voici un exemple de stratégie:

"openNetworkConfiguration": {
   "Type": "UnencryptedConfiguration",
   "NetworkConfigurations": [
      {
         "GUID": "a",
         "Name": "Example A",
         "Type": "WiFi",
         "WiFi": {
            "SSID": "Example A",
            "EAP": {
               "Outer": "EAP-TLS",
               "Identity": "example",
               "DomainSuffixMatch": [
                  "example.com",
                  "example.org"
               ],
               "ServerCARef": "abc123",
               "ClientCertType": "KeyPairAlias",
               "ClientCertKeyPairAlias": "key-alias"
            },
            "Security": "WPA-EAP"
         }
      }
   ],
   "Certificates": [
      {
         "GUID": "abc123",
         "Type": "Server",
         "X509": "TWFuIGlzIGRpc3Rpbmd1a"
      }
   ]
}

Le champ Security peut également être WPA3-Enterprise_192, qui est un protocole WPA-EAP. configuré en mode WPA3 192 bits.

"openNetworkConfiguration": {
   "Type": "UnencryptedConfiguration",
   "NetworkConfigurations": [
      {
         "Type": "WiFi",
         "Name": "Example A",
         "GUID": "A",
         "WiFi": {
            "SSID": "Example A",
            "EAP": {
               "Outer": "EAP-TLS",
               "Identity": "example",
               "ServerCARef": "abc123",
               "ClientCertType": "Ref",
               "ClientCertRef": "xyz456",
               "DomainSuffixMatch": ["example.com"]
            },
            "Security": "WPA3-Enterprise_192",
            "AutoConnect": true
         }
      }
   ],
   "Certificates": [
      {
         "GUID": "abc123",
         "Type": "Server",
         "X509": "TWFuIGlzIGRpc3Rpbmd1a"
      },
      {
         "GUID": "xyz456",
         "Type": "Client",
         "PKCS12": "6PQIEQYJKoZbdDu8gwggRlqCCAPEbAAcGClgvcNAQc"
      }
   ]
}