الرجاء عدم مشاركة معلومات بطاقتك مع أي شخص آخر، علماً أن FIB لن يطلب أبداً معلومات بطاقتك.
مصرف العراق الأول هو مصرف رقمي بالكامل تم إطلاقه في العراق في عام 2020. نحن نقدم خدماتنا لعملائنا وفقًا لمعايير الأمن والامتثال الدولية حيث نطمح إلى تغيير الخدمات المصرفية في العراق. بالنسبة لشركائنا، نقدم خدماتنا كلما دعت الحاجة إلى الثقة. وتتمثل أولى حالات الاستخدام عبر الإنترنت في عمليات الدفع عبر الإنترنت من خلال حزمتي الدفع SDK وطريقة الدخول الموحد. من خلال هاتين الباقتين، يمكنك الاستفادة من البنية التحتية لمصرف FIB لتقديم طريقة تسجيل دخول ودفع مريحة لعملائك. من خلال طريقة تسجيل الدخول الأحادي يمكن لعملائنا في مصرف FIB توثيق أنفسهم بسهولة، ويمكنك الاستفادة من أننا نثبت هوية عملائنا أثناء عملية التأهيل وفقاً للمعايير الدولية. وبذلك، يمكنك أيضاً أن تثق في أن عملاءك ليسوا أشخاصاً مشبوهين أو أعضاء في شبكات إرهابية.
نود الحفاظ على بيانات المستخدم قدر الإمكان، وبالتالي سنوفر الوصول إلى البيانات التالية بعد تأكيد المستخدم:
1. رقم الهاتف؛ 2. الاسم الأول باللغة العربية؛ 3. اسم العائلة باللغة العربية؛ 4. رقم الحساب المصرفي الدولي (IBAN).
يوفر FIB بيئتين: sandbox وبيئة إنتاج. يحتوي Sandbox على نفس إعدادات بيئة الإنتاج، ولكنه مخصص لأغراض التكامل.
يجب أن يكون لديك حق الوصول إلى بيئاتنا للاندماج مع وظيفة تسجيل الدخول باستخدام FIB، والتي ستحتاج إليها التفاصيل التالية:client_id ,client_secret ,SSL Certificate .
client_id
client_secret
SSL Certificate
حاليًاPay with FIB هوoffline نوع الدفع. في الإصدارات المستقبلية سيتم ترقيته إلىonline اكتب مع خيارات كاملة متعلقة بهذا النوع.
Pay with FIB
offline
online
يجب على الشريك إكمال استمارة التسجيل بنجاح والامتثال لتعليمات الرد:
أولاً، يرجى تسجيل شركتك كشريك.
لا يمكن الوصول إلى بيئاتنا إلا من خلال شهادة SSL. سنقوم بإعداد شهادة SSL مخصصة لشركتك وسنوفرها لك مع clientId و clientSecret بعد التسجيل بنجاح. بالإضافة إلى الوصول إلى البيئة، ستحصل على جميع أزرار ورسومات FIB.
يرجى تثبيت شهادة SSL على أجهزتك.
إذا كان لديك بالفعل حق الوصول إلى بيئتنا، فيرجى المتابعة وفقًا للخطوات التالية.
في حال كنت بحاجة إلى مزيد من التفاصيل، يرجى التواصل معنا عن طريق ملء استمارة طلب تكامل FIB وتضمين أسئلتك في قسم التفاصيل.
لتتمكن من الوصول إلى بيانات المستخدم نيابةً عنه، يجب عليك الحصول على قائمة بالرموز (access_token وid_token ). في هذا القسم، سنشرح كيفية القيام بذلك.
access_token
id_token
نحن متوافقون تمامًا مع OIDC.
تحدد OIDC تدفقات متعددة للحصول على رمز وصول صالح. في مصرف العراق الأول - FIB، نستخدم تدفق رمز التفويض.
يتم عرض التدفق في الرسم التوضيحي أدناه.
المتطلب الأساسي لهذه المرحلة هو إضافة زر تسجيل الدخول باستخدام FIB إلى صفحة تسجيل الدخول الخاصة بك. يجب إرسال هذا الزر إليك بعد التسجيل كشريك.لبدء عملية تسجيل الدخول، يرجى إرسال الطلب التالي.
مثال على التعليمات البرمجية
GET /auth/realms/fib-personal-application/protocol/openid-connect/auth?response_type=code&client_id={client_id}&scope=openid&redirect_uri={redirect_uri}
response_type : مطلوب. يجب إرساله إلىcode .
response_type
code
client_id : مطلوب. يجب توفيرclient_id لك بعد التسجيل بنجاح كشريك.
scope : اختياري. نحن ندعم فقطopenid نطاق. إذا طلبت نطاقًا مختلفًا، فسيتم رفض طلبك.
scope
openid
redirect_uri : اختياري. أين سيتم إرسالauthorization_code . يجب أن تتطابق هذه القيمة مع إحدى القيم المقدمة أثناء تسجيل الشريك الخاص بك.
redirect_uri
authorization_code
state : اختياري.
state
إذا كان الطلب صحيحًا، فستظهر صفحة تسجيل الدخول الخاصة بـ FIB للمستخدم. يجب على المستخدم إدخال بيانات الاعتماد المناسبة، أي رقم الهاتف وكلمة المرور.
يمكن للمستخدم النقر علىBack to Partner button . ثم ستتم إعادة توجيهه مرة أخرى إلى موقع الويب الخاص بك. إذا نقر المستخدم على زرLogin ، فهناك سيناريوهان مختلفان محتملان:
Back to Partner button
Login
1. إذا كان هذا هو تسجيل الدخول الأول، فستظهر صفحة الموافقة للمستخدم.
يحق للمستخدم أن يقرر ما إذا كان سيمنح حق الوصول إلى بياناته الشخصية أم لا.إذا منح المستخدم حق الوصول،authorization_code فسوف يتم إرسالredirect_uri إلى. يرجى الرجوع إلى الخطوات التالية → الخطوة 2.إذا لم يمنح المستخدم حق الوصول، فسيتم إرسال الرد إلىredirect_uri مع رسالة خطأ كمعامل.
[your_redirect_uri]/redirect?error=access_denied
2. في حالة تكرار عملية تسجيل الدخول، لن يتم عرض شاشة الموافقة بعد ذلك، وauthorization_code فسوف يتم إرسالredirect_uri مباشرة بعد تسجيل الدخول. يرجى الرجوع إلى الخطوات التالية → الخطوة 2.
يتم إرسالauthorization_code إلى عنوان URL الذي تم توفيره في طلبك الأول كـredirect_uri معامل.
يرجى التعامل معauthorization_code بشكل صحيح. سيتم إرساله إليك بالتنسيق التالي.
[your_redirect_uri]/?code=8b874631-335c-4ea1-ab0f-16f09b6d30bb.c5969e06-35c2-407a-b14c-27ed110fe1a2.4c39f090-0257-41c2-ab53-4227a8a3deac
كما ترون، فإنauthorization_code عبارة عن سلسلة. يمكنك استخدامه لتبادله برموز. للقيام بذلك، يرجى إرسال الطلب التالي.
POST /auth/realms/fib-personal-application/protocol/openid-connect/token HTTP/1.1 Content-Type: application/x-www-form-urlencoded client_id=[your_client_id] &client_secret=[your_client_secret] &grant_type=authorization_code &code=[authorization_code] &redirect_uri=[redirect_uri]
client_secret : مطلوب. يجب توفيرclient_secret يجب أن يتم تزويدك بـ
grant_type : مطلوب. يجب تعيينه علىauthorization_code .
grant_type
code : مطلوب. يجب توفيرauthorization_code تم استلامه في إعادة التوجيه أعلاه.
redirect_uri : مطلوب. يجب أن تتطابق هذه القيمة مع إحدى القيم المتوفرة أثناء تسجيل الشريك الخاص بك.
إذا أرسلت طلبًا صحيحًا، فسيرسل لك FIB SSO استجابة مع قائمة الرموز. يرجى الرجوع إلى الخطوات التالية → الخطوة 3.
إذا نجحت في فك ترميزid_token ، يجب أن ترى هيكله الحقيقي.
{ "exp": 1596529813, "iat": 1596529513, "auth_time": 1596529503, "jti": "465fb2cd-d04e-480e-a94e-974fc5c05a4e", "iss": "https://keycloak.stage.azure.lawrence-spring.com/auth/realms/fib-personal-application", "aud": "sso-client-mock", "sub": "6a0b445a-b42c-4739-a65c-d669332bc1a9", "typ": "ID", "azp": "sso-client-mock", "nonce": "Kqxg9IcNjjSjmKN1qmXB0t60rWPAtafnK8bvumzYpeY", "session_state": "e573d23c-7a2d-499f-a043-5a16468f06f6", "acr": "0", "phone_number": "+48666605805", "given_name": "Piotr", "family_name": "Jasiński" }
تم فك ترميزهID token يحتوي على المعلومات التالية حول المستخدم:المعرّف الفريد للمستخدم — متاح ضمنsub > خانة;الاسم الأول — متاح ضمنgiven_name خانة;اسم العائلة — متاح ضمنfamily_name خانة;رقم الهاتف المحمول — متاح ضمنphone_number خانة. خانة.
ID token
sub >
given_name
family_name
phone_number
لا يوجد فرق بين تسجيل الدخول باستخدام FIB والتسجيل في FIB من منظور FIB. سنقدم كلا الزرين (تسجيل الدخول والتسجيل) بعد التسجيل كشريك. يرجى تحديد الطريقة التي تريد تنفيذها بها:استخدام زر واحد لتسجيل الدخول والتسجيل (يتم التسجيل في الخلفية)؛استخدام زرين مختلفين: أحدهما لتسجيل الدخول والآخر للتسجيل.
على أي حال، لتسجيل مستخدم جديد، يرجى استخدام المعلومات منid_token . إذا قمت بفك ترميزid_token (كما هو موضح أعلاه)، فيجب أن تجدsub خانة. خانة. وهو المعرف الفريد للمستخدم. يرجى ملاحظة أنid_token سيتم إرجاعه فقط إذا طلبتopenid نطاق.
sub
استخدم المعرف منsub لتسجيل المستخدم في قاعدة البيانات الخاصة بك. إذا حاول المستخدم التسجيل مرة أخرى، يمكنك استخدام هذا الحقل للتحقق مما إذا كان موجودًا بالفعل في قاعدة البيانات الخاصة بك. وفقًا لذلك، بالنسبة لوظيفة تسجيل الدخول، يمكنك التحقق مما إذا كان المستخدم موجودًا في قاعدة البيانات الخاصة بك، وإذا لم يكن موجودًا، فيمكنك تسجيله أو طرح خطأ.
المعرف الفريد للمستخدم (sub ) لا يتغير أبدًا.
يوفر FIB ثلاثة أنواع من الرموز:
refresh_token
رمز الوصول هو جزء من تدفق بروتوكول OAuth2.0.في FIB، هو كائن JWS (JWT مع توقيع).
مثالaccess_token يبدو كالتالي.
{ "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJPdjBsNEJGOVRmVDlWNTEtVjZBeTRmYlVoQ0dMbTZXUVpxcXQ4S3lLOGhnIn0.eyJleHAiOjE1OTY1Mjk4MTMsImlhdCI6MTU5NjUyOTUxMywiYXV0aF90aW1lIjoxNTk2NTI5NTAzLCJqdGkiOiI3YTU2MWUzNC1jNjk4LTRhYzMtYmQyYS05ODQyMTA0NmM3NjIiLCJpc3MiOiJodHRwczovL2tleWNsb2FrLmRldi5henVyZS5sYXdyZW5jZS1zcHJpbmcuY29tL2F1dGgvcmVhbG1zL2ZpYi1wZXJzb25hbC1hcHBsaWNhdGlvbiIsInN1YiI6IjZhMGI0NDVhLWI0MmMtNDczOS1hNjVjLWQ2NjkzMzJiYzFhOSIsInR5cCI6IkJlYXJlciIsImF6cCI6InNzby1jbGllbnQtbW9jayIsIm5vbmNlIjoiS3F4ZzlJY05qalNqbUtOMXFtWEIwdDYwcldQQXRhZm5LOGJ2dW16WXBlWSIsInNlc3Npb25fc3RhdGUiOiJlNTczZDIzYy03YTJkLTQ5OWYtYTA0My01YTE2NDY4ZjA2ZjYiLCJhY3IiOiIwIiwic2NvcGUiOiJvcGVuaWQifQ.Ds_k_CTm9jNm2jc7khADyBWzaj0HvX8_ieefl6p_9lzFuRdKhC8SSLNxde_JHoHX9AG9VHylVHM0MtoRDTiv2J0uEd8LQOZ4EuPCb6SVm4oah3bjZtL8D5gdhiL0fP114MY5oTKFFW_Mv-681Vd6acyUVYqBKG_vrsSYkkX_NNmj-_Gq6WM5AKS4PdqHvrPdZcn5KAoq0Y7WvhOseM2hq11KE8NUBpkRQRdc3rIYRfeRjDulKSswOozg7-e9FmT9rBw2Cb65Hx3kYl-SDROaTWZjYfiHLaiVTU7luxPy4Et-fd6_axrutp139yoq1dR3kzF-q-y1-AX0HSziDUekig" }
رمز التحديث هو جزء من تدفق بروتوكول OAuth 2.0.وهو أيضًا كائن JWS (مثلaccess_token ).يرجى استخدامه للحصول على رمز جديدaccess_token في حال انتهاء صلاحية الرمز الحالي. يرجى اتباع OAuth2.0 في حال انتهاء صلاحية الرمز الحالي. يرجى اتباع OAuth2.0
مثال على شكل رمز التحديث كما يلي.
{ "refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJPdjBsNEJGOVRmVDlWNTEtVjZBeTRmYlVoQ0dMbTZXUVpxcXQ4S3lLOGhnIn0.eyJleHAiOjE1OTY1Mjk4MTMsImlhdCI6MTU5NjUyOTUxMywiYXV0aF90aW1lIjoxNTk2NTI5NTAzLCJqdGkiOiI3YTU2MWUzNC1jNjk4LTRhYzMtYmQyYS05ODQyMTA0NmM3NjIiLCJpc3MiOiJodHRwczovL2tleWNsb2FrLmRldi5henVyZS5sYXdyZW5jZS1zcHJpbmcuY29tL2F1dGgvcmVhbG1zL2ZpYi1wZXJzb25hbC1hcHBsaWNhdGlvbiIsInN1YiI6IjZhMGI0NDVhLWI0MmMtNDczOS1hNjVjLWQ2NjkzMzJiYzFhOSIsInR5cCI6IkJlYXJlciIsImF6cCI6InNzby1jbGllbnQtbW9jayIsIm5vbmNlIjoiS3F4ZzlJY05qalNqbUtOMXFtWEIwdDYwcldQQXRhZm5LOGJ2dW16WXBlWSIsInNlc3Npb25fc3RhdGUiOiJlNTczZDIzYy03YTJkLTQ5OWYtYTA0My01YTE2NDY4ZjA2ZjYiLCJhY3IiOiIwIiwic2NvcGUiOiJvcGVuaWQifQ.Ds_k_CTm9jNm2jc7khADyBWzaj0HvX8_ieefl6p_9lzFuRdKhC8SSLNxde_JHoHX9AG9VHylVHM0MtoRDTiv2J0uEd8LQOZ4EuPCb6SVm4oah3bjZtL8D5gdhiL0fP114MY5oTKFFW_Mv-681Vd6acyUVYqBKG_vrsSYkkX_NNmj-_Gq6WM5AKS4PdqHvrPdZcn5KAoq0Y7WvhOseM2hq11KE8NUBpkRQRdc3rIYRfeRjDulKSswOozg7-e9FmT9rBw2Cb65Hx3kYl-SDROaTWZjYfiHLaiVTU7luxPy4Et-fd6_axrutp139yoq1dR3kzF-q-y1-AX0HSziDUekig" }
رمز الهوية هو جزء من OpenID Connect Core 1.0.وهو كائن JWS.يرجى استخدامه للحصول على معلومات حول المستخدم.
مثالid_token يبدو كالتالي.
{ "id_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJPdjBsNEJGOVRmVDlWNTEtVjZBeTRmYlVoQ0dMbTZXUVpxcXQ4S3lLOGhnIn0.eyJleHAiOjE1OTY1Mjk4MTMsImlhdCI6MTU5NjUyOTUxMywiYXV0aF90aW1lIjoxNTk2NTI5NTAzLCJqdGkiOiI3YTU2MWUzNC1jNjk4LTRhYzMtYmQyYS05ODQyMTA0NmM3NjIiLCJpc3MiOiJodHRwczovL2tleWNsb2FrLmRldi5henVyZS5sYXdyZW5jZS1zcHJpbmcuY29tL2F1dGgvcmVhbG1zL2ZpYi1wZXJzb25hbC1hcHBsaWNhdGlvbiIsInN1YiI6IjZhMGI0NDVhLWI0MmMtNDczOS1hNjVjLWQ2NjkzMzJiYzFhOSIsInR5cCI6IkJlYXJlciIsImF6cCI6InNzby1jbGllbnQtbW9jayIsIm5vbmNlIjoiS3F4ZzlJY05qalNqbUtOMXFtWEIwdDYwcldQQXRhZm5LOGJ2dW16WXBlWSIsInNlc3Npb25fc3RhdGUiOiJlNTczZDIzYy03YTJkLTQ5OWYtYTA0My01YTE2NDY4ZjA2ZjYiLCJhY3IiOiIwIiwic2NvcGUiOiJvcGVuaWQifQ.Ds_k_CTm9jNm2jc7khADyBWzaj0HvX8_ieefl6p_9lzFuRdKhC8SSLNxde_JHoHX9AG9VHylVHM0MtoRDTiv2J0uEd8LQOZ4EuPCb6SVm4oah3bjZtL8D5gdhiL0fP114MY5oTKFFW_Mv-681Vd6acyUVYqBKG_vrsSYkkX_NNmj-_Gq6WM5AKS4PdqHvrPdZcn5KAoq0Y7WvhOseM2hq11KE8NUBpkRQRdc3rIYRfeRjDulKSswOozg7-e9FmT9rBw2Cb65Hx3kYl-SDROaTWZjYfiHLaiVTU7luxPy4Et-fd6_axrutp139yoq1dR3kzF-q-y1-AX0HSziDUekig" }
لتسجيل الخروج، يمكنك استخدام عنوان URL التالي.
[env_url]/auth/realms/fib-personal-application/protocol/openid-connect/logout
يجب مراعاة الإرشادات التالية عند تصميم زر تسجيل الدخول على شاشات الشركاءقم بتنزيل الإرشادات باستخدام الرابط التالي.
شكرا لك!. سنقوم بالرد عليك على الفور
يستخدم هذا الموقع الإلكتروني ملفات تعريف الارتباط حتى نتمكن من تزويدك بأفضل تجربة مستخدم ممكنة. تُخزَّن معلومات ملفات تعريف الارتباط في متصفحك وتؤدي وظائف مثل التعرف عليك عند العودة مجدداً إلى موقعنا الإلكتروني ومساعدة فريقنا على فهم أقسام الموقع التي تعتبر ذات أهمية وفائدة بالنسبة لك.
يجب تمكين ملف تعريف الارتباط الضروري في جميع الأوقات حتى نتمكن من حفظ أفضلية إعدادات ملفات تعريف الارتباط الخاصة بك.