Ilmaus sisäänrakennettu VPN kattaa Androidissa kaksi toisiinsa liittymätöntä asiaa: protokollatoteutus, jota alusta ajaa puolestasi, ja se asetusten muoto, jonka valmistaja päätti näyttää. Ne eivät ole sama objekti, eikä kumpikaan takaa, että tunneli kuuluu käyttäjälle, jonka sovellukset sitä tarvitsevat. Luonti tapahtuu tietyssä käyttäjässä tietyn kutsuvan paketin kanssa, ja kaikki sen jälkeinen perii tämän kontekstin. Lue omistusketju ennen asetusnäkymää.

Mitä alusta rakentaa puolestasi

Android 11:stä lähtien alusta tarjoaa VPN:n luonnin VpnManager kautta. Hyväksytty sovellus kuvaa IKEv2-profiilin, ja alusta hoitaa IPsec- ja IKE-vaihdon itse, joten sovellus ei koskaan koske paketteihin. Se on olennainen ero omaan VPN-sovellukseen, joka toteuttaa VpnService ja rakentaa tunnelin omassa prosessissaan.

val profile = Ikev2VpnProfile.Builder(serverAddress, identity)
    .setAuthUsernamePassword(user, secret, rootCa)
    .build()
getSystemService(VpnManager::class.java).provisionVpnProfile(profile)

Yllä oleva kutsu on muodon luonnos, ei kopioitava lohko: rakentajassa on useita todennusvaihtoehtoja, ne eroavat API-tason mukaan, ja profiili kantaa myös palvelimen varmenteen luottamusaineiston. Omistuskysymyksessä ratkaiseva on kapeampi kuin syntaksi.

Tästä suunnittelusta seuraa kaksi ominaisuutta. Profiili on dataa, joten ylläpitäjä voi luoda sen käsin kirjoittamisen sijaan. Ja tunneli on alustan verkko, joten sovellukset näkevät sen verkkona, jossa on VPN-siirto, eivät toisen sovelluksen pistokkeena.

Omistaja on käyttäjä, sitten paketti

Androidin monikäyttöisyys on todellista erottelua, ei tarra. Työprofiili on erillinen käyttäjä, jolla on omat asennetut paketit, omat sovellustiedot, oma avainsäilö ja omat luottamusankkurinsa. Sama tuote molemmissa paikoissa on kaksi ilmentymää eri käyttäjätunnuksilla, vaikka käynnistimen kuvakkeet ja tuotenimet olisivat samat.

Luonti kirjataan kyseisen käyttäjän kutsuvaa pakettia vasten. Niinpä henkilökohtaisessa profiilissa toimiva luontisovellus luo henkilökohtaisen tunnelin, eivätkä työprofiilin työsovellukset näe siitä mitään. Päinvastoin on myös totta, ja siksi työprofiilin tunneli on näkymätön henkilökohtaisille sovelluksille ilman nimenomaista toisin sanovaa käytäntöä.

Laitteen käytäntöohjain voi luoda hallitun profiilin puolesta, mikä selittää merkinnän, jonka luomista kukaan toimistossa ei muista. Jos auditoit puhelinta, se on todennäköinen harmaantuneen profiilin omistaja, eikä sen poistaminen kokeena ole sinun asiasi.

Kolme porttia ennen kuin paketti liikkuu

Ensimmäinen portti on valtuus: hallinnon on ylipäätään sallittava VPN, ja jotkin käyttöönotot rajoittavat tyypin olemassaolon lisäksi. Toinen on identiteetti: asiakasvarmenteen tai tunnistetietojen on oltava sen käyttäjän saatavilla, joka omistaa profiilin, koska henkilökohtaiseen avainsäilöön tuotu varmenne ei näy työprofiilille.

Kolmas on suostumus ja käytäntö. Käyttäjä hyväksyy yhteyden yleensä ensimmäisellä käyttökerralla, ja ylläpitäjä voi lisäksi kiinnittää sen aina päällä olevaksi, halutessaan lukituksella, jotta liikenne ei pääse tunnelin ulkopuolelle. Nämä asetukset ratkaisevat, mitä tapahtuu tunnelin katketessa, ja juuri sen käyttäjät huomaavat.

Laajuus on paikka, jossa kolme kohtaavat. Profiili määrää yhdyskäytävän ja identiteetin, kun taas käytäntökerros päättää, mitkä sovellukset saavat käyttää tunnelia ja pakotetaanko liikenne sen läpi. Siksi kaksi saman yhdyskäytäväosoitteen puhelinta voi käyttäytyä hyvin eri tavoin.

Miksi henkilökohtainen yhteys ei kata työsovelluksia

Työsovelluksen liikenne syntyy työkäyttäjässä, ja sovellettava verkkokäytäntö on kyseisen käyttäjän. Henkilökohtaisessa profiilissa luotu tunneli ei kanna sitä, oli ilmaisin kuinka terve tahansa. Tämä yksi tosiasia selittää useimmat raportit, joissa käyttäjä vakuuttaa VPN:n olevan yhteydessä ja yksi tietty sovellus ei silti tavoita sisäistä palvelua.

Nimien ratkaisu noudattaa samaa rajaa. Yksityiset DNS-liitteet ja luottamusankkurit ovat käyttäjäkohtaisia, joten sisäinen isäntänimi, joka ratkeaa henkilökohtaisessa profiilissa, voi epäonnistua työprofiilissa jopa näennäisesti vastaavalla tunnelilla, koska ratkaisijan käytäntö ja CA-säilö ovat eri objekteja.

Vahvista todellisella rekisteröinnillä, ei laboratoriopuhelimella

Määritä laitteella ensin merkinnän omistaja: mikä käyttäjä, mikä paketti ja tuliko profiili alustan luojalta vai sovellukselta, jolla on oma VPN-palvelu. Vahvista sitten, että profiilin odottama identiteetti on todella kyseisen käyttäjän avainsäilössä.

Testaa elinkaari, älä vain yhteyttä. Kirjaudu sisään, avaa tunnistetietosäilö, anna työprofiilin levätä illan yli, tuo se takaisin ja tarkista, palaako tunneli ilman käden kosketusta. Työajan jälkeen sammuva työprofiili vie tunnelinsa mukanaan, ja se on odotettua käytöstä eikä vika, kunhan odotettu poissaolotila on kirjattu.

Testaa lopuksi itse työsovellus tunnettua sisäistä päätepistettä vasten ja vertaa henkilökohtaisen profiilin tulokseen. Ne saavat erota; sen, mikä ei saa erota, on omistusmalli. Jos tunneli kuuluu väärälle käyttäjälle, varmenteiden uudelleenmyöntö ei korjaa sitä.

Älä pakota asiaa käynnistämällä piilotettuja asetustoimintoja valikon paljastamiseksi äläkä kopioi yksityisiä avaimia profiilien välillä, jotta yhteys näyttäisi olevan. VpnManager-viite dokumentoi, mitä kutsuja saa luoda; jos hyväksytty polku ei kata tapaustasi, se on ylläpitäjän päätös eikä asetusongelma.

Aiheeseen liittyvät artikkelit