Skip To Content

تكوين SimpleSAMLphp

يمكن تكوين SimpleSAMLphp الإصدار 1.10 والإصدارات الأحدث كموفر هوية لتسجيلات الدخول المؤسسية في Portal for ArcGIS. تتضمن عملية التكوين خطوتان أساسيتان: تسجيل موفر الهوية المؤسسي مع Portal for ArcGIS وتسجيل Portal for ArcGIS مع موفر الهوية المؤسسي.

اختياريًا، يمكن توفير البيانات التعريفية المتعلقة بالمجموعات المؤسسية في متجر الهوية. يسمح هذا بإنشاء المجموعات في البوابة الإلكترونية التي تزيد المجموعات المؤسسية الحالية في مخزن الهوية. عند تسجيل دخول الأعضاء على البوابة الإلكترونية، قم بالوصول إلى المحتويات والعناصر والبيانات التي يتم التحكم فيها من قِبل أدوار العضوية المُعرفة في مجموعة المؤسسة. إذا لم تقم بتوفير البيانات التعريفية لمجموعة المؤسسة الضرورية، ستصبح قادرًا على إنشاء المجموعات. مع ذلك، سيتم التحكم في قواعد العضوية من قبل Portal for ArcGIS، وليس متجر الهوية.

المعلومات المطلوبة

يتطلبPortal for ArcGIS معلومات بيانات جدولية مُحددة ليتم استقبالها من موفر التعريف عندما يُسجل المستخدم الدخول عند استخدام تسجيلات دخول مؤسسية. NameID هي بيانات جدولية إلزامية يجب إرسالها بواسطة موفر المُعرف في استجابة SAML لعمل اتحاد مع عمل Portal for ArcGIS. عند تسجيل دخول المستخدم من تسجيلات دخول IDP، سيقوم ArcGIS Online بإنشاء مستخدم جديد NameID مع اسم المستخدم عن طريق Portal for ArcGIS في مخزن المستخدم. الأحرف المسموح بها للقيمة المُرسلة بواسطة NameID البيانات الجدولية أبجدية رقمية، _ (شرطة سفلية). (نقطة) و@ (علامة @). سيتم تجاوز أي أحرف أخرى لتتضمن الشرطة السفلية في اسم المستخدم المنشأ من قبل Portal for ArcGIS.

Portal for ArcGIS يدعم تدفق givenName وبيانات email address الجدولية لتسجيلات الدخول المؤسسية من موفر الهوية المؤسسي. عند تسجيل دخول مستخدم باستخدام دخول مؤسسي، وإذا تلقّى Portal for ArcGIS بيانات جدولية بأسماء givenname وemailأو mail (في أي حالة)، فإن Portal for ArcGIS ينشر الاسم الكامل وعنوان البريد الإلكتروني لحساب المستخدم بالقيم المستلمة من موفر الهوية. يوصى بالمرور في email address من موفر المٌعرف المؤسسي حيث مكن للمستخدم استقبال الإعلامات.

