Registrace aplikace iFIS-ePodatelna na platformě Microsoft identity

Z BBM Dokumentace iFIS
Verze z 19. 12. 2025, 15:41, kterou vytvořil Vlesek (diskuse | příspěvky)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Skočit na navigaciSkočit na vyhledávání

Předpoklady

  • Účet Azure, který má aktivní předplatné.
  • Účet Azure musí mít oprávnění ke správě aplikací v Azure Active Directory (Azure AD). Kterákoli z následujících rolí Azure AD zahrnuje požadovaná oprávnění:
    • Správce aplikace
    • Vývojář aplikací
    • Správce cloudových aplikací

Zaregistrujte aplikaci

  1. Přihlaste se k Azure Portal.
  2. Pokud máte přístup k více tenantům, pomocí filtru Adresáře + odběry v horním menu se přepněte na tenanta, do kterého chcete aplikaci zaregistrovat.
  3. Vyhledejte a vyberte Azure Active Directory .
  4. V části Spravovat vyberte Registrace aplikací > Nová registrace .
  5. Zadejte zobrazovaný název iFIS-ePodatelna. Zobrazovaný název můžete kdykoli změnit a stejný název může sdílet několik registrací aplikací. Automaticky vygenerované ID aplikace (klienta) jednoznačně identifikuje aplikaci v rámci Azure AD, nikoli její zobrazovaný název.
  6. U volby, kdo může používat aplikaci, nastavte volbu Účty pouze v tomto organizačním adresáři.
  7. Do pole URI přesměrování nic nezadávejte (volitelné).
  8. Vyberte Registrovat pro dokončení úvodní registrace aplikace.

Po dokončení registrace Azure Portal zobrazí podokno Přehled registrace aplikace s ID aplikace (klienta). Tuto hodnotu si poznamenejte, bude jí potřebovat aplikace ePodatelny pro připojení. Pro jistotu připojte i ID adresáře (tenanta).

Přidejte přihlašovací údaje aplikace

iFIS-ePodatelna je aplikace typu démon běžící na aplikačním serveru a v jejím případě použijeme přihlašovací údaje umožňující aplikaci autentizovat se jako sama sebe, aniž by za běhu vyžadovala interakci od uživatele.

K registraci důvěrné klientské aplikace použijeme tajný kód klienta (řetězec) jako přihlašovací údaj.

Tajný kód klienta

Tajemství klienta, které se někdy nazývá heslo aplikace , je řetězcová hodnota, kterou aplikace používá k identifikaci.

  1. V části Správa vyberte Certifikáty a tajné kódy > Tajné kódy klienta > Nový tajný kód klienta.
  2. Přidejte popis tajného klíče klienta, např. Klíč 1.
  3. Vyberte vypršení platnosti tajného klíče nebo zadejte vlastní životnost, doporučujeme 24 měsíců.
  4. Vyberte Přidat.
  5. Zaznamenejte hodnotu tajného kódu, bude jí potřebovat aplikace ePodatelny pro připojení.
Pozor Pozor
Tato tajná hodnota se po opuštění této stránky již nikdy nezobrazí.


Poznámka Poznámka
Microsoft doporučuje dobu platnosti klíče menší než 12 měsíců, nicméně ePodatelna platnosti klíče nekontroluje, ani nemůže, a po skončení platnosti klíče přestane fungovat. Proto musí exspiraci klíče hlídat administrátor, který včas zajistí vygenerování nového klíče a jeho nastavení v aplikaci.


Nastavte Oprávnění rozhraní API

iFIS-ePodatelna potřebuje přistupovat k rozhraní IMAP aplikace Office 365 Exchange Online, takže je potřeba nastavit příslušná oprávnění k API.
Stejná oprávnění je třeba definovat také pro protokol SMTP, pokud bude ePodatelna odesílat odpovědi na e-maily prostřednictvím Office 365 Exchange Online, a nikoliv přes lokální poštovní server.

Poznámka Poznámka
POZN.: Pokud Azure AD přiřadil zaregistrované aplikaci ePodatelny nějaká výchozí oprávnění k jiným API, tak je předem odeberte.
  1. V části Správa vyberte Oprávnění rozhraní API > Přidat oprávnění > Rozhraní API, která používá moje organizace.

  2. Do dotazovacího pole napište Office 365 a vyberte položku Office 365 Exchange Online.

  3. Zvolte typ oprávnění Oprávnění aplikace a zaškrtněte volby u oprávnění:

    • IMAP

      • IMAP.AccessAsApp

      • Mail.ReadWrite

      • Mail.Send

    • SMTP

      • SMTP.SendAsApp

  4. Vyberte Přidat oprávnění.

Nyní je potřeba ještě udělit souhlas správce pro váš tenant.

Delegujte oprávnění ke schránce

Bohužel tuto část oprávnění nelze nastavit v prostředí administrace Office 365 Exchange a je nutné jí provést prostřednictvím Exchange Online PowerShell. Lze provést i vzdáleně z PowerShell na PC.

Předpoklady

