{"id":280,"date":"2026-01-28T10:09:25","date_gmt":"2026-01-28T09:09:25","guid":{"rendered":"https:\/\/guillemrueda.com\/blog\/?p=280"},"modified":"2026-01-29T12:34:07","modified_gmt":"2026-01-29T11:34:07","slug":"configurar-azure-communications-smtp-a-keycloak","status":"publish","type":"post","link":"http:\/\/guillemrueda.com\/blog\/2026\/01\/28\/configurar-azure-communications-smtp-a-keycloak\/","title":{"rendered":"Configurar Azure Communications SMTP a Keycloak"},"content":{"rendered":"\n<p>Des que Keycloak 26.2 permet l&#8217;autenticaci\u00f3 XAuth2.0 \u00e9s permet enviar e-mails des relays del cloud.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Configurar aplicaci\u00f3 a l&#8217;Entra ID<\/strong><\/p>\n\n\n\n<p>Primer de tot ens hem de copiar el <em>TenantId <\/em>del domini d&#8217;EntraID:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"542\" height=\"403\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-13.png\" alt=\"\" class=\"wp-image-294\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-13.png 542w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-13-300x223.png 300w\" sizes=\"auto, (max-width: 542px) 100vw, 542px\" \/><\/figure><\/div>\n\n\n<p>Aneu al vostre gestor de domini d&#8217;Entra ID i afegiu una aplicaci\u00f3:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"243\" height=\"109\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-5.png\" alt=\"\" class=\"wp-image-286\"\/><\/figure><\/div>\n\n\n<p>Afegiu un nou registre:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"696\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-6.png\" alt=\"\" class=\"wp-image-287\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-6.png 840w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-6-300x249.png 300w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-6-768x636.png 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/figure>\n\n\n\n<p>Un cop creada accediu a la mateixa, primer copieu el identificador d&#8217;aplicaci\u00f3  i posteriorment aneu a l&#8217;apartat certificats i secrets, creeu-ne un de nou i deseeu en un lloc segur el secretId:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"785\" height=\"310\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-8.png\" alt=\"\" class=\"wp-image-289\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-8.png 785w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-8-300x118.png 300w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-8-768x303.png 768w\" sizes=\"auto, (max-width: 785px) 100vw, 785px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"879\" height=\"289\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-7.png\" alt=\"\" class=\"wp-image-288\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-7.png 879w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-7-300x99.png 300w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-7-768x253.png 768w\" sizes=\"auto, (max-width: 879px) 100vw, 879px\" \/><\/figure>\n\n\n\n<p class=\"has-large-font-size\"><strong>Configurar Azure Email Communication Service<\/strong><\/p>\n\n\n\n<p>Despr\u00e9s de crear el recurs cal provisionar un domini:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"255\" height=\"318\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image.png\" alt=\"\" class=\"wp-image-281\" style=\"width:227px;height:auto\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image.png 255w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-241x300.png 241w\" sizes=\"auto, (max-width: 255px) 100vw, 255px\" \/><\/figure><\/div>\n\n\n<p>Si s&#8217;afegeix un custom  tingueu en compte caldr\u00e0 verificar-lo que cal accedir al panell de DNS del domini per afegir registres CNAME com SPF, DKIM i DKIM2. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"202\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-1-1024x202.png\" alt=\"\" class=\"wp-image-282\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-1-1024x202.png 1024w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-1-300x59.png 300w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-1-768x151.png 768w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-1.png 1316w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-large-font-size\"><strong>Configurar Azure Communication Service<\/strong><\/p>\n\n\n\n<p>Anirem a Correu Electr\u00f2nic i dominis per afegir la configuraci\u00f3 feta<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"175\" height=\"96\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-2.png\" alt=\"\" class=\"wp-image-283\"\/><\/figure>\n\n\n\n<p>Un cop configurat en ens apareixer\u00e0 el domini:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"91\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-3-1024x91.png\" alt=\"\" class=\"wp-image-284\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-3-1024x91.png 1024w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-3-300x27.png 300w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-3-768x69.png 768w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-3.png 1411w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>En pic teniu configurat el domini ja podeu anar a crear el usuari de SMTP:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"253\" height=\"150\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-9.png\" alt=\"\" class=\"wp-image-290\"\/><\/figure><\/div>\n\n\n<p>Al afegir-lo podeu afegir el username tant com mail com customtext. \u00c9s indiferent:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"574\" height=\"593\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-10.png\" alt=\"\" class=\"wp-image-291\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-10.png 574w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-10-290x300.png 290w\" sizes=\"auto, (max-width: 574px) 100vw, 574px\" \/><\/figure><\/div>\n\n\n<p class=\"has-large-font-size\"><strong> Configurar e-mail a Keycloak<\/strong><\/p>\n\n\n\n<p>Accedim al realm que volem afegir missatgeria per correu electr\u00f2nic i aneu als settings de realm:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"289\" height=\"171\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-11.png\" alt=\"\" class=\"wp-image-292\"\/><\/figure><\/div>\n\n\n<p>Anem a la pestanya de Email<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"463\" height=\"165\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-12.png\" alt=\"\" class=\"wp-image-293\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-12.png 463w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-12-300x107.png 300w\" sizes=\"auto, (max-width: 463px) 100vw, 463px\" \/><\/figure><\/div>\n\n\n<p>A &#8220;Connection &amp; Authentication&#8221; considerem els seg\u00fcents valors:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Host: smtp.azurecomm.net<\/li>\n\n\n\n<li>Port: 587<\/li>\n\n\n\n<li>Encirptaci\u00f3:\n<ul class=\"wp-block-list\">\n<li>Enable SSL: FALSE<\/li>\n\n\n\n<li>Enable StartTLS: FALSE<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Authentication: TRUE<\/li>\n\n\n\n<li>Username: mail o customtext que haguem posat a configuraci\u00f3 de SMTP<\/li>\n\n\n\n<li>Authentication Type: Token<\/li>\n\n\n\n<li>Auth Token URL: https:\/\/login.microsoftonline.com\/[<em>TenantId <\/em>de EntraID]\/oauth2\/v2.0\/token<\/li>\n\n\n\n<li>Auth Token Scope: https:\/\/communication.azure.com\/.default<\/li>\n\n\n\n<li>Auth Token ClientId: el id de client d&#8217;aplicaci\u00f3 de Entra ID que hem creat al primer pas<\/li>\n\n\n\n<li>Auth Token Client Secret: el client secret que hem creat al primer pas al crear l&#8217;aplicaci\u00f3 al EntraID.<\/li>\n\n\n\n<li>Timeouts: sense tocar<\/li>\n<\/ul>\n\n\n\n<p>Guardeu i executeu prova. Si tot \u00e9s correcte, veureu notificaci\u00f3 i en uns segons rebreu email:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"636\" height=\"112\" src=\"https:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-14.png\" alt=\"\" class=\"wp-image-295\" srcset=\"http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-14.png 636w, http:\/\/guillemrueda.com\/blog\/wp-content\/uploads\/2026\/01\/image-14-300x53.png 300w\" sizes=\"auto, (max-width: 636px) 100vw, 636px\" \/><\/figure><\/div>\n\n\n<p>Fonts:<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/keycloak\/keycloak\/issues\/17432\">https:\/\/github.com\/keycloak\/keycloak\/issues\/17432<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/www.keycloak.org\/2025\/05\/send-mails-xoauth-26-2\">https:\/\/www.keycloak.org\/2025\/05\/send-mails-xoauth-26-2<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/learn.microsoft.com\/es-es\/azure\/communication-services\/quickstarts\/email\/send-email-smtp\/send-email-smtp-oauth\">https:\/\/learn.microsoft.com\/es-es\/azure\/communication-services\/quickstarts\/email\/send-email-smtp\/send-email-smtp-oauth<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/keycloak\/keycloak\/issues\/39610\">https:\/\/github.com\/keycloak\/keycloak\/issues\/39610<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/inero-software.com\/secure-email-delivery-in-keycloak-26-2-using-xoauth2\">https:\/\/inero-software.com\/secure-email-delivery-in-keycloak-26-2-using-xoauth2<\/a><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Des que Keycloak 26.2 permet l&#8217;autenticaci\u00f3 XAuth2.0 \u00e9s permet enviar e-mails des relays del cloud. Configurar aplicaci\u00f3 a l&#8217;Entra ID Primer de tot ens hem de copiar el TenantId del domini d&#8217;EntraID: Aneu al vostre gestor de domini d&#8217;Entra ID i afegiu una aplicaci\u00f3: Afegiu un nou registre: Un cop creada accediu a la mateixa, &hellip; <a href=\"http:\/\/guillemrueda.com\/blog\/2026\/01\/28\/configurar-azure-communications-smtp-a-keycloak\/\" class=\"more-link\">Continua la lectura de <span class=\"screen-reader-text\">Configurar Azure Communications SMTP a Keycloak<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,11,26],"tags":[],"class_list":["post-280","post","type-post","status-publish","format-standard","hentry","category-azure","category-cloud","category-keycloak"],"_links":{"self":[{"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/posts\/280","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/comments?post=280"}],"version-history":[{"count":5,"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/posts\/280\/revisions"}],"predecessor-version":[{"id":301,"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/posts\/280\/revisions\/301"}],"wp:attachment":[{"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/media?parent=280"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/categories?post=280"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/guillemrueda.com\/blog\/wp-json\/wp\/v2\/tags?post=280"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}