Spec-Zone.ru › Yii 2.0

Класс yii\authclient\OpenId

Все классы | Свойства | Методы
Наследование yii\authclient\OpenId » yii\authclient\BaseClient » yii\base\Component » yii\base\Object
Реализует yii\authclient\ClientInterface, yii\base\Configurable
Доступно с версии 2.0
Исходный код https://github.com/yiisoft/yii2-authclient/blob/master/OpenId.php

OpenId предоставляет простой интерфейс для аутентификации OpenID (1.1 и 2.0).

Поддерживает обнаружение Yadis и HTML.

Использование:

use yii\authclient\OpenId;

$client = new OpenId();
$client->authUrl = 'https://open.id.provider.url'; // Setup provider endpoint
$url = $client->buildAuthUrl(); // Get authentication URL
return Yii::$app->getResponse()->redirect($url); // Redirect to authentication URL
// After user returns at our site:
if ($client->validate()) { // validate response
    $userAttributes = $client->getUserAttributes(); // get account info
    ...
}

Расширения AX и SREG поддерживаются. Для их использования укажите $requiredAttributes и/или $optionalAttributes.

См. также http://openid.net/.

Публичные свойства

Свойство Тип Описание Определено в
$authUrl string Базовый URL аутентификации, который должен использоваться для составления фактического URL аутентификации методом buildAuthUrl(). yii\authclient\OpenId
$axToSregMap array Отображение соответствий между именами атрибутов AX и SREG в формате: axAttributeName => sregAttributeName yii\authclient\OpenId
$behaviors yii\base\Behavior[] Список присоединенных к этому компоненту поведений yii\base\Component
$cainfo string Имя файла, содержащего один или несколько сертификатов для проверки стороны. yii\authclient\OpenId
$capath string Директория, содержащая несколько сертификатов CA. yii\authclient\OpenId
$claimedId string Заявленный идентификатор (идентичность). yii\authclient\OpenId
$data array Данные, которые должны быть использованы для получения ответа OpenID. yii\authclient\OpenId
$httpClient yii\httpclient\Client Внутренний HTTP-клиент. yii\authclient\BaseClient
$id string Идентификатор сервиса. yii\authclient\BaseClient
$name string Имя сервиса. yii\authclient\BaseClient
$normalizeUserAttributeMap array Отображение нормализации атрибутов пользователя. yii\authclient\BaseClient
$optionalAttributes array Список атрибутов, которые могут быть возвращены сервером. yii\authclient\OpenId
$requestOptions array Параметры HTTP-запроса. yii\authclient\BaseClient
$requiredAttributes array Список атрибутов, которые всегда должны возвращаться сервером. yii\authclient\OpenId
$returnUrl string URL возврата аутентификации. yii\authclient\OpenId
$stateStorage yii\authclient\StateStorageInterface Хранилище состояния. yii\authclient\BaseClient
$title string Заголовок сервиса. yii\authclient\BaseClient
$trustRoot string Корень доверия клиента (область). yii\authclient\OpenId
$userAttributes array Список атрибутов пользователя. yii\authclient\BaseClient
$verifyPeer boolean Подтверждать ли сертификат клиента. yii\authclient\OpenId
$viewOptions array Параметры представления в формате: optionName => optionValue yii\authclient\BaseClient

Публичные методы

