Uw mobiele app ondertekenen

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Wanneer u een app voor Android- of Apple-besturingssystemen ontwikkelt, moet u uiteindelijk handtekeningcertificaten beheren en in het geval van Apple-apps , inrichtingsprofielen. In dit artikel wordt beschreven hoe u deze veilig beheert voor het ondertekenen en inrichten van uw app.

Tip

Gebruik een door Microsoft gehoste Linux-, macOS- of Windows-buildagent of stel uw eigen agent in. Zie Build- en releaseagents.

Dit artikel behandelt:

Uw Android-app ondertekenen

Volg deze stappen om uw Android-app te ondertekenen terwijl u uw handtekeningcertificaat veilig houdt:

  1. Haal eerst een sleutelarchiefbestand op dat uw handtekeningcertificaat bevat. De Android-documentatie beschrijft het proces voor het genereren van een sleutelarchiefbestand en de bijbehorende sleutel.

  2. Maak uw build-pijplijn op basis van de buildsjabloon Android of Xamarin.Android. Als u al een build-pijplijn hebt, voegt u de android-ondertekeningstaak toe na de taak waarmee uw APK wordt gebouwd.

  3. Zoek het selectievakje APK ondertekenen van de Android-ondertekeningstaak en schakel deze in.

  4. Selecteer naast het veld Sleutelarchief het instellingenpictogram en upload het sleutelarchiefbestand naar de bibliotheek Secure Files. Tijdens het uploaden wordt uw sleutelarchief versleuteld en veilig opgeslagen.

  5. Nadat uw sleutelarchief is geüpload naar de bibliotheek Secure Files, selecteert u deze in de vervolgkeuzelijst Keystore-bestand .

  6. Ga naar het tabblad Variabelen en voeg de volgende variabelen toe. Voer in de kolom Waarde uw sleutelarchiefwachtwoord, sleutelalias en sleutelwachtwoord in.

    • keystore-password: Wachtwoord voor het niet-versleutelde sleutelarchiefbestand. Zorg ervoor dat u het vergrendelingspictogram selecteert. Hiermee wordt uw wachtwoord beveiligd en verborgen in logboeken.

    • key-alias: de sleutelalias voor het handtekeningcertificaat dat u hebt gegenereerd.

    • sleutelwachtwoord: het wachtwoord voor de sleutel die is gekoppeld aan de opgegeven alias. Zorg er nogmaals voor dat u het vergrendelingspictogram selecteert.

      Android-ondertekeningsvariabelen

  7. Ga terug naar het tabblad Taken en verwijs naar de namen van de zojuist gemaakte variabelen in de ondertekeningsopties.

    Invoerwaarden voor Android-ondertekening

Sla uw build-pijplijn op en u bent klaar. Elke buildagent kan nu uw app veilig ondertekenen zonder certificaatbeheer op de buildcomputer zelf.

Uw Apple iOS-, macOS-, tvOS- of watchOS-app ondertekenen

Voor uw Xcode- of Xamarin.iOS-build om uw app te ondertekenen en in te richten, moet deze toegang hebben tot uw P12-handtekeningcertificaat en een of meer inrichtingsprofielen. In de volgende secties wordt uitgelegd hoe u deze bestanden kunt verkrijgen.

Uw P12-handtekeningcertificaat verkrijgen

Nadat u het certificaat voor ontwikkeling of distributieondertekening hebt gemaakt, exporteert u het naar een .p12 bestand met behulp van Xcode of de app Sleutelhangertoegang in macOS.

  1. Als u wilt exporteren met Xcode 8 of lager, gaat u naar Xcode-voorkeuren...>>Accounts en selecteer uw Apple Developer-account.

  2. Selecteer Details weergeven..., klik met de rechtermuisknop op de handtekeningidentiteit die u wilt exporteren en selecteer Exporteren....

  3. Voer een bestandsnaam en wachtwoord in. Noteer het wachtwoord, want u hebt het later nodig.

    Xcode-exportcertificaat

  4. U kunt ook een soortgelijk proces volgen met behulp van de app Sleutelhangertoegang in macOS of een handtekeningcertificaat genereren in Windows. Gebruik de procedure die in dit artikel wordt beschreven als u liever deze methode gebruikt.

Uw inrichtingsprofiel verkrijgen

