Skip To Content

تكوين SimpleSAMLphp

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

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

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

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

تسجيل SimpleSAMLphp على أنه IDP المؤسسي مع 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 الجدولية للتسجيل المؤسس من IDP المؤسسي. عند تسجيل دخول مستخدم باستخدام تسجيل دخول مؤسسي، وإذا تلقّى Portal for ArcGIS بيانات جدولية بأسماء givenname وemail أو mail (في أي حالة)، فإن Portal for ArcGIS ينشر الاسم الكامل وعنوان البريد الإلكتروني لحساب المستخدم بالقيم المُستلمة من IDP.

      يُوصى باجتياز عنوان البريد الإلكتروني من IDP المؤسسي إلى 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. افتح ملف < SimpleSAML_HOME >/metadata/saml20-idp-hosted.php وأضف القصاصة أدناه. في المثال التالي، سيتم اجتياز uid على أنه NameID بواسطة موفر هوية SimpleSAMLphp لـ 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 على أنه IDP لمؤسسة Portal for ArcGIS.
    1. سجل الدخول إلى موقع البوابة الإلكترونية على الويب كمسئول بالمؤسسة، وانقر على المؤسسة > تحرير الإعدادات > الأمان.
    2. في قسم سجلات الدخول المؤسسية ، حدد خيار موفر هوية واحدة ، وانقر فوق زر تعيين تسجيل الدخول المؤسسي ، وأدخل اسم المؤسسة في النافذة التي تظهر (على سبيل المثال مدينة ريدلاندز). عند وصول المستخدمين إلى موقع البوابة الإلكترونية على الويب، يتم عرض هذا النص كجزء من خيار تسجيل دخول SAML (على سبيل المثال، استخدام حساب مدينة ريدلاندز).
      ملاحظة:‏

      يمكنك فقط تسجيل IDP مؤسسي واحد فقط، أو اتحاد واحد لـ IDPs, للبوابة الإلكترونية.

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

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

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

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

      ملاحظة:‏

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

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

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

  4. قم بتكوين الإعدادات المتقدمة التي تم تطبيقها:
    • تأكيد التشفير- حدد هذا الخيار إذا تم تكوين SimpleSAMLphp لتشفير استجابات تأكيد SAML.
    • تمكين طلب التسجيل- حدد هذا الخيار لتوقيع Portal for ArcGIS على طلب مصادقة SAML لـ SimpleSAMLphp.
    • مُعرف الهوية- حدّث هذه القيمة لاستخدام مُعرف هوية جديد لتعريف البوابة الإلكترونية بشكل منفرد لـ SimpleSAMLphp.
    • نشر تسجيل الخروج على موفر الهوسة—حدد هذا الخيار لاستخدام Portal for ArcGIS use a عنوان URL لتسجيل الخروج لتسجيل خروج المستخدم من SimpleSAMLphp. أدخل عنوان URL لاستخدامه في إعدادات عنوان URL لتسجيل الخروج. إذا تطلّب IDP توقيع عنوان URL لتسجيل الخروج، يجب التأشير على تمكين الطلب المُوقّع.
    • تحديث ملفات التعريف عند تسجيل الدخول—حدد هذا الخيار لتضمين Portal for ArcGIS تحديث المستخدمين givenName وبيانات email address الجدولية إذا تم تغييرها منذ أخر عملية تسجيل دخول.
    • تمكين عضوية المجموعة التي تعتمد على SAML- حدد هذا الخيار للسماح لأعضاء المؤسسة بربط مجموعات مؤسسية محددة قائمة على SAML بمجموعات Portal for ArcGIS أثناء عملية إنشاء مجموعة.
    • عنوان URL لتسجيل الخروج- عنوان IDP 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) اتباعًا للخطوات في تصدير الشهادة في البوابة الإلكترونية، وإعادة تشغيل البوابة الإلكترونية.

سجّل 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 على أنه IDP المؤسسي، أضف البيانات الجدولية أدناه إلى نهاية تكوين موفر الخدمة التي أضفتها في الخطوة الأولى.
    /*
      Whether assertions sent to this SP should be encrypted. The default value is FALSE.  */
      'assertion.encryption' => true,
    );