[Delphi] Авторизация через OpenID

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by PiNgVin07, 29 Oct 2011.

  1. PiNgVin07

    PiNgVin07 New Member

    Joined:
    22 Oct 2011
    Messages:
    61
    Likes Received:
    0
    Reputations:
    0
    Столкнулся с авторизацией через OpenID, может есть у кого какие исходники по OpenID, или хотяби часть кода? чтобы я мог дальше уже разобратся..
     
  2. mr_walker

    mr_walker Member

    Joined:
    9 Aug 2009
    Messages:
    41
    Likes Received:
    34
    Reputations:
    2
    тихонько молчу...
     
  3. name_00

    name_00 New Member

    Joined:
    30 May 2011
    Messages:
    25
    Likes Received:
    1
    Reputations:
    0
    PiNgVin07, сниффером смотришь запрос авторизации и отправляешь такой же запрос, например, через IdHTTP.
     
  4. PiNgVin07

    PiNgVin07 New Member

    Joined:
    22 Oct 2011
    Messages:
    61
    Likes Received:
    0
    Reputations:
    0
    Я незнаю как там отследить потому что там сначала:
    1. Авторизация вконтакте
    2. Реф ссылка
    3. Авторизация по рефке (через OpenID)
     
  5. name_00

    name_00 New Member

    Joined:
    30 May 2011
    Messages:
    25
    Likes Received:
    1
    Reputations:
    0
    Ну так отслеживай это все. Далее делаешь свои запросы:

    1. Авторизуешься в контакте
    2. Парсишь эту реф. ссылку
    3. Авторизуешься по этой ссылке

    Если я тебя правильно понял конечно...
     
    #5 name_00, 12 Nov 2011
    Last edited: 12 Nov 2011
  6. PiNgVin07

    PiNgVin07 New Member

    Joined:
    22 Oct 2011
    Messages:
    61
    Likes Received:
    0
    Reputations:
    0
    Дело в том что там вот так просто нельзя авторизоваться пор этой рефке...

    Пример рефки:
    Пример авторизации
     
    #6 PiNgVin07, 12 Nov 2011
    Last edited: 9 Feb 2013
  7. name_00

    name_00 New Member

    Joined:
    30 May 2011
    Messages:
    25
    Likes Received:
    1
    Reputations:
    0
    Вот примерный код авторизации:
    Code:
    function Parse(str, str2, src: String): String;
    begin
      Delete(src, 1, Pos(str,src)+Length(str)-1);
      Delete(src, Pos(str2,src), Length(src));
      Result:=src;
    end;
    
    procedure TForm3.Button1Click(Sender: TObject);
    var
     sl: TStringList;
     response,hash: string;
    begin
      sl:=TStringList.Create;
      sl.Add('act=login');
      sl.Add('app=-1');
      sl.Add('app_hash=5d76fe8c7618bbfb7b');
      sl.Add('vk=');
      sl.Add('al_test=12');
      sl.Add('captcha_sid=');
      sl.Add('captcha_key=');
      sl.Add('email=login');
      sl.Add('pass=pw');
      sl.Add('permanent=1');
      sl.Add('from_host=vkontakte.ru');
      sl.Add('ip_h=1daf0cab3fd49fd11f');
     try
      IdHTTP1.Post('https://login.vk.com/', sl);
     except
     end;
      response:=IdHTTP1.Get('http://vk.com');
      hash:=Parse('lang_id: 1, hash: '+#39, #39+'})', response);
      sl.Clear;
      sl.Add('act=a_auth_user');
      sl.Add('app=2232672');
      sl.Add('hash='+hash);
     try
      IdHTTP1.Post('http://vkontakte.ru/widget_auth.php', sl);
     except
     end;
    end;
     
    #7 name_00, 12 Nov 2011
    Last edited: 12 Nov 2011
  8. PiNgVin07

    PiNgVin07 New Member

    Joined:
    22 Oct 2011
    Messages:
    61
    Likes Received:
    0
    Reputations:
    0
    name_00, это через OpenID?
     
  9. Mr.Snuffer

    Mr.Snuffer Member

    Joined:
    2 Jul 2010
    Messages:
    140
    Likes Received:
    13
    Reputations:
    0
    Ты определись что тебе надо.
    То опенапи, то вк
     
  10. PiNgVin07

    PiNgVin07 New Member

    Joined:
    22 Oct 2011
    Messages:
    61
    Likes Received:
    0
    Reputations:
    0
    мне OpenID надо, в названии темы ведь написано
     
  11. name_00

    name_00 New Member

    Joined:
    30 May 2011
    Messages:
    25
    Likes Received:
    1
    Reputations:
    0
    это авторизация на этот сайт: http://zhivchik.ua/invited-by/36813. я особо не вникал, просто отловил запросы и сделал так же. разбирайся.
     
  12. PiNgVin07

    PiNgVin07 New Member

    Joined:
    22 Oct 2011
    Messages:
    61
    Likes Received:
    0
    Reputations:
    0
    name_00, спасибо большое
     
  13. PiNgVin07

    PiNgVin07 New Member

    Joined:
    22 Oct 2011
    Messages:
    61
    Likes Received:
    0
    Reputations:
    0
    это OpenAPI оказалось (Виджет для авторизации), вобщем вот ссылки:
    PHP:
    http://social.zhivchik.ua/?login_type=vkontakte&http_referer=http://zhivchik.ua/invited-by/36813
    это уже как бы сразу с реферером, только когда захожу по ссылке то пишет что не удалось авторизоваться.... А вот это
    PHP:
    http://social.zhivchik.ua/vkontakte
    уже сама страница с авторизацией через Вконтакте, народ помогите пожалуйста