Метод Описание Определено в
__call() Вызывает метод с указанным именем, который не является методом класса. yii\base\Component
__clone() Этот метод вызывается после создания объекта путём клонирования существующего. yii\base\Component
__construct() Конструктор. yii\base\Object
__get() Возвращает значение свойства компонента. yii\base\Component
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Component
__set() Устанавливает значение свойства компонента. yii\base\Component
__unset() Устанавливает свойство компонента в значение null. yii\base\Component
attachBehavior() Присоединяет поведение к этому компоненту. yii\base\Component
attachBehaviors() Присоединяет список поведений к компоненту. yii\base\Component
behaviors() Возвращает список поведений, по которым этот компонент должен вести себя. yii\base\Component
buildAuthUrl() Возвращает URL для аутентификации. Обычно вы хотите перенаправить своего пользователя на него. yii\authclient\OpenId
canGetProperty() Возвращает значение, указывающее, можно ли считать свойство. yii\base\Component
canSetProperty() Возвращает значение, указывающее, можно ли установить свойство. yii\base\Component
className() Возвращает полное квалифицированное имя этого класса. yii\base\Object
createRequest() Создаёт экземпляр HTTP-запроса. yii\authclient\BaseClient
detachBehavior() Отсоединяет поведение от компонента. yii\base\Component
detachBehaviors() Отсоединяет все поведения от компонента. yii\base\Component
discover() Выполняет обнаружение Yadis и HTML. yii\authclient\OpenId
ensureBehaviors() Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. yii\base\Component
fetchAttributes() Получает атрибуты AX/SREG, предоставленные OP. Должен использоваться только после успешной валидации. yii\authclient\OpenId
getBehavior() Возвращает объект поведения с указанным именем. yii\base\Component
getBehaviors() Возвращает все поведения, присоединённые к этому компоненту. yii\base\Component
getClaimedId() yii\authclient\OpenId
getHttpClient() Возвращает HTTP-клиент. yii\authclient\BaseClient
getId() yii\authclient\BaseClient
getName() yii\authclient\BaseClient
getNormalizeUserAttributeMap() yii\authclient\BaseClient
getRequestOptions() yii\authclient\BaseClient
getReturnUrl() yii\authclient\OpenId
getStateStorage() yii\authclient\BaseClient
getTitle() yii\authclient\BaseClient
getTrustRoot() yii\authclient\OpenId
getUserAttributes() yii\authclient\BaseClient
getViewOptions() yii\authclient\BaseClient
hasEventHandlers() Возвращает значение, указывающее, есть ли обработчик, прикреплённый к событию с указанным именем. yii\base\Component
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Component
hasProperty() Возвращает значение, указывающее, определено ли свойство для этого компонента. yii\base\Component
hostExists() Проверяет, существует ли сервер, указанный в url. yii\authclient\OpenId
init() Инициализирует объект. yii\authclient\OpenId
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
on() Присоединяет обработчик событий к событию. yii\base\Component
setClaimedId() yii\authclient\OpenId
setHttpClient() Устанавливает HTTP-клиент для использования. yii\authclient\BaseClient
setId() yii\authclient\BaseClient
setName() yii\authclient\BaseClient
setNormalizeUserAttributeMap() yii\authclient\BaseClient
setRequestOptions() yii\authclient\BaseClient
setReturnUrl() yii\authclient\OpenId
setStateStorage() yii\authclient\BaseClient
setTitle() yii\authclient\BaseClient
setTrustRoot() yii\authclient\OpenId
setUserAttributes() yii\authclient\BaseClient
setViewOptions() yii\authclient\BaseClient
trigger() Вызывает событие. yii\base\Component
validate() Выполняет проверку OpenID у OP. yii\authclient\OpenId

Защищённые методы

Метод Описание Определено в
buildAuthUrlV1() Строит URL авторизации для протокола версии 1. yii\authclient\OpenId
buildAuthUrlV2() Строит URL авторизации для протокола версии 2. yii\authclient\OpenId
buildAxParams() Составляет параметры запроса AX. yii\authclient\OpenId
buildSregParams() Составляет параметры запроса SREG. yii\authclient\OpenId
buildUrl() Объединяет заданные URL в один. yii\authclient\OpenId
compareUrl() Сравнивает 2 URL, учитывая возможные расхождения в порядке параметров GET и несоответствия в кодировании URL. yii\authclient\OpenId
createHttpClient() Создаёт экземпляр HTTP-клиента из ссылки или конфигурации. yii\authclient\BaseClient
defaultName() Генерирует имя сервиса. yii\authclient\BaseClient
defaultNormalizeUserAttributeMap() Возвращает значение по умолчанию для $normalizeUserAttributeMap. yii\authclient\BaseClient
defaultRequestOptions() Возвращает значения по умолчанию для HTTP-запросов. yii\authclient\OpenId
defaultReturnUrl() Генерирует значение по умолчанию для $returnUrl. yii\authclient\OpenId
defaultTitle() Генерирует заголовок сервиса. yii\authclient\BaseClient
defaultViewOptions() Возвращает значение по умолчанию для $viewOptions. yii\authclient\BaseClient
extractHtmlTagValue() Сканирует содержимое на наличие тегов и извлекает информацию из них. yii\authclient\OpenId
fetchAxAttributes() Получает атрибуты AX, предоставленные OP. yii\authclient\OpenId
fetchSregAttributes() Получает атрибуты SREG, предоставленные OP. Имена атрибутов SREG будут сопоставлены с именами AX. yii\authclient\OpenId
getState() Возвращает значение постоянного состояния. yii\authclient\BaseClient
getStateKeyPrefix() Возвращает префикс ключа сессии, используемый для хранения внутренних состояний. yii\authclient\BaseClient
initUserAttributes() Инициализирует атрибуты аутентифицированного пользователя. yii\authclient\OpenId
normalizeUserAttributes() Нормализует заданные атрибуты пользователя в соответствии с $normalizeUserAttributeMap. yii\authclient\BaseClient
removeState() Удаляет значение постоянного состояния. yii\authclient\BaseClient
sendRequest() Отправляет запрос на сервер. yii\authclient\OpenId
setState() Устанавливает постоянное состояние. yii\authclient\BaseClient
validateRequiredAttributes() Проверяет, присутствуют ли все необходимые атрибуты в ответе сервера. yii\authclient\OpenId

