عیبیابی تنظیم احراز هویت SAML
برخی مشکلات رایج هنگام تنظیم SAML.
آیا اپلیکیشن شما از SAML پشتیبانی میکند؟
تأیید کنید که اپلیکیشنی که در IdP خود ایجاد کردهاید از SAML پشتیبانی میکند. گاهی اوقات گزینههای دیگر در طول فرآیند ایجاد اپلیکیشن ارائه میشوند.
آیا issuer یا Entity ID صحیح است؟
بعد از پر کردن فرم احراز هویت با ارائهدهنده هویت خود، به متابیس برگردانده میشوید اما خطا میدهد. برای دیدن خطا، به Admin settings > Tools > Logs بروید. خطایی میبینید که چیزی مثل Incorrect response <issuer> میگوید.
علت اصلی: issuer یا Entity ID شما اشتباه است.
مراحل انجام:
- باید یک فایل XML از metadata از ارائهدهنده هویت خود دریافت کرده باشید. آن فایل metadata را باز کنید، و به دنبال issuer یا Entity ID صحیح بگردید. این ID یک شناسه منحصر به فرد برای ارائهدهنده هویت است. بسته به ارائهدهنده شما، issuer یا Entity ID معمولاً چیزی شبیه این است:
https://www.example.com/141xkex604w0Q5PN724v - issuer یا Entity ID را از فایل XML کپی کنید.
- به متابیس بروید و Admin settings > Settings > Authentication > SAML را انتخاب کنید. issuer یا Entity ID را در فیلد SAML Identity Provider Issuer وارد کنید.
آیا مقدار گواهی ارائهدهنده هویت SAML صحیح است؟
بعد از پر کردن فرم احراز هویت با ارائهدهنده هویت خود، به متابیس برمیگردید اما خطا میدهد. به Admin settings > Tools > Logs بروید. خطایی میبینید که چیزی مثل Invalid assertion error <issuer> میگوید.
علت اصلی: مقدار گواهی که وارد کردهاید اشتباه است.
مراحل انجام:
به متابیس بروید و Admin settings > Settings > Authentication > SAML را انتخاب کنید. بررسی کنید که گواهی که در فیلد SAML Identity Provider Certificate وارد کردهاید با گواهی در فایل XML که از ارائهدهنده هویت خود دریافت کردید تطبیق دارد.
بسته به ارائهدهنده شما، ممکن است نیاز به دانلود فایل XML، باز کردن آن در یک ویرایشگر متن، سپس کپی و paste کردن محتوای گواهی در فیلد SAML Identity Provider Certificate در متابیس داشته باشید.
توجه داشته باشید که متن گواهی شما ممکن است شامل کامنتهای header و footer باشد که شبیه
-----BEGIN CERTIFICATE-----و-----END CERTIFICATE-----هستند. این کامنتها باید هنگام paste کردن متن گواهی در متابیس شامل شوند.
آیا URL SSO صحیح است؟
تأیید کنید که Single Sign On URL (یا معادل) که در وبسایت ارائهدهنده SAML خود وارد میکنید /auth/sso به آن اضافه شده است. بهعنوان مثال، اگر میخواهید کاربران شما در https://metabase.mycompany.com به پایان برسند، URL کامل باید https://metabase.mycompany.com/auth/sso باشد.
جستجو برای private key و پیدا کردن null
این خطا فقط اگر از Signed SSO requests استفاده میکنید اتفاق میافتد. یعنی، در متابیس، فیلدها را در بخش پیکربندی در Admin settings > Settings > Authentication > SAML > Signed SSO requests پر کردهاید. آن فیلدها:
- SAML Keystore Path: مسیر مطلق به فایل Keystore برای استفاده برای امضای درخواستهای SAML.
- SAML Keystore Password: رمز عبور برای باز کردن keystore.
- SAML Keystore Alias: alias برای کلیدی که متابیس باید برای امضای درخواستهای SAML استفاده کند.
علت اصلی: گواهی در فایل keystore فاقد یک private key است.
مراحل انجام:
- یک گواهی با یک private key به keystore خود اضافه کنید.
بررسی اینکه آیا SAML بهدرستی کار میکند
به صفحه ورود متابیس خود بروید. اگر SAML بهدرستی کار میکند، باید یک دکمه واحد برای ورود با ارائهدهنده هویت (IdP) خود ببینید. بعد از اینکه احراز هویت شدید، باید بهطور خودکار به صفحه اصلی متابیس redirect شوید.
آیا هنوز گیر کردهاید؟
اگر نمیتوانید مشکل خود را با استفاده از راهنماهای عیبیابی حل کنید:
- در انجمن متابیس جستجو کنید یا بپرسید.
- برای باگها یا محدودیتهای شناخته شده جستجو کنید.