2017 © Pedro PelΓ‘ez
 

library esia

OpenID ESIA authenticating

image

fr05t1k/esia

OpenID ESIA authenticating

  • Tuesday, May 8, 2018
  • by Fr05t1k
  • Repository
  • 9 Watchers
  • 46 Stars
  • 6,782 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 24 Forks
  • 0 Open issues
  • 6 Versions
  • 16 % Grown

The README.md

Единая систСма ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ (Π•Π‘Π˜Π) OpenId

Build Status, (*1)

ОписаниС

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° ΠΏΠΎΡ€Ρ‚Π°Π»Π΅ "Госуслуги"., (*2)

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ² Ρ‚ΠΎΠΊΠ΅Π½ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ API запросы. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ всС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π² API, Π° прСдоставляСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ самыС Π±Π°Π·ΠΎΠ²Ρ‹Π΅. Основная Ρ†Π΅Π»ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ - ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π°., (*3)

Установка

ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ composer:, (*4)

composer require --prefer-dist fr05t1k/esia

Или Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² composer.json, (*5)

"fr05t1k/esia" : "^2.0"

Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ получСния ссылки для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, (*6)

 'INSP03211',
  'redirectUrl' => 'http://my-site.com/response.php',
  'portalUrl' => 'https://esia-portal1.test.gosuslugi.ru/',
  'scope' => ['fullname', 'birthdate'],
]);
$esia = new \Esia\OpenId($config);
$esia->setSigner(new \Esia\Signer\SignerPKCS7(
    'my-site.com.pem',
    'my-site.com.pem',
    'password',
    '/tmp'
));
?>

<a href="<?=$esia->buildUrl()?>">Π’ΠΎΠΉΡ‚ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΡ€Ρ‚Π°Π» госуслуги</a>

ПослС Ρ€Π΅Π΄ΠΈΡ€Π΅ΠΊΡ‚Π° Π½Π° ваш redirectUrl Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π² $_GET['code'] ΠΊΠΎΠ΄ для получСния Ρ‚ΠΎΠΊΠ΅Π½Π°, (*7)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ получСния Ρ‚ΠΎΠΊΠ΅Π½Π° ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅, (*8)


$esia = new \Esia\OpenId($config); // Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ Π² дальнСйшСм вмСстС с oid $token = $esia->getToken($_GET['code']); $personInfo = $esia->getPersonInfo(); $addressInfo = $esia->getAddressInfo(); $contactInfo = $esia->getContactInfo(); $documentInfo = $esia->getDocInfo();

ΠšΠΎΠ½Ρ„ΠΈΠ³

clientId - ID вашСго прилоТСния., (*9)

redirectUrl - URL ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ ΠΎΡ‚Π²Π΅Ρ‚ с ΠΊΠΎΠ΄ΠΎΠΌ., (*10)

portalUrl - ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: https://esia-portal1.test.gosuslugi.ru/. Π”ΠΎΠΌΠ΅Π½ ΠΏΠΎΡ€Ρ‚Π°Π»Π° для авторизация (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠΌΠ΅Π½)., (*11)

codeUrlPath - ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: aas/oauth2/ac. URL для получСния ΠΊΠΎΠ΄Π°., (*12)

tokenUrlPath - ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: aas/oauth2/te. URL для ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π°., (*13)

scope - ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: fullname birthdate gender email mobile id_doc snils inn. Π—Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ ΠΏΡ€Π°Π²Π° Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ., (*14)

privateKeyPath - ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°., (*15)

privateKeyPassword - ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΎΡ‚ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°., (*16)

certPath - ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ сСртификата., (*17)

tmpPath - ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Π΄Π΅Ρ€ΠΈΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ подпись (Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ доступна для записи)., (*18)

Π’ΠΎΠΊΠ΅Π½ ΠΈ oid

Π’ΠΎΠΊΠ΅Π½ - jwt Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ ΠΎΡ‚ Π•Π‘Π˜Π для дальнСйшСго взаимодСйствия, (*19)

oid - ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° Ρ‚ΠΎΠΊΠ΅Π½Π°, (*20)

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ oid?

Если 2 способа: 1. oid содСрТится Π² jwt Ρ‚ΠΎΠΊΠ΅Π½Π΅, Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π² Π΅Π³ΠΎ 2. ПослС получСния Ρ‚ΠΎΠΊΠ΅Π½Π° oid сохраняСтся Π² config ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊ, (*21)

$esia->getConfig()->getOid();

ΠŸΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π’ΠΎΠΊΠ΅Π½Π°

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ Ρ‚ΠΎΠΊΠ΅Π½ ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³Π΅, (*22)

$config->setToken($jwt);
$config->setOid($oid);

The Versions

08/05 2018

dev-master

9999999-dev

OpenID ESIA authenticating

  Sources   Download

MIT

The Requires

 

The Development Requires

openid esia egov

08/05 2018

2.0

2.0.0.0

OpenID ESIA authenticating

  Sources   Download

MIT

The Requires

 

The Development Requires

openid esia egov

08/05 2018

2.0.x-dev

2.0.9999999.9999999-dev

OpenID ESIA authenticating

  Sources   Download

MIT

The Requires

 

The Development Requires

openid esia egov

09/11 2017

1.1.0

1.1.0.0

OpenID ESIA authenticating

  Sources   Download

The Development Requires

openid esia egov

03/10 2017

1.0.1

1.0.1.0

OpenID ESIA authenticating

  Sources   Download

The Development Requires

openid esia egov

11/09 2016

1.0.0

1.0.0.0

OpenID ESIA authenticating

  Sources   Download

The Development Requires

openid esia egov