Подробное описание свойств

$authUrl общедоступное свойство

Базовый URL авторизации, который следует использовать для построения фактического URL авторизации методом buildAuthUrl().

public string $authUrl = null

$axToSregMap общедоступное свойство

Карта соответствий между именами атрибутов AX и SREG в формате: axAttributeName => sregAttributeName

public array $axToSregMap = ['namePerson/friendly' => 'nickname', 'contact/email' => 'email', 'namePerson' => 'fullname', 'birthDate' => 'dob', 'person/gender' => 'gender', 'contact/postalCode/home' => 'postcode', 'contact/country/home' => 'country', 'pref/language' => 'language', 'pref/timezone' => 'timezone']

$cainfo общедоступное свойство

Имя файла, содержащего один или несколько сертификатов для проверки узла. Это значение будет действовать только в том случае, если $verifyPeer установлено.

public string $cainfo = null

$capath общедоступное свойство

Директория, содержащая несколько сертификатов CA. Это значение будет действовать только в том случае, если $verifyPeer установлено.

public string $capath = null

$claimedId общедоступное свойство

Заявленный идентификатор (идентичность).

public string getClaimedId ( )
public void setClaimedId ( $claimedId )

$data общедоступное свойство

Данные, которые должны быть использованы для получения ответа OpenID. Если не задано, будет использоваться комбинация GET и POST.

public array $data = null

$optionalAttributes общедоступное свойство

Список атрибутов, которые могут быть возвращены сервером. Имена атрибутов всегда должны быть указаны в формате AX. Например:

['namePerson/first', 'namePerson/last']
public array $optionalAttributes = []

$requiredAttributes общедоступное свойство

Список атрибутов, которые всегда должны быть возвращены сервером. Имена атрибутов всегда должны быть указаны в формате AX. Например:

['namePerson/friendly', 'contact/email']
public array $requiredAttributes = []

$returnUrl общедоступное свойство

URL возврата авторизации.

public string getReturnUrl ( )
public void setReturnUrl ( $returnUrl )

$trustRoot общедоступное свойство

Корень доверия клиента (область).

public string getTrustRoot ( )
public void setTrustRoot ( $value )

$verifyPeer общедоступное свойство

Необходимо ли проверять сертификат узла.

public boolean $verifyPeer = null

Подробное описание методов

buildAuthUrl() public method

Возвращает URL авторизации. Обычно вы хотите перенаправить пользователя на него.

public string buildAuthUrl ( $identifierSelect = null )
$identifierSelect boolean

Указывает, нужно ли запросить у OP выбор идентификатора для пользователя в OpenID 2, не влияет на OpenID 1.

return string

URL авторизации.

throws yii\base\Exception

при ошибке.

buildAuthUrlV1() protected method

Строит URL авторизации для версии протокола 1.

protected string buildAuthUrlV1 ( $serverInfo )
$serverInfo array

Информация об OpenID сервере.

return string

URL авторизации.

buildAuthUrlV2() protected method

Строит URL авторизации для версии протокола 2.

protected string buildAuthUrlV2 ( $serverInfo )
$serverInfo array

Информация об OpenID сервере.

return string

URL авторизации.

buildAxParams() protected method

Формирует параметры запроса AX.

protected array buildAxParams ( )
return array

Параметры AX.

buildSregParams() protected method

Формирует параметры запроса SREG.

protected array buildSregParams ( )
return array

Параметры SREG.

buildUrl() protected method

Объединяет заданные URL в один.

protected string buildUrl ( $baseUrl, $additionalUrl )
$baseUrl string

Базовый URL.

$additionalUrl string|array

Дополнительная строка URL или массив информации.

return string

Составленный URL.

compareUrl() protected method

Сравнивает 2 URL, учитывая возможные несоответствия порядка параметров GET и несоответствия кодирования URL.

protected boolean compareUrl ( $expectedUrl, $actualUrl )
$expectedUrl string

Ожидаемый URL.

$actualUrl string

Фактический URL.

return boolean

Являются ли URL равными.

defaultRequestOptions() protected method

Возвращает параметры HTTP-запроса по умолчанию.

protected array defaultRequestOptions ( )
return array

