SSSD-IDP(5) قالب‌های فایل و قراردادها SSSD-IDP(5)

sssd-idp - ارائه‌دهنده IdP در SSSD

این صفحه راهنما، پیکربندی ارائه‌دهندهٔ IdP را برای sssd(8) توضیح می‌دهد. برای یک مرجع تفصیلی از ساختار نحوی (syntax)، به بخش “FILE FORMAT” در صفحه راهنمای sssd.conf(5) مراجعه کنید.

ارائه‌دهندهٔ IdP یک پس‌بخش (back end) است که برای اتصال به یک ارائه‌دهنده هویت (IdP) مبتنی بر OAuth 2.0 و REST استفاده می‌شود. از آنجا که محصولات ممکن است پیاده‌سازی‌های اختصاصی از REST API برای جستجوی مشخصه‌های کاربر و گروه داشته باشند، ممکن است به کدهای اختصاصی نیاز باشد؛ برای جزئیات به گزینهٔ “idp_type” مراجعه فرمایید.

ارائه‌دهنده‌های هویت (IdPها) معمولاً مشخصه‌های POSIX مانند شناسه کاربر (UID) یا شاخه خانگی (home directory) را ارائه نمی‌دهند. ارائه‌دهندهٔ IdP در SSSD مشخصه‌های مورد نیاز را به‌طور خودکار تولید می‌کند. هدف الگوریتم پیش‌فرض برای تولید شناسه‌های کاربری (UIDs) و شناسه‌های گروهی (GIDs)، ایجاد شناسه‌های بازتولیدپذیر و یکسان در سیستم‌های مختلف است. به عنوان یک نقص، ممکن است این الگوریتم شناسه‌های یکسانی را به اشیاء متفاوتی اختصاص دهد و در این حالت تنها اولین شیء درخواست‌شده از طریق SSSD در دسترس خواهد بود.

برای جزئیات بیشتر در مورد پیکربندی یک دامنه SSSD، به بخش “DOMAIN SECTIONS” در صفحه راهنمای sssd.conf(5) مراجعه کنید.

idp_type (string)

گزینه‌ای الزامی که محصول IdP را مشخص می‌کند. در حال حاضر Entra ID (با شناسه entra_id) و Keycloak (با شناسه keycloak) پشتیبانی می‌شوند.

