Setup Custom URL Domain

Standaard, bij een nieuw gemaakt domain in Okta, krijg je een url als: https://dev-663845-admin.okta.com

Dat is niet erg gebruikers vriendelijk en ook lastig te onthouden. Je kan bij Okta vragen voor een speciale extensie.

Bijvoorbeeld: https://bedrijf.okta.com

Het voordeel hiervan is dat het certificaat in beheer is bij okta, maar het is ook niet helemaal logisch. Beter zou het zijn als je een domain had als

Bijvoorbeeld: https://o.diligente.xyz

Dit laatste gaan we hieronder toevoegen.

Er zijn een paar stappen nodig om in Okta een custom domain name toe te voegen.

1. je moet een domain naam hebben. Dan kan bijvoorbeeld een sub-domainnaam zijn. In dit voorbeeld gebruik ik o.diligente.xyz

2. je moet valideren dat je eigenaar bent van het domain. Okta vraagt je daarvoor om een TXT-record toe te voegen aan het domain.

3. Geef je private en publieke certificaat op. Dit is wat lastiger en ga ik hieronder uitleggen.

4. Als dit allemaal goed is, kan je een cname opgeven.

Stap 3: Het certificaat.

Als je een certificaat koopt bij https://www.xolphin.com/ bijvoorbeeld, is het niet heel ingewikkeld. Voor ca €8,- per jaar ben je klaar. Je krijgt dat op verschillende manieren het certificaat toegestuurd. Maar het kan natuurlijk dat je gebruik wilt maken van een bestaand certificaat of dat het op een andere manier toegestuurd wordt.

Of je wilt natuurlijk het uitproberen en niet direct een factuur krijgen. Ook dat kan op verschillende manier. Ik gebruikt niet de meest voor de hand liggende route, maar omdat we al een aantal websites hosten op een windows server, is dit voor nu het eenvoudigste.

Maak een website

We maken een lege website aan, met de naam o.diligente.xyz

Deze subdomain registreren we ook in de DNS zodat als je naar http://o.diligente.xyz zou gaan, je op een lege website of een foutmelding te zien krijgt.

Omdat we zo een Let's Encrypt certificaat willen toevoegen, is het het handigste als de website benaderbaar is. Bij de controle wordt er dan een aantal bestanden neergezet in een map .well-known (die automatisch aangemaakt wordt)

Maak een certificaat

Heb je al een certificaat, die dat onderaan de site hoe om te gaan met een bestaand certificaat.

Voor nu gaat we een nieuw certificaat aanmaken. Hiervoor gebruiken we Let's Encrypt die erg eenvoudig op unix omgevingen werkt, maar op windows wat lastiger. Een handige tool is https://certifytheweb.com Dit programma (tot 5 sites gratis) controleert, vraagt aan en configureert ook automatisch het certificaat.

note: Je kunt met het programma certificaten automatisch laten vernieuwen. Dat werkt uiteraard niet in onze situatie. het certificaat zal daarom slechts voor 90 dagen geldig zijn.

Vertaal certificaat

Vervolgens moeten we het certificaat omzetten naar een text-bestand. Het handigste gaat dit met het programma OpenSSL. Voordat je het programma gaat installeren. Vaak is het programma al aanwezig.

In de logging van Certify zie je bij Info de naam van het PFX-bestand staan. Let op, bij deze naam mist een underscore (_).

Via OpenSSL kan je het certificaat installeren met pkcs12 -in <pfx-bestand> -out <tekst bestand> -nodes

Er wordt hierbij om een wachtwoord gevraagd, maar deze kan in dit geval leeg gelaten worden.

Als uitvoer wordt er een tekst-bestand aangemaakt. Dit bestand bevat ook de onderdelen die beginnen met ---BEGIN PRIVATE KEY---- en ---BEGIN CERTIFICATE ---

Deze twee onderdelen worden gevraagd (inclusief de --- regels aan het begin en het einde) door Okta.

Het resultaat

Het resultaat is vervolgens dat:

Let wel op, dit certificaat loopt snel af.

Dit levert wel een afweging op:

  • kort lopende certificaten zijn veiliger
  • de certificaten moeten handmatig geupdate worden.

In dit geval zou ik adviseren om een certificaat van 1 jaar te gebruiken en een (externe) monitoring configureren die de geldigheid van het certificaat controleert. Voordat het certificaat verlopen is, om deze namelijk worden vernieuwd.

Bestaand certificaat

In sommige gevallen is er al een certificaat aanwezig. Deze kan geexporteerd worden in windows dmv het programma MMC en voeg vervolgens de Snap-In: Certificates toe voor Local Computer.

Vervolgens kan dit certificaat (inc. private key!) geexporteerd worden.