# Single sign-on (SSO) instellen

Source: https://contracko.com/nl/docs/single-sign-on-instellen

[Documentatie](https://contracko.com/nl/docs)

Single sign-on (SSO) instellen

# Single sign-on (SSO) instellen

Kopieer voor LLM

Met single sign-on (SSO) logt je team in bij Contracko via je bestaande identityprovider, zodat IT de toegang vanaf één plek beheert. Contracko ondersteunt self-service OIDC single sign-on op het Big Business-abonnement. Je kunt Microsoft Entra, Google Workspace, Okta, Auth0, JumpCloud, Keycloak of elke OIDC-compatibele provider koppelen. SAML 2.0 is beschikbaar op aanvraag.

Deze handleiding loopt de volledige installatie door: verifieer je domein, maak een app aan in je identityprovider, koppel deze in Contracko, test het en zet handhaving aan.

## Voordat je begint

Je hebt nodig:

- Het Big Business-abonnement. SSO-instellingen zijn alleen beschikbaar op Big Business.
- Een rol als admin, owner of facturatie-eigenaar in je Contracko-werkruimte.
- Tweefactorauthenticatie (2FA) ingeschakeld op het account van de facturatie-eigenaar. De facturatie-eigenaar is het ene account dat nog steeds met een wachtwoord kan inloggen als je identityprovider ooit niet beschikbaar is, dus Contracko vereist dat dat account 2FA heeft voordat je een provider kunt koppelen of handhaving kunt aanzetten. De facturatie-eigenaar kan dit instellen onder Settings, of via /totp/setup.
- Adminstoegang tot je identityprovider (om een OIDC-app aan te maken).
- Toegang tot je DNS-records (om je domein te verifiëren).

Je configureert alles onder Settings > Security (/account/security).

## Stap 1: Verifieer je domein

Voordat je een provider kunt koppelen, verifieer je ten minste één bedrijfsdomein. Een geverifieerd domein is wat je later in staat stelt om SSO te vereisen voor iedereen op dat domein.

1. Ga naar Settings > Security en zoek de kaart Verified domains.
2. Klik op Add domain en voer je kale bedrijfsdomein in, bijvoorbeeld yourcompany.com. Voeg geen https://, www. of een afsluitende slash toe. Subdomeinen tellen als aparte domeinen.
3. Contracko toont een DNS TXT record om toe te voegen, in de vorm contracko-domain-verification=.... Kopieer het.
4. Voeg dat TXT-record toe aan je domein bij je DNS-provider.
5. Klik terug in Contracko op Verify naast het domein. DNS-wijzigingen kunnen tot 48 uur duren om door te voeren; zodra het record live is, slaagt de verificatie en krijgt het domein een groene Verified-badge.

Het verifiëren van yourcompany.com dekt ook de subdomeinen, zoals alice@yourcompany.com en bob@eng.yourcompany.com.

## Stap 2: Maak een OIDC-app aan in je identityprovider

Maak in je identityprovider een nieuwe OIDC (OpenID Connect) webapplicatie aan. Je hebt de redirect-URI nodig die Contracko je toont tijdens Stap 3:

```
https://app.contracko.com/api/auth/sso/callback/<your-provider-id>
```

Open Settings > Security > Single sign-on > Add provider, kies je provider, en Contracko toont de exacte redirect-URI om te plakken. (Voor de generieke "Other" optie verschijnt de redirect-URI op de teststap, nadat je hebt opgeslagen, dus voeg deze toe aan je provider voordat je de test uitvoert.)

Vanuit je identityprovider verzamel je een Client ID en Client secret, plus één providerspecifieke waarde hieronder.

### Microsoft Entra

1. Ga in de Azure Portal naar Microsoft Entra ID > App registrations > New registration.
2. Kies onder Redirect URI het platform Web en plak de redirect-URI vanuit Contracko.
3. Kopieer op de pagina Overview de Application (client) ID en de Directory (tenant) ID.
4. Ga naar Certificates and secrets > New client secret en kopieer de secret Value (niet de Secret ID).
5. Voer in Contracko de Directory (tenant) ID in. Gebruik je tenantspecifieke ID, niet common, zodat het inloggen vergrendeld is op je tenant. Contracko bouwt de issuer URL voor je op.

### Google Workspace

1. Ga in de Google Cloud Console naar APIs and Services > Credentials > Create credentials > OAuth client ID.
2. Kies het applicatietype Web application.
3. Voeg onder Authorized redirect URIs de redirect-URI vanuit Contracko toe.
4. Kopieer de gegenereerde Client ID en Client secret.
5. Voer in Contracko je Expected hosted domain in, wat je primaire Google Workspace-domein is (bijvoorbeeld yourcompany.com). Alleen accounts van dat domein mogen inloggen. Google gebruikt altijd dezelfde issuer, dus is er geen issuer URL om in te voeren.

### Okta

1. Ga in de Okta Admin Console naar Applications > Create App Integration.
2. Kies OIDC - OpenID Connect en het applicatietype Web Application.
3. Voeg onder Sign-in redirect URIs de redirect-URI vanuit Contracko toe.
4. Kopieer de Client ID en Client secret vanaf het tabblad General van de applicatie.
5. Voer in Contracko je Okta domain in (bijvoorbeeld your-company.okta.com). Geen https://, geen afsluitende slash, geen pad. Contracko bouwt de issuer URL voor je op.

### Auth0

1. Ga in het Auth0 Dashboard naar Applications > Create Application.
2. Kies het applicatietype Regular Web Application.
3. Voeg onder Settings > Allowed Callback URLs de redirect-URI vanuit Contracko toe.
4. Kopieer de Client ID en Client Secret vanaf het tabblad Settings.
5. Voer in Contracko je Auth0 tenant in, wat het deel is vóór .auth0.com in je tenant-URL. Contracko bouwt de issuer URL voor je op.

### JumpCloud

1. Ga in het JumpCloud Admin Portal naar SSO Applications > Add New Application.
2. Selecteer Custom OIDC App.
3. Voeg onder Redirect URIs de redirect-URI vanuit Contracko toe.
4. Kopieer de Client ID en Client Secret vanaf het tabblad SSO van de applicatie. JumpCloud gebruikt voor alle tenants dezelfde issuer, dus is er geen issuer URL om in te voeren.

### Keycloak

1. Selecteer in de Keycloak Admin Console je realm en ga vervolgens naar Clients > Create client.
2. Stel het clienttype in op OpenID Connect en schakel Client authentication in.
3. Voeg onder Valid redirect URIs de redirect-URI vanuit Contracko toe.
4. Kopieer op het tabblad Credentials de Client secret. De Client ID is de naam die je de client hebt gegeven.
5. Voer in Contracko je Keycloak host en Realm in. Contracko bouwt de issuer URL voor je op.

### Elke andere OIDC-provider

1. Maak in je identityprovider een OIDC (OpenID Connect) webapplicatie aan.
2. Voeg de redirect-URI vanuit Contracko toe aan de toegestane redirect-URL's van de applicatie.
3. Kopieer de Client ID en Client secret.
4. Voer in Contracko de volledige Issuer URL van je provider in en een Provider name. Contracko detecteert de autorisatie-, token- en key-endpoints automatisch via /.well-known/openid-configuration.

## Stap 3: Koppel de provider in Contracko

1. Ga naar Settings > Security > Single sign-on (OIDC) en klik op Add provider.
2. Kies je identityprovider uit de lijst.
3. Configureer de verbinding: plak de Client ID en Client secret, en vul vervolgens het providerspecifieke veld uit Stap 2 in (tenant-ID, hosted domain, Okta domain, enzovoort).
4. Stel de standaardrol in die nieuwe SSO-gebruikers krijgen wanneer ze voor het eerst inloggen (member, manager of admin). De standaard is member.
5. Klik op Save and test.

## Stap 4: Test de verbinding

Contracko verifieert de verbinding met een echte round-trip voordat je deze kunt afdwingen.

1. Klik bij de stap Test sign-in op Open test sign-in. Contracko opent je identityprovider in een pop-up.
2. Log in met een testaccount op je tenant.
3. Contracko detecteert de geslaagde round-trip, markeert de provider als Verified, en logt het testaccount weer uit.
4. Klik op Continue.

Als de test mislukt, controleer dan of de redirect-URI in je identityprovider exact overeenkomt en klik vervolgens op Retry.

## Stap 5: Zet handhaving aan

Handhaving maakt SSO de enige inlogmethode voor gebruikers op je geverifieerde domeinen.

1. Zet bij de stap Enforce SSO (of de providerlijst) Enforce SSO for this organisation aan.
2. Wanneer je handhaving inschakelt, logt Contracko bestaande wachtwoord- en social sessies uit voor gebruikers op je geverifieerde domeinen, zodat iedereen weer inlogt via je identityprovider.

Een provider moet Verified zijn voordat je deze kunt afdwingen, en de facturatie-eigenaar moet 2FA hebben ingeschakeld. Je kunt handhaving op elk moment weer uitzetten. Om een provider te verwijderen, schakel je eerst de handhaving uit.

## Noodtoegang

Als je identityprovider ooit niet beschikbaar is, kan de facturatie-eigenaar nog steeds inloggen met een wachtwoord of social account, zelfs terwijl handhaving aanstaat. Dit is waarom Contracko vereist dat de facturatie-eigenaar 2FA heeft ingeschakeld.

Wanneer de facturatie-eigenaar op deze manier inlogt, toont Contracko een korte melding, registreert de gebeurtenis en e-mailt de facturatie-eigenaar het gebruikte IP-adres en apparaat. De facturatie-eigenaar kan ervoor kiezen om door te gaan met de bypass of over te schakelen naar inloggen via je identityprovider.

## Hoe accounts en rollen werken

- Nieuwe gebruikers worden automatisch aangemaakt de eerste keer dat ze via SSO inloggen, en worden toegevoegd aan je werkruimte met de standaardrol die je op de provider hebt ingesteld.
- Bestaande gebruikers met hetzelfde e-mailadres worden automatisch gekoppeld, zodat iemand die eerder een wachtwoord gebruikte zijn account en geschiedenis behoudt.
- Roltoewijzing gebruikt de standaardrol van de provider. Het koppelen van identityprovider- groepen aan specifieke Contracko-rollen is nog niet beschikbaar.

## Veelgestelde vragen

Welk abonnement bevat SSO? Self-service SSO is inbegrepen bij het Big Business-abonnement.

Ondersteunen jullie SAML? Self-service installatie is vandaag OIDC. SAML 2.0 is beschikbaar op aanvraag; neem contact met ons op en we helpen je bij het instellen.

Wie kan SSO instellen? Admins, owners en de facturatie-eigenaar. De facturatie-eigenaar moet eerst 2FA hebben ingeschakeld.

Kan ik SSO voor iedereen vereisen? Ja. Verifieer je domein, koppel en test een provider en zet vervolgens handhaving aan. Gebruikers op je geverifieerde domeinen loggen dan in via je identityprovider.

Wat als onze identityprovider uitvalt? De facturatie-eigenaar kan inloggen met een wachtwoord plus 2FA als nood-bypass, en ontvangt elke keer dat dit gebeurt een e-mail.
