Google Workspace

Google Workspace, tidligere G Suite, er en samling av Google-applikasjoner (Gmail, Google Docs, osv). Egentlig Google sitt svar på office-pakken. Mye av grunnen til at vi ønsker å benytte oss av Google Workspace er at det gir oss bedre kontroll over hvilke kanaler informasjon deles i, og på den måten gir oss bedre dekning for GDPR. I tilleg er Gmail noe de aller fleste er kjent med og gjerne foretrekker.

Samfundet bruker gratisabonnomentet «Google Workspace for ideelle organisasjoner».

GCDS

Google Cloud Directory Sync er et verktøy som synkroniserer brukere og informasjon fra en LDAP-tjener til Google Workspace. I vårt tilfelle er LDAP-serveren Active Directory via Samba. GCDS er en Java-applikasjon konfigurert med en XML-fil som beskriver tilkoblingen til domenekontroller og hvilken informasjon som skal synkroniseres.

Med GCDS følger det et verktøy "config-manager" som hjelper til med å lage denne XML-filen. Config-manager er en GUI-basert applikasjon, så der må man bruke X-forwarding hvis man ønsker å bruke det over SSH. For å gjøre litt mer komplisert har det noe å si hvilken UNIX-bruker som kjører config-manager. I vårt tilfelle ønsker vi at denne brukeren skal være "gsuitesync". For å få til å bytte bruker i X-forwarding må man gjøre litt triksing:

# ssh -X root@cassarossa.samfundet.no

# xauth list $DISPLAY
cassarossa/unix:10  MIT-MAGIC-COOKIE-1  c5133e07f0c24c5091fc29d37ed20be7

# echo $DISPLAY
localhost:10.0

# sudo su - gsuitesync
# xauth add cassarossa/unix:10  MIT-MAGIC-COOKIE-1  c5133e07f0c24c5091fc29d37ed20be7

# export DISPLAY=localhost:10.0

Det vi egentlig gjør her er å først hente display-innstillingene som er satt av -X flagget i ssh, for så å ta de med oss videre etter at vi har byttet bruker, ellers ville vi ikke kunne brukt grafiske applikasjoner.

Deretter er det bare å hoppe inn i mappen GoogleCloudDirSync og starte config-manager med ./config-manager. Om ny versjon er tilgjengelig, vil GUI-et spørre deg om du vil oppdatere. Det burde som regel være greit å gjøre, men det er en idé å skru av GCDS-cronjobben først. Etter oppdatering må du inn i config-manager igjen og verifisere den gamle configen. Det kan også hende at GCDS har glemt TLS-sertifikatet til voff, da må du legge det til igjen som beskrevet her. TL;DR: still deg i ~/GoogleCloudDirSync/jre og kjør =bin/keytool -keystore lib/security/cacerts -storepass changeit -import -file ~/var/voff.cer -alias voff. Når sertifikatet fornyes må det legges i ~/var. Nåværende sertifikat utløper i mars 2023.

Det er verdt å merke seg at kommunikasjonen er enveis – LDAP-informasjonen modifiserer Google Workspace-informasjonen, men GCDS påvirker aldri LDAP-tjeneren.

Sletting av brukere

Når brukere slettes fra AD, sletter GCDS dem også fra Google Workspace. Personlig data tilknyttet brukeren, som epost i Gmail og filer i «min disk», blir slettet, men filer i delte disker som er opprettet av brukeren blir beholdt.

GCDS krever visse felter fra AD slik at det vet hvilken info som skal settes på brukere:


objectClass: posixAccount
mail: BRUKERNAVN@g.samfundet.no
givenName: FORNAVN
sn: ETTERNAVN

I tillegg til dette synkroniserer vi også grupper ved hjelp av GCDS. Noe som er bra her er at medlemskap i ulike grupper også blir synkronisert av GCDS.


objectClass: posixGroup
mail: cn
member: memberOf

Innlogging

For å logge inn i Google Workspace-brukeren sin, må man (dersom man ikke har admin-bruker) gjennom vår egenlagde SAML identity provider. Denne er implementert med simplesamlphp, og hostes med apache på idp.samfundet.no på cirkus. Konfigurasjonsfilene til den ligger i /etc/simplesamlphp. For å gjøre autentiseringen gjennom Kerberos, har vi laget en mod_auth_kerb-auth-source for innlogginsportalen, som ligger i /usr/share/simplesamlphp/modules/itkacl og er basert på malen i /usr/share/simplesamlphp/modules/exampleauth/lib/Auth/Source/External.php. Når man forsøker å logge inn med Google Workspace-brukeren, blir man videresendt til idp.samfundet.no. Det er også laget to alias, gmail.samfundet.no og drive.samfundet.no, som videresender til henholdsvis mail.google.com/a/samfundet.no og drive.google.com/a/samfundet.no, for å gjøre innlogginsopplevelsen enklere.

Innlogging

Ettersom nettleseren som brukes når man legger til en Google-konto på en Android-enhet ikke støtter Basic Auth, er det laget en alternativ idp på https://idp2.samfundet.no som består av et enkelt webskjema som sjekker brukernavn og passord mot mdb. Apache leser UserAgent og videresender Android-enheter til denne IdP-en.

Epost og domener

For at man skal kunne få epost til sin @samfundet.no-adresse levert til Gmail i Samfundets Google Workspace, samtidig som avsender i Gmail blir satt til @samfundet.no-adressen automatisk, har vi gjort som følger: samfundet.no er primærdomenet for Samfundets Google Workspace, som betyr at alle brukerne har Google-kontoer på formen brukernavn@samfundet.no. Google Workspace er ikke satt opp til å ta i mot epost til samfundet.no. Det tar derimot epost til g.samfundet.no, som er satt opp som et domenealias for samfundet.no i Google Workspace, som vil si at epost til brukernavn@g.samfundet.no havner i innboksen til brukernavn@samfundet.no. For å bruke Gmail i Samfundets Google Workspace, må man derfor sette opp epostvideresending for Samfundet-brukeren sin til brukernavn@g.samfundet.no.

Google Drive-policy

Kun ITK kan lage delte drives og legge til medlemmer i dem. ITK oppretter delte drives for gjenger etter forespørsel. Enkeltmedlemmer bør ikke legges til i delte drives, unixgrupper bør benyttes isteden. Tilgangsnivået innholdsansvarlig (content manager) gis som regel til brukere av driven.

TODO

Lenker: Start, historie, til nye itkere

Epost: itk@samfundet.no | Telefon: 992 15 925 | Sist endret: 2022-11-01 12:21 | Revisjon: 26 (historie, blame) | Totalt: 1880 kB | Rediger