!!!! Při autentizaci je vyžadováno ze strany Microsoftu vracení hodnoty ImmutableID uživatele v atributu NameID, který posílá 2Element. Každý uživatel z lokálního Active Directory, který je synchronizovaný do Azure, má ImmutableID s hodnotou objectGUID z lokálního AD. Pokud je uživatel vytvořen pouze v Azure AD, pak nemá žádné ImmutableID nastaveno a je třeba mu ho nastavit a potom vracet při autentizaci.
1. Nastavení na straně 2Element
Vytvoříme novou chráněnou aplikaci s nastavením:
...
Typ
...
SAML
...
SP entity ID
...
urn:federation:MicrosoftOnline
...
Podrobná oficiální dokumentace k SSO je k dispozici na adrese:
...
...
...
Režim podpisu
...
Response
...
?? Formát elementu NameID
(Ještě není dořešeno viz poznámka před…)
...
2. Nastavení na straně Microsoft 365
Nastavení je třeba provést přes powershell
Code Block | ||
---|---|---|
| ||
# Nainstalujeme modul MSOnline
Install-Module MSOnline
# Připojíme se k Office 365 (vyskočí dialog na přihlášení v prohlížeči)
Connect-MsolService
# Nastavíme proměnné pro autentizaci, které vychází z chráněné aplikace v elementu např.
$domain = "sonpo.eu"
$brandName = "2Element SAML 2.0 IDP"
$logOnUri = "https://2element.sonpo.cz/sso/saml/post"
$logOffUri = "https://2element.sonpo.cz/sso/saml/logout"
$ecpUri = "https://2element.sonpo.cz/sso/saml/post"
$myURI = "https://2element.sonpo.cz"
$mySigningCert = "MIICuzCCAaOgAwIBAgIJAJwETO0CGVijMA0GCSqGSIb3DQEBCwUAMBwxGjAYBgNVBAMMETJFbGVtZW50IFNBTUwgSWRQMCAXDTIyMTAwNTE0NDIwNFoYDzIwNTIwOTI3MTQ0MjA0WjAcMRowGAYDVQQDDBEyRWxlbWVudCBTQU1MIElkUDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL6vNC1h0tGaB9Gjk2U6YHwCv4/lD5cak8T6ekf7ihlOcmPKoROvoM9jZQb2yTp5xbMo9RMkoxRLKOkB8Gpp3In66PSLokhg87Sen2w3XWH1dXoIELPAenctqGNjM2Pmw8jBCa759Xstn33E+rGq10lgZLlme2n52KLyLL0bjVydRCp0ibEmXjMdqJ03T4vGrNkRid85qAaQrRO2sr04p5iGAlZRRXNRMoSA8GeJ62Dp6IIlXHRHhhwGOYl+VM1UJ5A2S5lZ0yCS27RqQRSGwyf/XcSu5zh9wgUsKQ1072dInlfj+tMbuZGY9mT4vJtUxH951+REWfPHYeQv+mXb1E0CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAtrB72hQVxSGyd+l8QGonm3xcIkzSdLnpIlpjW39TJJ3MJiueTvlCu2h92s61uInMDUpMQjJhUQV5NCs+cRAaqHgsjQTqN9JthvN6nBKknLispYumbrONiqCLT1D6WqEQRyjCm3w8C72bPtMpBA0RjMb8/1hEjaiYIF2iPqxgy6JmC9lu+YvbmJCBRjtxDXPu9tpZGPH0ccxcjYOw286l/iG/omDQhq+PIS5b2OClx6iflJDuuEmEnBoGMmdrIwqJyh4GF7S83UBhnB/RLXl4Sg+8EHAvwIK8iUwLcu6PwnN5YJd7pqmLTAuTqEUFElWUNzJRDSFu2ZRrsowIuaI/+Q=="
$uri = "https://2element.sonpo.cz/sso/saml/post"
$protocol = "SAMLP"
# Změníme autentizaci z managed na federation pro doménu
Set-MsolDomainAuthentication -DomainName $domain -FederationBrandName $brandName -Authentication Federated -PassiveLogOnUri $logOnUri -ActiveLogOnUri $ecpUri -SigningCertificate $mySigningCert -IssuerUri $myURI -LogOffUri $logOffUri -PreferredAuthenticationProtocol $protocol |
Nyní by autentizace uživatelů v doméně měla být směrována přes SAML na 2Element aplikaci.
Pro změnu zpět a další informace je možné použít tyto powershell příkazy
...
language | powershell |
---|
...
/en-us/azure/active-directory/hybrid/how-to-connect-fed-saml-idp
Požadavky
Pro integraci 2Element do prostředí Microsoft 365 je nutný on-premise Active Directory server s funkční synchronizací účtů pomocí Azure AD Connect (https://learn.microsoft.com/en-us/azure/active-directory/hybrid/how-to-connect-install-express).
V aplikaci 2Element musí být nastavený Active Directory server jako poskytoval autentizace a musí být nastavena pravidelná synchronizace účtů.
Nastavení na straně 2Element
Vytvoříme nového poskytovatele autentizace (Nastavení - Poskytovatelé autentizace - Přidat) typu Active Directory.
Poté vytvoříme novou chráněnou aplikaci (Nastavení - Chráněné aplikace - Přidat) typu SAML, vybereme konfigurační profil Microsoft 365 a jako vzdáleného poskytovatele autentizace vybereme poskytovatele autentizace vytvořeného v předchozím kroku. Po vytvoření chráněné aplikace je zobrazen její detail s informacemi potřebnými pro integraci do Microsoft 365.
Nastavení na straně Microsoft 365
V detailu chráněné aplikace v sekci Informace pro integraci zobrazím pomocí tlačítka Zobrazit vzorovou CLI konfiguraci PowerShell skript pro nastavení integrace (“federace”) s 2Element.
V zobrazeném dialogovém okně zadáme doménu kterou chceme integrovat s 2Element a výsledný PowerShell skript stáhneme a spustíme v PowerShell konzoli. Po spuštění skriptu se zobrazí dialogové okno pro zadání přístupových údajů administrátora Azure Active Directory.
V případě potřeby integrace více domén akci opakujeme s jinou doménou.