Nejprve si zjistěte potřebná ID z portálu Azure AD, pro:

  • APPLICATION_ID: Registrace aplikací > iFIS-ePodatelna > Základní údaje > ID aplikace (klienta)
  • ORGANIZATION_ID: Registrace aplikací > iFIS-ePodatelna > Základní údaje > ID adresáře (tenanta)
  • OBJECT_ID: Podnikové aplikace > iFIS-ePodatelna > ID objektu
Pozor Pozor
OBJECT_ID je ID objektu ze stránky Přehled uzlu Enterprise Application (Podnikové aplikace) pro aplikaci ePodatelny. Není to ID objektu z Přehledu uzlu Registrace aplikací. Použití nesprávného ID objektu způsobí nefunkčnost ověřování a přístupu do schánky.


Pro použití Cmdlet New-ServicePrincipal, nejprve nainstalujte ExchangeOnlineManagement a připojte se ke svému tenantovi, jak je znázorněno v následujícím příkladu:

Install-Module -Name ExchangeOnlineManagement -allowprerelease
Import-module ExchangeOnlineManagement
Connect-ExchangeOnline -Organization <ORGANIZATION_ID>

Pokud se při spuštění Cmdlet New-ServicePrincipal stále zobrazuje chyba i po provedení těchto kroků, je to pravděpodobné, že uživatel nemá dostatečná oprávnění na serveru Exchange Online k provedení operace. Registrace aplikace ePodatelny jako služby Azure AD do Exchange:

New-ServicePrincipal -AppId <APPLICATION_ID> -ServiceId <OBJECT_ID> -DisplayName ePodatelna [-Organization <ORGANIZATION_ID>]

Identifikátor SERVICE_PRINCIPAL_ID = ID registrované služby můžete získat pomocí Get-ServicePrincipal:

Get-ServicePrincipal [-Organization <ORGANIZATION_ID>] | Select-Object -Property DisplayName,AppId,Id | fl

Nyní přidáme oprávnění ke konkrétní poštovní schránce, kterou je implementována funkce ePodatelny:

Add-MailboxPermission -Identity "epodatelna@your_domain.cz" -User <SERVICE_PRINCIPAL_ID> -AccessRights FullAccess

Povolte SMTP AUTH ke schránce ePodatelny

Aby bylo možné odesílat zprávy z poštovní schránky ePodatelny, je nutné povolení SMTP AUTH v prostředí Microsoft 365 admin center.

Postupujte takto:

  1. Otevřete Centrum pro správu Microsoft 365 a přejděte do části Uživatelé > Aktivní uživatelé .
  2. Vyhledejte a vyberte uživatele ePodatelny v nabídce a klikněte na Pošta.
  3. V části E-mailové aplikace klikněte na Spravovat e-mailové aplikace.
  4. Zaškrtněte v nastavení SMTP s ověřením.
  5. Až budete hotovi, klikněte na Uložit změny.

Obsah obrázku text, snímek obrazovky, software, Počítačová ikona Obsah generovaný pomocí AI může být nesprávný.

Set-CASMailbox -Identity "epodatelna@your_domain.cz" -SmtpClientAuthenticationDisabled $false

Otestování přístupu

Otestování je možné provést pomocí PowerShell skriptu, viz Testování IMAP OAuth pomocí skriptu powershell.

Předem nainstalujte knihovny MSAL.PS, PowerShell se musí spustit jako správce:

Set-ExecutionPolicy RemoteSigned
Install-Module -Name MSAL.PS

Pomocí výše uvedeného odkazu GitHubu stáhněte soubor Get-IMAPAccessToken.ps1, který obsahuje testovací skript, ten umístěte do pracovního adresáře. Nezapomeňte odblokovat zabezpečení proti spuštění ve vlastnostech souboru. Pak můžete provést test podle následujícího příkladu:

Get-IMAPAccessToken.ps1 -tenantID "your_domain.cz" -clientId <APPLICATION_ID> -clientsecret "<tajný_kód_klienta>" -targetMailbox "epodatelna@your_domain.cz"

Pokud je vše v pořádku, skript provede autentizaci pomocí OAuth a vypíše seznam došlé pošty do ePodatelny. Je možné, že bude přechodně hlásit chybu, že nemá přístup ke schránce, pak vyčkejte cca 10 minut, než se vše promítne v Azure AD a Exchange Online.

Předání informací pro nastavení ePodatelny

Pro potřeby nastavení aplikace ePodatelny potřebujeme následující informace:

  • APPLICATION_ID: Registrace aplikací > iFIS-ePodatelna > Základní údaje > ID aplikace (klienta)
  • ORGANIZATION_ID: Registrace aplikací > iFIS-ePodatelna > Základní údaje > ID adresáře (tenanta)
  • Tajný kód klienta: Registrace aplikací > Certifikáty a tajné kódy > Tajné kódy klienta > Nový tajný kód klienta
  • Identifikaci tenenta: textový řetězec, který obvykle odpovídá vaší doméně.
  • Cílový mailbox: adresa mail schránky vaší ePodatelny.