سجّل SimpleSAMLphp كموفر هوية مؤسسي مع Portal for ArcGIS

  1. تكوين مصدر مصادقة في SimpleSAMLphp IdP.
    1. إنشاء مصدر مصادقة.

      يدعم SimpleSAMLphp مصادقة المستخدمين من مصادر مصادقة متنوعة مثل خادم LDAP والمستخدمين في خادم SQL ومجال الدليل النشط وهكذا. يوضح المثال أدناه كيفية تكوين خادم دليل أباتشي كمصدر مصادقة في SimpleSAMLphp IdP.

      يمكن تكوين مصادر المصادقة في ملف <SimpleSAML_HOME>/config/authsources.php . لتكوين خادم LDAP، افتح ملف config/authsources.php وأضف مصدر مصادقة قائم على LDAP بالتنسيق التالي.

      'example-ldapApacheDS' => array(
      		'ldap:LDAP',
      		/* The hostname of the LDAP server. */
      		'hostname' => 'host:port',
      		/* Whether SSL/TLS should be used when contacting the LDAP server. */
      		'enable_tls' => TRUE,
      		/*
      		 * Which attributes should be retrieved from the LDAP server.
      		 * This can be an array of attribute names, or NULL, in which case
      		 * all attributes are fetched.
      		 */
      		'attributes' => NULL,
      		/*
      		 * The pattern that should be used to create the users DN given the username.
      		 * %username% in this pattern will be replaced with the user's username.
      		 *
      		 * This option is not used if the search.enable option is set to TRUE.
      		 */
      		'dnpattern' => 'uid=%username%,ou=users,ou=system',
      		/*
      		 * As an alternative to specifying a pattern for the users DN, it is possible to
      		 * search for the username in a set of attributes. This is enabled by this option.
      		 */
      		'search.enable' => FALSE,
      		/*
      		 * The DN that will be used as a base for the search.
      		 * This can be a single string, in which case only that DN is searched, or an
      		 * array of strings, in which case they will be searched in the order given.
      		 */
      		'search.base' => 'ou=users,ou=system',
      		/*
      		 * The attribute(s) the username should match against.
      		 *
      		 * This is an array with one or more attribute names. Any of the attributes in
      		 * the array may match the value the username.
      		 */
      		'search.attributes' => array('uid', 'mail'),
      		/*
      		 * The username & password the simpleSAMLphp should bind to before searching. If
      		 * this is left as NULL, no bind will be performed before searching.
      		 */
      		'search.username' => 'uid=admin,ou=system',
      		'search.password' => 'password',
      	),

      Portal for ArcGIS يدعم تدفق givenName وبيانات email address الجدولية لتسجيلات الدخول المؤسسية من موفر الهوية المؤسسي. عند تسجيل دخول مستخدم باستخدام دخول مؤسسي، وإذا تلقّى Portal for ArcGIS بيانات جدولية بأسماء givenname وemailأو mail (في أي حالة)، فإن Portal for ArcGIS ينشر الاسم الكامل وعنوان البريد الإلكتروني لحساب المستخدم بالقيم المستلمة من موفر الهوية.

      يُوصى باجتياز عنوان البريد الإلكتروني من معرف الهوية المؤسسي إلى Portal for ArcGIS. يُعد ذلك عمليًا عندما يصبح المستخدم مسئولاً لاحقًا. يمنح عنوان البريد الإلكتروني في الحساب المستخدم الحق في تلقي الإشعارات الخاصة بأي نشاط إداري وإرسال دعوات إلى مستخدمين آخرين للانضمام إلى المؤسسة.

    2. تكوين مصدر المصادقة الذي أنشأته أعلى وحدة مصادقة نمطية في SimpleSAMLphp IdP. افتح ملف metadata/ saml20-idp-hosted.php وأضف مصدر المصادقة المراد استخدامه.
      /*
      	 * Authentication source to use. Must be one that is configured in	 * 'config/authsources.php'.	 */
      	'auth' => 'example-ldapApacheDS',
  2. تكوين تنسيق مُعرّف الاسم من خلال SimpleSAMLphp IdP. افتح ملف < SimpleSAML_HOME >/metadata/saml20-idp-hosted.php وأضف القصاصة أدناه. في المثال التالي، سيتم اجتياز uid على أنه NameID بواسطة SimpleSAMLphp IdP لـ Portal for ArcGIS بعد مصادقة المستخدم.
    'NameIDFormat' => 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent',		'authproc' => array(
    			  3 => array(
    			  'class' => 'saml:AttributeNameID',			  'attribute' => 'uid',	              'Format' => 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent',				  ),
    			),
  3. تسجيل SimpleSAMLphp كموفر هوية لمؤسسة Portal for ArcGIS.
    1. سجل الدخول إلى موقع البوابة الإلكترونية على الويب كمسئول بالمؤسسة، وانقر على المؤسسة > تحرير الإعدادات > الأمان.
    2. في جزء تسجيلات الدخول المؤسسية انقر على زر تعيين موفر الهوية وأدخل اسم المؤسسة في النافذة التي تظهر (على سبيل المثال، مدينة ريدلاندز). عند وصول المستخدمين إلى موقع البوابة الإلكترونية على الويب، يتم عرض هذا النص كجزء من خيار تسجيل دخول SAML (على سبيل المثال، استخدام حساب مدينة ريدلاندز).
      ملاحظة:‏

      يمكنك فقط تسجيل موفر هوية مؤسسي واحد للبوابة الإلكترونية.

    3. اختر ما إذا كن المستخدمين قادرين على الانضمام للمؤسسة تلقائياً أو بعد إضافة الحسابات للبوابة الإلكترونية. يُمكن تحديد الخيار الأول المستخدمين من تسجيل الدخول على المؤسسة باستخدام عملية تسجيل الدخول على المؤسسة بدون أي دعوة من المسئول. يتم تسجيل الحساب مع المؤسسة تلقائياً في أول يتم تسجيل الدخول. يتم تسجيل الحساب مع المؤسس تلقائيًا في المرة الأولى لتسجيل الدخول. يتطلب الخيار الثاني المسئول لتسجيل الحسابات الضرورية مع المؤسسة باستخدام أداة سطر الأوامر أو البرنامج النصي للبايثون. بمجرد تسجيل الحسابات، سيتمكن المستخدمون من تسجيل الدخول إلى المؤسسة.
      تلميح:

      يُوصي بتمييز حساب مؤسسة واحد على الاقل بصفتك مسئول البوابة الإلكترونية وتخفيض حساب المسئول الأولي أو حذفه. يوصى أيضاً بتعطيل زر إنشاء حساب وقم بتسجيل الدخول إلى الصفحة (signup.html) في موقع البوابة الإلكترونية حيث لا يمكن للأشخاص إنشاء حساباتهم. فيما يتعلق بالتعليمات الكاملة، راجع موضوع تكوين SAML مع البوابة الإلكترونية.

    4. قم بتوفير معلومات البيانات التعريفية لمُوفر الهوية باستخدام أحد الخيارات الثلاثة الموضحة أدناه:

      URL—اختر هذا الخيار إذا كان يمكن الوصول إلى عنوان URL للبيانات التعريفية لاتحاد SimpleSAMLphp. يكون ذلك عادًة https://<simpleSAML-server>/<saml-app-name>/saml2/idp/metadata.php.

      ملاحظة:‏

      إذا كان موفر الهوية المؤسسي يشمل شهادة موقعة ذاتية، فإنه قد تواجه خطًا عند محاولة تحديد عنوان URL لـ HTTPS للبيانات التعريفية. يحدث هذا الخطأ لأنه يتعذر على Portal for ArcGIS التحقق من شهادة التوقيع الذاتي لموفر الهوية. وبدلاً من ذلك، استخدم HTTP في عنوان URL أو استخدم أحد الخيارات الأخرى أدناه أو قم بتكوين موفر الهوية باستخدام شهادة موثوقة.

      الملف—اختر هذا الخيار إذا كان يتعذر الوصول إلى عنوان URL. احفظ البيانات التعريفية من عنوان URL كملف XML، وقم بتحميل الملف إلى Portal for ArcGIS باستخدام خيار ملف.

      معلمات—اختر هذا الخيار إذا كان يتعذر الوصول إلى عنوان URL أو الملف. أدخل القيم يدويًا، ووفّر المعلمات المطلوبة: عنوان URL لتسجيل الدخول والشهادة. اتصل بمسئول SimpleSAMLphp للحصول عليها.

  4. قم بتكوين الإعدادات المتقدمة التي تم تطبيقها:
    • تأكيد التشفير- حدد هذا الخيار إذا تم تكوين SimpleSAMLphp لتشفير استجابات تأكيد SAML.
    • تمكين طلب التسجيل- حدد هذا الخيار لتوقيع Portal for ArcGIS على طلب مصادقة SAML لـ SimpleSAMLphp.
    • مُعرف الهوية- حدّث هذه القيمة لاستخدام مُعرف هوية جديد لتعريف البوابة الإلكترونية بشكل منفرد لـ SimpleSAMLphp.
    • نشر تسجيل الخروج على موفر الهوسة—حدد هذا الخيار لاستخدام Portal for ArcGIS use a عنوان URL لتسجيل الخروج لتسجيل خروج المستخدم من SimpleSAMLphp. أدخل عنوان URL لاستخدامه في إعداد عنوان URL لتسجيل الخروج. إذا تطلب موفر الهوية توقيع عنوان URL لتسجيل الخروج يجب التأشير على تمكين الطلب المُوقّع needs to be checked.
    • عنوان URL لتسجيل الخروج- عنوان URL لموفر الهوية المُستخدم لتسجيل خروج المُستخدِم المُسجل للدخول حاليًا. عنوان URL لتسجيل الخروج يكون عادةً https://idphost.domain.com/simplesaml/saml2/idp/SingleLogoutService.php. يتم تعريف عنوان URL في عنصر SingleLogoutService في ملف البيانات التعريفية لـ IDP. عادةً ما يكون عنوان URL لملف البيانات التعريفية http://[simpleSAML-server]/simplesaml/saml2/idp/metadata.php.

    يستخدم تأكيد التشفير و تمكين الطلب الموقع شهادة samlcert في keystore البوابة الإلكترونية. لاستخدام شهادة جديدة، احذف شهادة samlcert ، إنشاء الشهادة الجديدة مع نفس الاسم المستعار (samlcert) اتباعًا للخطوات في تصدير الشهادة في البوابة الإلكترونية، وإعادة تشغيل البوابة الإلكترونية.

  5. اختياريًا، يمكن توفير البيانات التعريفية المتعلقة بالمجموعات المؤسسية في متجر الهوية:
    1. سجل الدخول إلى دليل Portal for ArcGIS بصفتك مسئول المؤسسة. عنوان URL بتنسيق https://webadaptorhost.domain.com/webadaptorname/portaladmin.
    2. انقر فوق أمان > تكوين > Update متجر الهوية.
    3. ضع تكوين مجموعة JSON في المربع النصي تكوين متجر المجموعة (بتنسيق JSON).
      • انسخ النص التالي وبدّله ليتضمن المعلومات المحددة للموقع:

        {
          "type": "LDAP",  "properties": {
            "userPassword": "secret",    "isPasswordEncrypted": "false",    "user": "uid=admin,ou=system",    "ldapURLForUsers": "ldaps://bar2:10636/ou=users,ou=ags,dc=example,dc=com",    "ldapURLForRoles": "ldaps://bar2:10636/dc=example,dc=com",    "usernameAttribute": "cn",    "caseSensitive": "false",    "userSearchAttribute": "cn",    "memberAttributeInRoles": "member",    "rolenameAttribute":"cn"
          }
        }

        في معظم الحالات، فقط تحتاج تبديل القيم لمعلمات user, userPassword, ldapURLForUsersوldapURLForRoles. يتعين على مسئول LDAP توفير عنوان URL إلى LDAP.

        في المثال أعلاه، يشير عنوان URL لـ LDAP إلى المستخدمين مع OU محدد (ou=مستخدمين). في حالة تواجد مستخدمين في أكثر من OUs، يمكن لعنوان URL الخاص بـ LDAP أن يشير إلى مستوى أعلى OU أو حتى المستوى الجذري إذا تطلب ذلك. في هذه الحالة، يظهر عنوان URL بدلاً من ذلك كما يلي:

        "ldapURLForUsers": "ldaps://bar2:10636/dc=example,dc=com",

        يتطلب الحساب الذي تستخدمه لمعلمات المستخدم أذونات البحث عن اسماء المجموعات في المؤسسة. على الرغم من كتابة كلمة المرور بنص واضح، يتم تشفيرها عند التخزين أو العرض في دليل تكوين البوابة الإلكترونية.

        إذا كان LDAP تم تكوينه ليكون حساس لحالة الأحرف، عيّن معلمة caseSensitive لتكون false.

    4. عند الانتهاء من إدخال JSON لتكوين متجر المستخدم، انقر على تحديث التكوين لحفظ التغييرات وإعادة تشغيل البوابة الإلكترونية.

