Насправді, більшість людей вважають, що ідентифікація – це просто ім'я користувача та пароль. Ви вводите їх, отримуєте доступ, і готово. Але коли ви бізнес, що обслуговує клієнтів, ідентифікація стає набагато складнішою. Що робити, коли ваш додаток має дозволити тисячам людей реєструватися або входити за допомогою свого Google-аккаунту замість створення ще одного пароля? І як убезпечити всі ці клієнтські дані, не змішуючи їх із вашим каталогом працівників? Саме для вирішення цієї проблеми було створено Microsoft Entra External ID. Ось у чому річ. Він повністю замінює Azure AD B2C. Наприкінці цього епізоду ви зрозумієте, що таке External ID насправді – три основні способи його використання та чому це важливо для будь-якого клієнтського додатку. Старий метод – окремі ізольовані системи ідентифікації. Уявіть, що 20 років тому ви створили додаток для клієнтів. Тоді вам доводилося створювати власну систему входу, писати код для паролів, налаштовувати базу даних для їх зберігання та розробляти процес відновлення пароля – усе з нуля. Це добре працювало для маленького додатку з кількома сотнями користувачів, але зі зростанням додатків усе швидко ускладнювалося. Компаніям потрібно було дозволити вхід через Google або Facebook, впровадити багатофакторну автентифікацію та обробляти мільйони аккаунтів без збоїв. Створення всього цього власноруч перетворювалося на справжній кошмар. Першою відповіддю Microsoft була Azure AD B2C. Це був сервіс ідентифікації клієнтів, який свого часу вирішував реальну проблему. Але саме тут і почалися труднощі. Головною проблемою були так звані спеціальні політики, які писалися на мові XML. Якщо ви коли-небудь працювали з XML-файлами на сотні рядків, ви знаєте, як це болісно. Важко налаштовувати, важко налагоджувати, а якщо щось ламалося успіхів у пошуку причини. До того ж, Azure AD B2C була відокремлена від основної платформи ідентифікації Microsoft. Тож, якщо у вас уже були Microsoft 365 або Azure AD для працівників, B2C відчувалася як вивчення зовсім іншого продукту. Як і варто було очікувати, IT-команди ледве підтримували її, розробники не хотіли з нею працювати, а клієнти отримували незручний інтерфейс реєстрації, що змушував їх йти. Microsoft зрозуміла, що потрібне щось простіше й уніфіковане, і саме це стало Microsoft Entra External ID. Що таке Microsoft Entra External ID насправді? Отже, що саме являє собою Microsoft Entra External ID? Ось найпростіше визначення. Це хмарний сервіс ідентифікації для зовнішніх користувачів, клієнтів, партнерів та гостей, а не працівників. Подумайте про це так. Уявіть, що у вашої компанії є офісна будівля. Це ваш орендарк-тенант для працівників. Це місце, де працюють ваші співробітники, де стоять їхні столи та куди вони потрапляють за перепустками. Entra ID керує цією будівлею. Тепер уявіть, що ви відкриваєте вітрину для клієнтів, окремий простір, власний вхід, власні правила та власна безпека. Клієнти не заходять у кімнату відпочинку персоналу, а співробітники не отримують випадковий доступ до облікових записів клієнтів. Це і є External ID. Це частина сімейства Microsoft Entra, але дещо інша за призначенням. Це рішення створено для CIEM, керування ідентифікацією та доступом клієнтів, що охоплює весь життєвий цикл зовнішнього користувача. Реєстрація, вхід, скидання пароля, керування профілем, багатофакторна автентифікація, видача токенів. Він працює зі стандартними протоколами, такими як O2.0, OpenID Connect та SML, тому до нього можна підключити майже будь-який застосунок. Але ось у чому головна відмінність від старого Azure ADB2C. External ID простіший. Більше жодних спеціальних XML-політик. Натомість ви налаштовуєте потоки користувачів безпосередньо в центрі адміністрування. Або використовуєте спеціальні розширення автентифікації, які підключаються до вашої наявної серверної логіки. Та сама потужність менше проблем. Три основні випадки використання. Отже, як насправді використовувати External ID? Існує три головні сценарії. Вони охоплюють майже кожну ситуацію, коли вам потрібно керувати доступом неспівробітника. Почнемо з найбільш поширеного «Ідентифікація клієнтів» або B2C. Уявіть, що ви створюєте застосунок для замовлення піци. Вам потрібно, щоб люди реєструвалися, робили замовлення та поверталися наступного тижня. Ви хочете, щоб вони входили через свій обліковий запис Google замість створення ще одного пароля, і вам потрібно зібрати їхні імена, номери телефонів та вподобання щодо доставки. External ID вирішує всі ці завдання. Ви отримуєте готові потоки реєстрації та входу. Ви налаштовуєте, які атрибути збирати, ім'я, телефон, усе, що вам потрібно. Ви налаштовуєте соціальний вхід через Google, Facebook або Apple. І коли користувач автентифікується, External ID видає токен вашому застосунку, щоб той знав, хто це. Це заміна Azure ADB2C, і саме з цього починає більшість організацій. Інший сценарій – це співпраця між компаніями або B2B. Це коли вам потрібно надати партнерам або постачальникам доступ до ваших внутрішніх застосунків. Можливо, у вас є сайт SharePoint, який має бачити зовнішній логістичний партнер або інструмент керування проектами для фрилансерів-дизайнерів. У цьому сценарії ви запрошуєте їх як гостювих користувачів у свій робочий тенан. External ID обробляє електронні листи із запрошеннями, процес активації, коли вони приймають запрошення і політики доступу, що контролюють, що саме вони бачать. Це вже багато років існує як функція співпраці B2BVJD. Але тепер це частина парасолькового бренду External ID, тому ви керуєте цим з того самого місця, що й ідентифікаторами ваших клієнтів. Далі йде взаємодія машина-машина або M2M. Вона менш помітна для кінцевих користувачів, але не менш важлива. Іноді ваш серверний сервіс має взаємодіяти з іншим ARRI, платіжним процесором, сервісом аналітики даних або внутрішнім мікросервісом. Людина тут не задіяна, це просто одна програма звертається до іншої. External ID використовує потік автентифікації клієнтських облікових даних ООТ 2.0. Ваш сервіс автентифікується за допомогою ідентифікатора клієнта та секретного ключа, отримуючи токен для виклику подальшого ARRI. Це потребує преміум-додатку M2M, тому є певні витрати, але якщо вам потрібно убезпечити обмін даними між ARRI, це вбудована функція. Ці три сценарії охоплюють майже кожну ситуацію із зовнішньою ідентифікацією, з якою ви зіткнетеся. Але є важливе рішення, яке вам потрібно прийняти, де саме ці користувачі будуть зберігатися. Оскільки External ID може працювати у двох дуже різних місцях – робочий тенант або зовнішній тенант. Розберімо ці два варіанти. External ID може працювати у вашому поточному робочому тенанті або як цілком окремий зовнішній тенант. Це не одне й те саме, і вибір неправильного варіанту може спричинити проблеми в майбутньому. Почнімо з варіанту робочого тенанта. Ваша компанія вже має Tenant Entra ID для ваших співробітників. Це і є ваш робочий тенант. Якщо ви увімкнете функцію самостійної реєстрації гостєвих користувачів у цьому тенанті, зовнішні користувачі зможуть реєструватися і потрапляти в той самий каталог, що й ваші співробітники. Їхні облікові записи будуть розташовані поруч із обліковим записом вашого гендиректора. Для простіших сценаріїв B2B, як-от запрошення кількох партнерів на сайт SharePoint, змішування їх у тому самому каталозі цілком прийнятне. Це легко налаштувати, і вам не потрібно керувати окремим тенантом. Але є нюанс. Якщо ви створюєте застосунок для клієнтів із тисячами користувачів, ви не захочете, щоб ці клієнти перебували в тому ж каталозі, що й ваші співробітники. Це ризик для безпеки. Співробітник може випадково отримати доступ до даних клієнтів. Зміна конфігурації, призначена для співробітників, може вплинути на доступ клієнтів. А брендинг ваших сторінок входу для клієнтів буде прив'язаний до того, що ви налаштували для своєї компанії. Це не ідеально. Альтернативою є варіант зовнішнього тенанта. Ви створюєте новий ізольований каталог спеціально для ідентифікаторів клієнтів. Тут немає співробітників. Це повністю відокремлений простір. Пам'ятаєте аналогію з офісною будівлею раніше? Робочий тенант – це ваша штаб-квартира компанії. Зовнішній тенант – це окремий магазин, який ви відкриваєте для своїх клієнтів. У них власний вхід, власні правила та власна безпека. Нічого не змішується. Отже, які переваги зовнішнього тенанта? По-перше, ви отримуєте ізольоване сховище користувачів. Дані клієнтів залишаються повністю відокремленими від даних працівників, що зменшує ризики та спрощує дотримання вимог. По-друге, ви отримуєте окремий брендинг. Ви можете налаштувати вигляд сторінок входу спеціально для ваших клієнтів, не впливаючи на корпоративний орендар. По-третє, ви отримуєте нативний арі автентифікації для мобільних додатків, що дозволяє створювати повністю кастомні екрани входу в iOS чи Android-додатках. Жодних перенаправлень у браузер чи незграбних веб-вікон. І по-четверте, ви отримуєте ціноутворення на основі MIU, тобто щомісячних активних користувачів. Ви платите лише за тих користувачів, які реально пройшли автентифікацію протягом місяця, що природно масштабується зростом вашої клієнтської бази. Отже, коли що обирати? Все досить просто. Якщо ви створюєте бід вас і додаток для тисяч клієнтів, обирайте зовнішній орендар. Це рекомендований підхід, і саме для цього було створено External ID. Якщо ви просто запрошуєте партнерів для доступу до внутрішніх ресурсів, варіант робочого орендаря цілком підійде. Головне – зрозуміти різницю до початку розробки, Тепер поговоримо про безпеку. Якщо ви відкриваєте доступ клієнтам до свого додатка, ви маєте переконатися, що сторонні особи не потраплять всередину. External ID включає ті самі функції безпеки корпоративного рівня, які EntraID пропонує для працівників. Це означає багатофакторну автентифікацію, умовний доступ та політики на основі ризиків. Для MFA наразі у вас є два варіанти. Одноразовий пароль на електронну пошту – безкоштовний. Система надсилає код на пошту користувача, він вводить його і готово. СМС-код працює так само, але надсилається на телефон, і тут передбачені витрати оператора. Варто зазначити, що підтримки Microsoft осентикейта поки що немає. Це поточне обмеження, над яким Microsoft, імовірно, працює, але наразі це тільки пошта або СМС. Умовний доступ – це найцікавіша частина. Ви можете задати правила, наприклад, вимагати MFA при середньому рівні ризику входу або блокувати доступ із країн, у яких ми не ведемо бізнес. Система оцінює кожну спробу входу в режимі реального часу. Система може автоматично підвищити вимоги безпеки без необхідності будувати цю логіку власноруч. Але є одна функція, яка дійсно виділяється, посилена автентифікація – step-up осентикейшн. Ось як це працює. Уявіть, що користувач входить у ваш додаток лише за паролем, щоб переглянути каталог товарів. Це нормально для дій із низьким ризиком, але коли вони намагаються переглянути історію платежів або завантажити рахунок, вам потрібна додаткова перевірка. Завдяки поетапній автентифікації ви можете вимагати МФА лише для певних розділів вашого додатка. Користувач не отримує запит, доки не спробує отримати доступ до чогось конфіденційного. І все це обробляється External ID у фоновому режимі за допомогою так званого контексту автентифікації. Ви визначаєте, які частини вашого додатка потребують додаткового захисту, а система бере на себе решту. Користувач отримує зручність під час звичайного перегляду, а конфіденційні дані залишаються захищеними. Брендинг і користувацький досвід Контроль брендингу – одна з головних причин, чому організації обирають External ID, а не власну систему входу. Ви отримуєте повний контроль над виглядом сторінок реєстрації та входу, завантажуєте свій логотип, задаєте кольори фону, додаєте фавікон для вкладки браузера та налаштовуєте верхній і нижній колон титули з посиланнями на політику конфіденційності і умови використання. Якщо вам потрібно ще більше контролю, ви можете завантажити власний CSS-файл, щоб змінити шрифти, кольори кнопок і макет. Це ваш бренд, ваші кольори, ви вирішуєте все. А ось тут починаються нюанси. Брендинг є глобальним для орендаря, а не для кожного окремого додатка. Тож, якщо у вас кілька додатків, наприклад, клієнтський портал і мобільний застосунок, вони матимуть однакові брендовані сторінки. Ви не можете надати кожному додатку власний вигляд. Старий Azure ADB2C дозволяв налаштовувати брендинг для кожного додатка, але External ID поки що це не підтримує. Ще одне обмеження – повідомлення про помилки на сторінках входу не можна налаштувати. Якщо хтось введе неіснуючу адресу електронної пошти, він побачить щось на кшталт, ми не змогли знайти обліковий запис із цією адресою. І ви не можете змінити цей текст. Для деяких організацій це прийнятно, але для інших, особливо в регульованих галузях або з суворим стилем бренду, це справжня проблема. Для мобільних додатків є кращий варіант. External ID має власний арі автентифікації для iOS та Android. Замість того, щоб перенаправляти користувачів на сторінку входу в браузері, ви можете створити повністю власні екрани входу всередині додатка. Жодних перенаправлень у браузер, жодних незграбних веб-переглядів. Користувач весь час залишається у вашому додатку, і ви контролюєте кожен піксель. Це набагато зручніший досвід, і це одна з тих функцій, яких ніколи не було в Azure AD B2C. Міграція з Azure AD B2C Якщо ви вже користуєтеся Azure AD B2C, ви, мабуть, запитуєте себе, що це означає для вас. Справа ось у чому. Microsoft підтримуватиме B2C принаймні до 2030 року. Отже, ваші існуючі орендарі не перестануть працювати завтра, але нових функцій не буде. Усі інновації, ключі доступу, власна автентифікація, захист від шахрайства є ексклюзивними для External ID. Ви знаходитесь на платформі, яка фактично заморожена. Компанія Microsoft опублікувала офіційні інструменти та рекомендації щодо міграції, і залежно від ваших масштабів існує два шляхи. Для орендарів із кількістю об'єктів каталогу користувачів, груп, спеціальних атрибутів, менше ніж 5 мільйонів стандартна міграція є досить простою. Це працює як перенесення між орендарями. Ви створюєте нового орендаря External ID, переносите користувачів та їхні облікові дані, а потім перемикаєте свої програми. Microsoft надає інструменти для масового експорту і імпорту користувачів, а для мінімізації збоїв під час переходу можна використовувати JIT-міграцію паролів. Для більших орендарів, що мають понад 5 мільйонів об'єктів каталогу, існує режим сумісності високого масштабу HSC. У цьому режимі Azure AD B2C та External ID працюють паралельно в межах одного орендаря. Ваші наявні кінцеві точки B2C залишаються активними, поки ви поступово переводите свої програми. Це рішення розроблене для організацій, які не можуть перенести мільйони користувачів за ніч, але воно має свої недоліки. Жодних соціальних провайдерів ідентифікації, ключів доступу, обмежений умовний доступ і деякі функції просто недоступні. Сприймайте це як стратегію переходу, а не як постійне рішення. Тепер про серйозну зміну. Спеціальні політики більше не підтримуються. Якщо ви створили складні процеси автентифікації за допомогою XML-фреймворку Azure AD B2C, вони не працюватимуть в External ID. Вам доведеться відтворити цю логіку, використовуючи потоки користувачів та спеціальні розширення автентифікації. Не існує магічного інструменту, який автоматично конвертує ваш XML у новий формат. Вам доведеться зробити це вручну. Отже, підсумуємо. Якщо ви починаєте з нуля сьогодні, використовуйте External ID. Немає жодних причин навіть дивитися на B2C. Якщо у вас вже є орендар B2C, починайте планувати міграцію зараз. У вас є час до 2030 року, але якщо чекати до останнього моменту, вам доведеться поспіхом виконувати складну міграцію, одночасно підтримуючи роботу наявних програм. Починайте з малого. Оберіть одну програму, перенесіть її, протестуйте, засвоїте отриманий досвід, а потім переходьте до інших. Досвід розробника та автоматизація. Microsoft дійсно зосередилася на тому, щоб зробити External ID зручним для розробників, і це значна відмінність від старих спеціальних політик B2C. Пам'ятаєте ті XML-файли, що розтягувалися на сотні рядків і ламалися через одну загублену дужку? Цього більше немає. Існує розширення для Visual Studio Code під назвою Microsoft Entra External ID. Після автентифікації ви можете переглядати свого орендаря, потоки користувачів, завантажувати їх як JSON-файли і навіть попередньо переглядати брендинг, не виходячи з редактора. Ви бачите, як виглядає сторінка входу ще до її публікації. Крім того, є Microsoft Graph ARI. Майже кожен ресурс External ID, потоки користувачів, реєстрації програм і брендинг можна керувати програмно. Це означає, що ви можете автоматизувати налаштування орендаря у своїх CI, CD-конвоєрах за допомогою Павашел або РЕСТ-запитів. Створюйте новий клієнт, налаштовуйте потоки користувачів, реєструйте додаток, додавайте брендинг і все це через скрип. Якщо ви керуєте кількома середовищами, це значно економить час. Користувацькі розширення автентифікації це справжня сила. Замість складного XML ви розширюєте потоки автентифікації простими HTTP запитами до Azure Functions. Ви можете підключитися до чотирьох подій. Початок видачі токена дозволяє додавати до нього власні твердження, як от ролі чи рівень лояльності. Збір атрибутів, початок і надсилання дозволяє перевіряти, чи заповнювати дані реєстрації, викликаючи власний бекенд. А надсилання OOTP на пошту дає змогу налаштувати листи для верифікації. Це така ж гнучкість, як у B2C, але в моделі, зрозумілій будь-якому розробнику. Варто знати про певні обмеження. Поки немає сповіщень Microsoft Graph, тому ви не можете автоматично запускати робочий процес при реєстрації користувача. Деякі налаштування все ще потрібно робити вручну в центрі, і немає вбудованої сторінки редагування профілю. Якщо ви хочете, щоб користувачі оновлювали дані, створіть таку сторінку в додатку і викликайте граф АРІ самостійно. Але напрямок цілком зрозумілий. Microsoft прагне зробити зовнішні ідентифікатори повністю автоматизованими. Це значно полегшує керування в масштабах. Отже, тепер ви знаєте, Microsoft Entra External ID Це сучасна заміна Azure ADB2C об'єднана під брендом Entra. Три сценарії використання, ідентифікація клієнтів, співпраця з партнерами та взаємодія між машинами покривають майже всі потреби. Ключове рішення – використовувати корпоративний клієнт чи створити окремий зовнішній. Для додатків, орієнтованих на клієнтів, окремий клієнт майже завжди кращий. Ідентифікація – це вхідні двері до вашого додатка. Правильний, безпечний, брендований і простий підхід безпосередньо впливає на довіру користувачів та розвиток бізнесу. Ваше домашнє завдання – перейдіть на entra.microsoft.com, створіть зовнішній клієнт і спробуйте посібник для початку роботи. Він допоможе налаштувати демонстраційний додаток за лічені хвилини. Підписуйтесь, щоб дізнаватися про платформу ідентифікації Microsoft простою мовою.