本文整理汇总了PHP中SimpleSAML_Utilities::parseAttributes方法的典型用法代码示例。如果您正苦于以下问题:PHP SimpleSAML_Utilities::parseAttributes方法的具体用法?PHP SimpleSAML_Utilities::parseAttributes怎么用?PHP SimpleSAML_Utilities::parseAttributes使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SimpleSAML_Utilities
的用法示例。
在下文中一共展示了SimpleSAML_Utilities::parseAttributes方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: __construct
/**
* Constructor for this authentication source.
*
* @param array $info Information about this authentication source.
* @param array $config Configuration.
*/
public function __construct($info, $config)
{
assert('is_array($info)');
assert('is_array($config)');
/* Call the parent constructor first, as required by the interface. */
parent::__construct($info, $config);
$this->users = array();
/* Validate and parse our configuration. */
foreach ($config as $userpass => $attributes) {
if (!is_string($userpass)) {
throw new Exception('Invalid <username>:<passwordhash> for authentication source ' . $this->authId . ': ' . $userpass);
}
$userpass = explode(':', $userpass, 2);
if (count($userpass) !== 2) {
throw new Exception('Invalid <username>:<passwordhash> for authentication source ' . $this->authId . ': ' . $userpass[0]);
}
$username = $userpass[0];
$passwordhash = $userpass[1];
try {
$attributes = SimpleSAML_Utilities::parseAttributes($attributes);
} catch (Exception $e) {
throw new Exception('Invalid attributes for user ' . $username . ' in authentication source ' . $this->authId . ': ' . $e->getMessage());
}
$this->users[$username . ':' . $passwordhash] = $attributes;
}
}
示例2: __construct
/**
* Constructor for this authentication source.
*
* @param array $info Information about this authentication source.
* @param array $config Configuration.
*/
public function __construct($info, $config)
{
assert('is_array($info)');
assert('is_array($config)');
/* Call the parent constructor first, as required by the interface. */
parent::__construct($info, $config);
/* Parse attributes. */
try {
$this->attributes = SimpleSAML_Utilities::parseAttributes($config);
} catch (Exception $e) {
throw new Exception('Invalid attributes for authentication source ' . $this->authId . ': ' . $e->getMessage());
}
}
示例3: __construct
/**
* Constructor for this authentication source.
*
* @param array $info Information about this authentication source.
* @param array $config Configuration.
*/
public function __construct($info, $config)
{
assert('is_array($info)');
assert('is_array($config)');
/* Call the parent constructor first, as required by the interface. */
parent::__construct($info, $config);
$this->users = array();
if (!($htpasswd = file_get_contents($config['htpasswd_file']))) {
throw new Exception('Could not read ' . $config['htpasswd_file']);
}
$this->users = explode("\n", trim($htpasswd));
try {
$this->attributes = SimpleSAML_Utilities::parseAttributes($config['static_attributes']);
} catch (Exception $e) {
throw new Exception('Invalid static_attributes in authentication source ' . $this->authId . ': ' . $e->getMessage());
}
}