سجّل Portal for ArcGIS كموفر الخدمة الموثوق بـ SimpleSAMLphp

  1. تكوين Portal for ArcGIS في صورة موفر هوية موثوق مع SimpleSAMLphp بواسطة تكوين ملف<SimpleSAMLphp_HOME>/metatadata/saml20-sp-remote.php.
    1. الحصول على ملف XML للبيانات التعريفية لمؤسسة Portal for ArcGIS organization.

      للحصول على ملف البيانات التعريفية، سجّل الدخول كمسئول للمؤسسة، وافتح صفحة المؤسسة. انقر على زر تحرير الإعدادات وانقر على علامة تبويب التأمين وفي قسم تسجيلات الدخول المؤسسي وانقر على زر الحصول على موفر الخدمة.

    2. تحويل ملف XML الذي حصلت عليه في الخطوة الفرعية السابقة إلى تنسيق PHP.

      يتوقع SimpleSAMLphp معلومات البيانات التعريفية لمُوفر الخدمة ليتم تقديمها في تنسيق PHP. يوفر SimpleSAMLphp مُحول بيانات تعريفية XML-إلى-PHP مدمجة متوفر افتراضيًا في صورة https://<simpleSAML-server>/<saml-app-name>/admin/metadata-converter.php في تثبيت simpleSAMLphp. استخدام المحول لتحويل XML إلى PHP.

    3. افتح ملف metatadata/saml20-sp-remote.php وأضف تكوين مُوفر الخدمة في تنسيق PHP الذي يتم إنشاؤه في الخطوة 1.b أعلاه.

      فيما يلي مثال على تكوين مُوفر الخدمة المُضاف في ملف البيانات التعريفية.

      /* The following is a Portal for ArcGIS organization service provider */
      $metadata['webadaptorhost.domain.com.webadaptorname'] = array (  'entityid' => ' webadaptorhost.domain.com.webadaptorname',  'name' =>
        array (    'en' => 'portal ',  ),  'description' =>
        array (    'en' => 'portal ',  ),  'OrganizationName' =>
        array (    'en' => 'portal ',  ),  'OrganizationDisplayName' =>
        array (    'en' => 'portal ',  ),  'url' =>
        array (    'en' => 'https://webadaptorhost.domain.com/webadaptorname',  ),  'OrganizationURL' =>
        array (    'en' => 'https://webadaptorhost.domain.com/webadaptorname',  ),  'contacts' =>
        array (  ),  'metadata-set' => 'saml20-sp-remote',  'AssertionConsumerService' =>
        array (    0 =>
          array (      'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST',      'Location' => 'https://webadaptorhost.domain.com/webadaptorname/sharing/rest/oauth2/saml/signin',      'index' => 1,    ),    1 =>
          array (      'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect',      'Location' => 'https://webadaptorhost.domain.com/webadaptorname/sharing/rest/oauth2/saml/signin',      'index' => 2,    ),  ),  'SingleLogoutService' =>
        array (  ),
      );
  2. تكوين البيانات الجدولية التي يتم اجتيازها في شكل NameID إلى Portal for ArcGIS من خلال SimpleSAMLphp IdP بعد مصادقة المستخدم. للقيام بذلك، أضف البيانات الجدولية في نهاية تكوين موفر الخدمة الذي تم إضافته في الخطوة السابقة.

    في المثال التالي، يتم اجتياز uid على أنه NameID بواسطة SimpleSAMLphp IdP لـ Portal for ArcGIS بعد مصادقة المستخدم. (استبدل webadaptorhost.domain.com.webadaptorname مع عنوان URL للبوابة الإلكترونية.)

    'NameIDFormat'               => 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent', 'simplesaml.nameidattribute' => 'uid',
    /* The following indicates whether or not to send all the attributes received from the authentication source to the service provider.  If true, it will send, otherwise it will not send all the attributes*/
      'simplesaml.attributes'      => true,
    );
  3. إذا اخترت إعدادات تشفير التأكيد المُتقدمة عند تسجيل SimpleSAMLphp كموفر الهوية المؤسسي، أضف البيانات الجدولية أدناه إلى نهاية تكوين موفر الخدمة التي أضفتها في خطوة 1.
    /*
      Whether assertions sent to this SP should be encrypted. The default value is FALSE.  */
      'assertion.encryption' => true,
    );