.NET voor Android-fout XA4252

Voorbeeldbericht

error XA4252: Insecure HTTP Maven repository URL 'http://repo.example.com/maven2/' is not allowed. Use an HTTPS URL, or set AllowInsecureHttp="true" metadata on the item to override this check.

Issue

Een <AndroidMavenLibrary> item geeft een URL van de Maven-opslagplaats op die wordt gebruikt http:// in plaats van https://. Het downloaden van artefacten via gewone HTTP is een beveiligingsrisico omdat de verbinding niet is versleuteld en kwetsbaar is voor man-in-the-middle-aanvallen en inbreuk op de toeleveringsketen.

Deze controle komt overeen met het standaardgedrag in Gradle (allowInsecureProtocol) en Maven (<blocked>http://*</blocked>) voor diepgaande verdediging en beveiliging van de toeleveringsketen.

Solution

Gebruik waar mogelijk een HTTPS-URL voor de Maven-opslagplaats:

<ItemGroup>
  <AndroidMavenLibrary Include="com.example:mylib" Version="1.0.0" Repository="https://repo.example.com/maven2/" />
</ItemGroup>

Als de opslagplaats https niet ondersteunt en u de gevolgen voor de beveiliging begrijpt, stelt u deze optie AllowInsecureHttp="true" in op expliciet aanmelden voor onveilige HTTP:

<ItemGroup>
  <AndroidMavenLibrary Include="com.example:mylib" Version="1.0.0" Repository="http://repo.example.com/maven2/" AllowInsecureHttp="true" />
</ItemGroup>