ポリシーを使用してデバイスで Wi-Fi ネットワークを設定できます。Android Management API は、標準の JSON ベースの形式である Open Network Configuration を使用します。 これは元々 Chromium プロジェクトの一環として開発されました。詳しくは、 仕様 をご覧ください。
オープンなネットワーク構成をポリシーに含めるには、
openNetworkConfiguration
フィールド
Policy
リソースです。
完全管理対象デバイスの場合、ユーザーが手動で
wifiConfigDisabled
を以下に設定して、デバイスでの Wi-Fi 設定を構成する
true
の
Policy
リソースです。
サポートされている機能
Android Management API は、Open Network の一部のみをサポートしている 構成仕様。
- 最上位オブジェクト:
<ph type="x-smartling-placeholder">
- </ph>
Type
は省略するか、UnencryptedConfiguration
に設定する必要があります。「 暗号化する必要があるため、ポリシー内のネットワーク構成が Android Management API サービス内でポリシー全体が暗号化されます。 さらに、機密を保持するために別の暗号化レイヤが 秘密鍵などの情報を暗号化します。
NetworkConfiguration
オブジェクト: <ph type="x-smartling-placeholder">- </ph>
GUID
、Name
、Type
、WiFi
: すべて必須ですProxySettings
は、オプション フィールドです。これを使用する場合は、Manual
とPAC
(プロキシの自動構成)がサポートされています。Type
はWiFi
に設定する必要があります。他のタイプのネットワークはサポートされていません。
WiFi
オブジェクト: <ph type="x-smartling-placeholder">- </ph>
AllowGatewayARPPolling
はご利用になれません。SignalStrength
はご利用になれません。Security
は必須で、次の値がサポートされています。 - なし - WEP-PSK - WPA-PSK - WPA-EAP - WEP-8021X - WPA3-Enterprise_192WEP-PSK
パスフレーズの場合は、40 ビット(10 桁)または 104 ビット(26 桁)のみ パスフレーズがサポートされています。- この仕様では、
WEP-PSK
パスフレーズの先頭は「 接頭辞0x
。ただし、Android フレームワークとの一貫性を保つために、 接頭辞は不要です。 - MAC アドレス ランダム化モードを設定するには、
MACAddressRandomizationMode
プロパティを使用します。 値Hardware
またはAutomatic
で設定します。このプロパティは現在、 Open Network Configuration(ONC)仕様 AMAPI で提供され、Wi-Fi ネットワークの設定時に指定できます。これは、すべての管理モードの Android 13 以降にのみ適用されます。Hardware
は、ネットワークへの接続時に出荷時の MAC アドレスを使用します。Automatic
: Wi-Fi フレームワークが自動的に MAC を決定できるようにします。 ランダム化戦略です。これは、永続的または非永続的のいずれかになります。 ランダムに生成された MAC アドレスで、 通信できます。
EAP
オブジェクト: <ph type="x-smartling-placeholder">- </ph>
ClientCertPattern
はご利用になれません。SaveCredentials
はご利用になれません。UseSystemCAs
はご利用になれません。DomainSuffixMatch
のみがサポートされています。
このフィールドのない(または空白の)企業向けワイヤレス設定 リストなど)は、 安全でない状態でプラットフォームによって拒否されました。 値は有効なドメイン名である必要があります(例: 「example.com」、 例: 「subdomain.example.com」)。ClientCertType
でサポートされている値は、Ref
、KeyPairAlias
です。Inner
でサポートされている値は、MSCHAPv2
、PAP
です。Outer
では、EAP-AKA
、EAP-TLS
、EAP-TTLS
、EAP-SIM
、PEAP
Certificate
オブジェクト: <ph type="x-smartling-placeholder">- </ph>
Remove
はサポートされていません。構成で証明書を省略する してください。TrustBits
はご利用になれません。
例
複数の Wi-Fi ネットワーク
このポリシー フラグメントの例は、3 つの Wi-Fi ネットワークで構成され、
さまざまなセキュリティ スキームを用意しています。Open Network Configuration JSON は、
openNetworkConfiguration
フィールド
Policy
できます。
"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" } }] }
EAP 認証
このポリシー フラグメントの例は、EAP-TLS で構成されたワイヤレス ネットワークを示しています
あります。この例では、NetworkConfigurations
オブジェクトに加えて、
クライアント証明書とサーバー証明書の 2 つの Certificates
オブジェクトが含まれています。
"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" } ] }
ClientCertType
フィールドを KeyPairAlias
に設定して、
ClientCertKeyPairAlias
フィールドを使用すると、インストールされているアプリケーションのエイリアスを
(参照:
DevicePolicyManager.installKeyPair
)
生成する(
DevicePolicyManager.generateKeyPair
)を使用して Wi-Fi 認証に使用される KeyChain キーペアです。Android 12 以降の場合
エイリアスを指定して KeyChain 鍵ペアを
ClientCertKeyPairAlias
は Wi-Fi ネットワークの認証用として付与されています。
対応する Wi-Fi ネットワークへの認証に使用します。Android 12 以前では、
nonComplianceDetail
API_LEVEL
報告されます。
nonComplianceDetail
INVALID_VALUE
理由と
ONC_WIFI_KEY_PAIR_ALIAS_NOT_CORRESPONDING_TO_EXISTING_KEY
指定された鍵ペアのエイリアスが鍵ペアと一致しない場合は、特定の理由が報告されます。
作成する必要があります。ポリシーの例を次に示します。
"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" } ] }
Security
フィールドは、WPA-EAP である WPA3-Enterprise_192
にすることもできます。
WPA3 192 ビットモードで設定されたネットワークです。
"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" } ] }