Параметры HTTP-запроса.

defaultReturnUrl() protected method

Генерирует значение по умолчанию для $returnUrl.

protected string defaultReturnUrl ( )
return string

URL возврата по умолчанию для авторизации.

discover() public method

Выполняет обнаружение Yadis и HTML.

public array discover ( $url )
$url string

URL идентификатора.

return array

Информация о поставщике OpenID, доступны следующие ключи:

  • url: string, адрес конечной точки OP (т.е. адрес поставщика OpenID).
  • version: int, версия протокола OpenID, используемая поставщиком.
  • identity: string, значение идентификатора.
  • identifier_select: bool, нужно ли запросить у OP выбор идентификатора для пользователя в OpenID 2, не влияет на OpenID 1.
  • ax: bool, нужно ли использовать атрибуты AX.
  • sreg: bool, нужно ли использовать атрибуты SREG.
throws yii\base\Exception

при ошибке.

extractHtmlTagValue() protected method

Сканирует содержимое на наличие тегов / и извлекает информацию из них.

protected string|boolean extractHtmlTagValue ( $content, $tag, $matchAttributeName, $matchAttributeValue, $valueAttributeName )
$content string

Содержимое HTML для парсинга.

$tag string

Имя исходного тега.

$matchAttributeName string

Имя атрибута исходного тега, который должен содержать $matchAttributeValue

$matchAttributeValue string

Требуемое значение $matchAttributeName

$valueAttributeName string

Имя атрибута исходного тега, который должен содержать искомое значение.

return string|boolean

Искомое значение, "false" при ошибке.

fetchAttributes() public method

Получает атрибуты AX/SREG, предоставленные OP. Должен использоваться только после успешной проверки.

Обратите внимание, что он не гарантирует, что какой-либо из требуемых/необязательных параметров будет присутствовать, или что не будет других атрибутов помимо указанных. Другими словами, OP может предоставить любую информацию, которую он хочет.

Имена SREG будут сопоставлены с именами AX.

См. также http://www.axschema.org/types/.

public array fetchAttributes ( )
return array

Массив атрибутов с именами схем AX в качестве ключей, например, 'contact/email'

fetchAxAttributes() protected method

Получает атрибуты AX, предоставленные OP.

protected array fetchAxAttributes ( )
return array

Массив атрибутов.

fetchSregAttributes() protected method

Получает атрибуты SREG, предоставленные OP. Имена SREG будут сопоставлены с именами AX.

protected array fetchSregAttributes ( )
return array

Массив атрибутов с именами схем AX в качестве ключей, например, 'contact/email'

getClaimedId() public method

public string getClaimedId ( )
return string

Заявленный идентификатор (идентификатор).

getReturnUrl() public метод

public string getReturnUrl ( )
возвращает string

URL возврата аутентификации.

getTrustRoot() public метод

public string getTrustRoot ( )
возвращает string

Корень доверия клиента (область).

hostExists() public метод

Проверяет, существует ли сервер, указанный в url.

public boolean hostExists ( $url )
$url string

URL для проверки

возвращает boolean

True, если сервер существует; false в противном случае

init() public метод

Инициализирует объект.

Этот метод вызывается в конце конструктора после инициализации объекта заданной конфигурацией.

public void init ( )

initUserAttributes() protected метод

Инициализирует атрибуты аутентифицированного пользователя.

protected array initUserAttributes ( )
возвращает array

Атрибуты пользователя аутентификации.

sendRequest() protected метод

Отправляет запрос на сервер

protected array|string sendRequest ( $url, $method = 'GET', $params = [] )
$url string

URL запроса.

$method string

Метод запроса.

$params array

Параметры запроса.

возвращает array|string

Ответ.

бросает yii\base\Exception

при ошибке.

setClaimedId() public метод

public void setClaimedId ( $claimedId )
$claimedId string

Требуемый идентификатор (идентичность).

setReturnUrl() public метод

public void setReturnUrl ( $returnUrl )
$returnUrl string

URL возврата аутентификации.

setTrustRoot() public метод

public void setTrustRoot ( $value )
$value string

Корень доверия клиента (область).

validate() public метод

Выполняет проверку OpenID с OP.

public boolean validate ( $validateRequiredAttributes = true )
$validateRequiredAttributes boolean

Требуется ли проверка обязательных атрибутов.

возвращает boolean

Успешна ли проверка.

validateRequiredAttributes() protected метод

Проверяет, присутствуют ли все необходимые атрибуты в ответе сервера.

protected boolean validateRequiredAttributes ( )
возвращает boolean

Присутствуют ли все необходимые атрибуты.

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-authclient-openid.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API