Business Online Api
  • API
  • ენა/Language
    • ქართული
    • English

აუტენთიფიკაცია

შესავალი

სერვისების გამოსაძახებლად პირველ რიგში თქვენი აპლიკაცია უნდა დაარეგისტრიროთ შემდეგ გვერდზე: https://bonline.bog.ge/admin/api/ რეგისტრაციისას უნდა მიუთითოთ აპლიკაციის სახელი, დასახელება უცხოურ ენაზე და თქვენთვის სასურველი ლოგოს მისამართი (სასურველია https პროტოკოლზე და ზომა არაუმეტეს 400x80 პიქსელისა). თუ არეგისტრირებთ web კლიენტს მაშინ ასევე უნდა მიუთითო გადამისამართების მისამართი რომელზეც მოხდება გადამისამართება აუტენტიფიკაციის დროს. რეგისტრაციის შემდეგ აპლიკაციის დეტალების გვერდზე გამოჩნდება აპლიკაციის იდენტიფიკატორები: (client id, redirect uri და client secret მხოლოდ web კლიენტის დროს), (client id და client secret მხოლოდ ტოკენით აუტენთიფიკაციის დროს) რომლებიც დაგჭირდებათ აუტენთიფიკაციის მოთხოვნის დროს.

დესკტოპ აპლიკაციების აუტენთფიკაცია ხორციელდება შემდეგი სქემით:

  1. მომხმარებელი გადაიყვანეთ შემდეგ მისამართზე https://account.bog.ge/auth/realms/bog/protocol/openid-connect/auth შემდეგი პარამეტრებით query string - ში:
    • client_id - თქვენი აპლიკაციის client id
    • response_type - "token"
    • scope - "corp"
    • redirect_uri - თქვენი აპლიკაციის redirect uri
    • kc_locale - ინტერფეისის ენა: ka -ქართული ენის შემთხვევაში, ამ პარამეტრის გარეშე ინგლისური ენის შესაბამისი ინტერფეისი გამოჩნდება
    მაგალითად, თუ თქვენი აპლიკაციის client id არის implicitclient, ხოლო redirect uri არის https://example.com/callback მაშინ ამ მისამართს ექნება ასეთი სახე (url კოდირების შემდეგ): https://account.bog.ge/auth/realms/bog/protocol/openid-connect/auth?client_id=implicitclient&response_type=token&scope=corp&redirect_uri=https%3A%2F%2Fexample.com%3A44312%2Fcallback&state=e46fcdf4-a4bf-4dc6-8a42-e1b12e27826b&kc_locale=ka
  2. მომხმარებელი გადამისამართდება redirect_uri მისამართზე, შემდეგი პარამეტრებით # ფრაგმენტში:
    • access_token - დროებითი ტოკენი
    • expires_in - ამოწურვის დრო
    • token_type - ტოკენის ტიპი
ამის შემდეგ თქვენ შეგიძლიათ გამოიძახოთ სერვისები დაბრუნებული access_token-ის გამოყენებით. ამისათვის თქვენს მოთხოვნებს უნდა დაამატოთ Authorization Header ასეთი სახით:
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSJ9.eyJpc..........

ვებ აპლიკაციების აუტენთფიკაცია ხორციელდება შემდეგი სქემით:

  1. მომხმარებელი გადაიყვანეთ შემდეგ მისამართზე https://account.bog.ge/auth/realms/bog/protocol/openid-connect/auth შემდეგი პარამეტრებით query string - ში:
    • client_id - თქვენი აპლიკაციის client id
    • response_type - "code"
    • scope - "corp"
    • redirect_uri - თქვენი აპლიკაციის redirect uri
    • kc_locale - ინტერფეისის ენა: ka -ქართული ენის შემთხვევაში, ამ პარამეტრის გარეშე ინგლისური ენის შესაბამისი ინტერფეისი გამოჩნდება
    მაგალითად, თუ თქვენი აპლიკაციის client id არის codeclient, ხოლო redirect uri არის https://example.com/callback მაშინ ამ მისამართს ექნება ასეთი სახე (url კოდირების შემდეგ): https://account.bog.ge/auth/realms/bog/protocol/openid-connect/auth?client_id=codeclient&response_type=code&scope=corp&redirect_uri=https%3A%2F%2Fexample.com%3A44312%2Fcallback
  2. მომხმარებელი დაადასტურებს აპლიკაციის მოთხოვნას
  3. მომხმარებელი გადამისამართდება redirect_uri მისამართზე, შემდეგი პარამეტრებით query string-ში:
    • code - დროებითი კოდი
  4. გააგზავნოთ POST მოთხოვნა შემდეგ მისამართზე: https://account.bog.ge/auth/realms/bog/protocol/openid-connect/token შემდეგი პარამეტრებით მოთხოვნის ტანში, application/x-www-form-urlencoded Content-Type-ით:
    • grant_type - authorization_code
    • code - დროებითი კოდი
    • redirect_uri - თქვენი აპლიკაციის redirect uri
    ეს მოთხოვნას უნდა გამოიძახოთ Basic Authorization Header-ით სადაც მომხმარებლის სახელად და პაროლად გამოიყენებთ თქვენი აპლიკაციის client_id-ის და client secret-ს
ამის შემდეგ თქვენ შეგიძლიათ გამოიძახოთ სერვისები დაბრუნებული access_token-ის გამოყენებით. ამისათვის თქვენს მოთხოვნებს უნდა დაამატოთ Authorization Header ასეთი სახით:
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSJ9.eyJpc..........

ტოკენით აუტენთიფიკაცია ხორციელდება შემდეგი სქემით:
გააგზავნეთ POST მოთხოვნა შემდეგ მისამართზე: https://account.bog.ge/auth/realms/bog/protocol/openid-connect/token შემდეგი პარამეტრებით მოთხოვნის ტანში, application/x-www-form-urlencoded Content-Type-ით:

  • grant_type - "client_credentials"
  • client_id - თქვენი აპლიკაციის client_id
  • client_secret - თქვენი აპლიკაციის client_secret
ეს მოთხოვნა უნდა გამოიძახოთ Basic Authorization Header-ით სადაც მომხმარებლის სახელად და პაროლად გამოიყენებთ თქვენი აპლიკაციის client_id-ის და client secret-ს
ამის შემდეგ თქვენ შეგიძლიათ გამოიძახოთ სერვისები დაბრუნებული access_token-ის გამოყენებით. ამისათვის თქვენს მოთხოვნებს უნდა დაამატოთ Authorization Header ასეთი სახით:
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSJ9.eyJpc..........


Business Online