U kunt uw app-inrichtingsprofiel downloaden via de Apple Developer-portal, tenzij uw app gebruikmaakt van automatische ondertekening. Meer informatie over het downloaden van een inrichtingsprofiel in de Apple Developer-portal.

U kunt Xcode ook gebruiken om toegang te krijgen tot de code die op uw Mac is geïnstalleerd.

  1. Als u Xcode 8 of lager gebruikt, gaat u naar Xcode-voorkeuren...>>Accounts en selecteer uw Apple Developer-account.

  2. Klik met de rechtermuisknop op het inrichtingsprofiel dat u wilt gebruiken en selecteer Weergeven in Finder.

  3. Kopieer het gemarkeerde bestand van Finder naar een andere locatie en geef het een beschrijvende bestandsnaam.

    Xcode weergeven in Finder

Uw build configureren

Er zijn twee aanbevolen manieren voor uw build voor toegang tot handtekeningcertificaten en inrichtingsprofielen voor ondertekening en inrichting van uw app:

  1. Deze installeren tijdens de build
  2. Deze vooraf installeren op een macOS-buildagent

Kies een van de onderstaande tabbladen voor meer informatie.

Gebruik deze methode wanneer u geen duurzame toegang hebt tot de buildagent, zoals de gehoste macOS-agents. Het P12-certificaat en het inrichtingsprofiel worden aan het begin van de build geïnstalleerd en verwijderd wanneer de build is voltooid.

Het P12-certificaat installeren tijdens de build

Visual Editor
  1. Voeg de taak Apple Certificate installeren toe aan uw build vóór de Xcode- of Xamarin.iOS-taak.
  2. Selecteer naast het veld Certificaat (P12) het instellingenpictogram en upload uw P12-bestand naar de bibliotheek Beveiligde bestanden. Tijdens het uploaden wordt uw certificaat versleuteld en veilig opgeslagen.
  3. Zodra uw certificaat is geüpload naar de secure files-bibliotheek, selecteert u het in de vervolgkeuzelijst Certificaat (P12 ).
  4. Ga naar het tabblad Variabelen en voeg een variabele toe met de naam P12password. Stel de waarde ervan in op het wachtwoord van uw certificaat. Zorg ervoor dat u het vergrendelingspictogram selecteert. Hiermee wordt uw wachtwoord beveiligd en verborgen in logboeken.
  5. Ga terug naar het tabblad Taken . Raadpleeg in de instellingen van de taak Apple Certificate installeren de zojuist gemaakte variabele in het wachtwoordveld Certificaat (P12) als: $(P12password)
Voorbeeld van YAML
  1. Upload uw P12-bestand naar de secure files-bibliotheek. Tijdens het uploaden wordt uw certificaat versleuteld en veilig opgeslagen.

  2. Ga naar het tabblad Variabelen en voeg een variabele toe met de naam P12password. Stel de waarde ervan in op het wachtwoord van uw certificaat. Zorg ervoor dat u het vergrendelingspictogram selecteert. Hiermee wordt uw wachtwoord beveiligd en verborgen in logboeken.

  3. Voeg de taak Apple Certificate installeren toe aan uw YAML vóór de Xcode- of Xamarin.iOS-taak:

    - task: InstallAppleCertificate@2
        inputs:
          certSecureFile: 'my-secure-file.p12' # replace my-secure-file.p12 with the name of your P12 file.
          certPwd: '$(P12password)'
    

Het inrichtingsprofiel installeren tijdens uw build

Visual Editor
  1. Voeg de taak Apple-inrichtingsprofiel installeren toe aan uw build vóór de Xcode- of Xamarin.iOS-taak.
  2. Voor de locatieoptie Inrichtingsprofiel kiest u Beveiligde bestanden (in YAML, secureFiles).
  3. Selecteer naast het veld Inrichtingsprofiel het instellingenpictogram en upload het inrichtingsprofielbestand naar de secure files-bibliotheek. Tijdens het uploaden wordt uw certificaat versleuteld en veilig opgeslagen.
  4. Zodra uw certificaat is geüpload naar de secure files-bibliotheek, selecteert u het in de vervolgkeuzelijst Inrichtingsprofiel .
  5. Schakel het selectievakje met het label Profiel verwijderen na de build in. Dit zorgt ervoor dat het inrichtingsprofiel niet op de agentcomputer blijft staan.