بسته به محصول IdP، ممکن است گزینه‌های خاص آن پلتفرم با علامت دونقطه (:) به دنبال نام بیایند. برای مثال برای Keycloak باید URI پایه برای REST API کاربر و گروه مشخص شود. برای Entra ID می‌توان URI پایه برای Microsoft Graph API را تعیین کرد تا به جای نقطه پایانی پیش‌فرض (https://graph.microsoft.com/v1.0)، از نقاط پایانی ابری دولتی یا حاکمیتی استفاده شود. مانند “entra_id:https://graph.microsoft.us/v1.0” برای ابر دولتی ایالات متحده (GCC High).

پیش‌فرض: تنظیم نشده (الزامی)

idp_client_id (string)

شناسهٔ کلاینت IdP که توسط SSSD برای احراز هویت کاربران و به عنوان کلاینتی جهت جستجوی مشخصه‌های کاربر و گروه استفاده می‌شود. این کلاینت باید امکان مجوزیابی دستگاه (device authorization) را مطابق با RFC-8628 ارائه دهد و مجوزهای لازم برای جستجو و خواندن مشخصه‌های کاربر و گروه را دارا باشد.

پیش‌فرض: تنظیم نشده (الزامی)

idp_client_secret (string)

گذرواژه کلاینت IdP. این گذرواژه برای id_provider الزامی است. در صورتی که فقط به عنوان auth_provider استفاده شود، الزام آن به پیکربندی سمت سرور بستگی خواهد داشت.

پیش‌فرض: تنظیم نشده

idp_token_endpoint (string)

نقطه پایانی IdP برای درخواست توکن‌های دسترسی (access tokens).

پیش‌فرض: تنظیم نشده (الزامی)

idp_device_auth_endpoint (string)

نقطه پایانی IdP برای احراز هویت دستگاه بر اساس RFC-8628. این گزینه برای احراز هویت کاربر الزامی است.

پیش‌فرض: تنظیم نشده

idp_userinfo_endpoint (string)

نقطه پایانی userinfo در IdP برای درخواست مشخصه‌های کاربر پس از احراز هویت موفقیت‌آمیز کاربر. برای احراز هویت الزامی است.

پیش‌فرض: تنظیم نشده

idp_id_scope (string)

محدوده (Scope) مورد نیاز برای جستجوی مشخصه‌های کاربر و گروه با REST API. این محدوده‌ها توسط سرور برای تعیین اینکه چه مشخصه‌ها/ادعاهایی (claims) به فراخوان‌کننده بازگردانده شوند، استفاده می‌شوند.

نکته: در نسخه‌های قبلی SSSD، انتظار می‌رفت مقدار این گزینه از پیش به‌صورت URL-encoded باشد.

پیش‌فرض: تنظیم نشده

idp_auth_scope (string)

محدوده (Scope) مورد نیاز در طول احراز هویت. این محدوده‌ها توسط سرور برای تعیین اینکه چه مشخصه‌ها/ادعاهایی به فراخوان‌کننده بازگردانده شوند، استفاده می‌شوند.

در حال حاضر توکن‌های بازگردانده شده در طول احراز هویت کاربر برای اهداف دیگری استفاده نمی‌شوند، بنابراین تنها ادعای مهم، شناسه موضوع 'sub' است که برای بررسی اینکه آیا کاربر احراز هویت شده همان کاربری است که قصد ورود دارد یا خیر، به کار می‌رود. این رفتار ممکن است در آینده تغییر کند.

پیش‌فرض: تنظیم نشده

idp_request_timeout (integer)

مهلت زمانی (Timeout) به ثانیه برای هر درخواست مجزا به IdP.

پیش‌فرض: 10

idp_auto_refresh (boolean)

نوسازی خودکار توکن‌ها پس از سپری شدن حدود نیمی از طول عمر آنها.

نکته: نوسازی‌های زمان‌بندی‌شدهٔ توکن پس از راه‌اندازی مجدد SSSD حفظ نمی‌شوند.

پیش‌فرض: false

idmap_range_min (integer)

حد پایین (شامل خود عدد) بازهٔ شناسه‌های POSIX را مشخص می‌کند که برای نگاشت کاربران و گروه‌های IdP به شناسه‌های POSIX استفاده می‌شود. این نخستین شناسهٔ POSIX است که می‌تواند برای نگاشت مورد استفاده قرار گیرد.

فاصلهٔ بین “idmap_range_min” و “idmap_range_max” به دامنه‌های کوچکتری با اندازهٔ “idmap_range_size” تقسیم می‌شود که توسط یک دامنهٔ مجزای IdP استفاده خواهد شد.

پیش‌فرض: 200000

idmap_range_max (integer)

حد بالای (غیرشامل) بازهٔ شناسه‌های POSIX را مشخص می‌کند که برای نگاشت کاربران و گروه‌های IdP به شناسه‌های POSIX استفاده می‌شود. این نخستین شناسهٔ POSIX است که دیگر برای نگاشت شناسهٔ POSIX استفاده نخواهد شد.

پیش‌فرض: 2000200000

idmap_range_size (integer)

تعداد شناسه‌های POSIX موجود برای یک دامنهٔ تکی IdP را مشخص می‌کند.

پیش‌فرض: 200000

[domain/entra_id]
id_provider = idp
idp_type = entra_id
idp_client_id = 12345678-abcd-0101-efef-ba9876543210
idp_client_secret = YOUR-CLIENT-SCERET
idp_token_endpoint = https://login.microsoftonline.com/TENNANT-ID/oauth2/v2.0/token
idp_userinfo_endpoint = https://graph.microsoft.com/v1.0/me
idp_device_auth_endpoint = https://login.microsoftonline.com/TENNANT-ID/oauth2/v2.0/devicecode
idp_id_scope = https://graph.microsoft.com/.default
idp_auth_scope = openid profile email
[domain/keycloak]
idp_type = keycloak:https://master.keycloak.test:8443/auth/admin/realms/master/
id_provider = idp
idp_client_id = myclient
idp_client_secret = YOUR-CLIENT-SCERET
idp_token_endpoint = https://master.keycloak.test:8443/auth/realms/master/protocol/openid-connect/token
idp_userinfo_endpoint = https://master.keycloak.test:8443/auth/realms/master/protocol/openid-connect/userinfo
idp_device_auth_endpoint = https://master.keycloak.test:8443/auth/realms/master/protocol/openid-connect/auth/device
idp_id_scope = profile
idp_auth_scope = openid profile email

sssd(8), sssd.conf(5), sssd-ldap(5), sssd-ldap-attributes(5), sssd-krb5(5), sssd-simple(5), sssd-ipa(5), sssd-ad(5), sssd-idp(5), sssd-sudo(5), sssd-session-recording(5), sss_cache(8), sss_debuglevel(8), sss_obfuscate(8), sss_seed(8), sssd_krb5_locator_plugin(8), sss_ssh_authorizedkeys(1), sss_ssh_knownhosts(1), sssd-ifp(5), pam_sss(8). sss_rpcidmapd(5)

توسعه‌دهندگان بالادستی SSSD - https://github.com/SSSD/sssd/

06/09/2026 SSSD