Voorbeeld van YAML
  1. Upload uw inrichtingsprofiel naar de Secure Files-bibliotheek. Tijdens het uploaden wordt uw certificaat versleuteld en veilig opgeslagen.

  2. Voeg de taak Apple-inrichtingsprofiel installeren toe aan uw YAML voordat de Xcode- of Xamarin.iOS-taak:

    - task: InstallAppleProvisioningProfile@1
        inputs:
          provProfileSecureFile: 'my-provisioning-profile.mobileprovision' # replace my-provisioning-profile.mobileprovision with the name of your provisioning profile file.
    

    [OPMERKING] Profiel verwijderen nadat de standaardinstellingen van de build waar zijn.

Verwijzen naar de bestanden in uw Xcode-taak

Visual Editor
  1. Selecteer de Xcode-taak .
  2. Kies Handmatige ondertekening voor de optie Handtekeningstijl.
  3. Voer in het veld Handtekeningidentiteit het volgende in $(APPLE_CERTIFICATE_SIGNING_IDENTITY). Deze variabele wordt automatisch ingesteld door de taak Apple Certificate installeren voor het certificaat dat u hebt geselecteerd.
  4. Voer in het veld UUID van het inrichtingsprofiel in $(APPLE_PROV_PROFILE_UUID). Deze variabele wordt automatisch ingesteld door de taak Apple-inrichtingsprofiel installeren voor het inrichtingsprofiel dat u hebt geselecteerd.
Voorbeeld van YAML
- task: Xcode@5
  inputs:
    signingOption: 'manual'
    signingIdentity: '$(APPLE_CERTIFICATE_SIGNING_IDENTITY)'
    provisioningProfileUuid: '$(APPLE_PROV_PROFILE_UUID)'

Verwijzen naar de bestanden in uw Xamarin.iOS-taak

Visual Editor
  1. Selecteer de Xamarin.iOS-taak .
  2. Kies Id's voor de optie Overschrijven met behulp van de optie.
  3. Voer in het veld Handtekeningidentiteit het volgende in $(APPLE_CERTIFICATE_SIGNING_IDENTITY). Deze variabele wordt automatisch ingesteld door de taak Apple Certificate installeren voor het certificaat dat u hebt geselecteerd.
  4. Voer in het veld UUID van het inrichtingsprofiel in $(APPLE_PROV_PROFILE_UUID). Deze variabele wordt automatisch ingesteld door de taak Apple-inrichtingsprofiel installeren voor het inrichtingsprofiel dat u hebt geselecteerd.
Voorbeeld van YAML
- task: XamariniOS@2
    inputs:
      solutionFile: '**/*.iOS.csproj'
      signingIdentity: '$(APPLE_CERTIFICATE_SIGNING_IDENTITY)'
      signingProvisioningProfileID: '$(APPLE_PROV_PROFILE_UUID)'

Sla uw build-pijplijn op en u bent klaar. De buildagent kan nu uw app veilig ondertekenen en inrichten.

Veelgestelde vragen

Heb ik een agent nodig?

U hebt ten minste één agent nodig om uw build of release uit te voeren.

Ik heb problemen. Hoe kan ik problemen met deze problemen oplossen?

Zie Problemen met build en release oplossen.

Ik kan geen standaardagentpool selecteren en ik kan mijn build of release niet in de wachtrij plaatsen. Hoe kan ik dit oplossen?

Zie agentpools.

Mijn NuGet-pushtaak mislukt met de volgende fout: 'Fout: kan geen lokaal verlenercertificaat ophalen'. Hoe kan ik dit oplossen?

Dat kan worden opgelost door een vertrouwd basiscertificaat toe te voegen. U kunt de omgevingsvariabele NODE_EXTRA_CA_CERTS=file toevoegen aan uw buildagent of u kunt ook de NODE.EXTRA.CA.CERTS=file taakvariabele toevoegen in uw pijplijn. Raadpleeg Node.js documentatie voor meer informatie over deze variabele. Raadpleeg Variabelen instellen in een pijplijn voor instructies over het instellen van een variabele in uw pijplijn.

Ik gebruik TFS on-premises en ik zie sommige van deze functies niet. Waarom niet?

Sommige van deze functies zijn alleen beschikbaar in Azure Pipelines en zijn nog niet on-premises beschikbaar. Sommige functies zijn on-premises beschikbaar als u een upgrade hebt uitgevoerd naar de nieuwste versie van TFS.