17 if ($store->getTableVersion(
'saml_PersistentNameID') === 1) {
21 $query =
'CREATE TABLE ' . $store->prefix .
'_saml_PersistentNameID ( 22 _idp VARCHAR(256) NOT NULL, 23 _sp VARCHAR(256) NOT NULL, 24 _user VARCHAR(256) NOT NULL, 25 _value VARCHAR(40) NOT NULL, 26 UNIQUE (_idp, _sp, _user) 30 $query =
'CREATE INDEX ' . $store->prefix .
'_saml_PersistentNameID_idp_sp ON ' . $store->prefix .
'_saml_PersistentNameID (_idp, _sp)';
33 $store->setTableVersion(
'saml_PersistentNameID', 1);
67 assert(
'is_string($idpEntityId)');
68 assert(
'is_string($spEntityId)');
69 assert(
'is_string($user)');
70 assert(
'is_string($value)');
81 $query =
'INSERT INTO ' .
$store->prefix .
'_saml_PersistentNameID (_idp, _sp, _user, _value) VALUES(:_idp, :_sp, :_user, :_value)';
96 assert(
'is_string($idpEntityId)');
97 assert(
'is_string($spEntityId)');
98 assert(
'is_string($user)');
100 $store = self::getStore();
104 '_sp' => $spEntityId,
108 $query =
'SELECT _value FROM ' .
$store->prefix .
'_saml_PersistentNameID WHERE _idp = :_idp AND _sp = :_sp AND _user = :_user';
113 if (
$row === FALSE) {
118 return $row[
'_value'];
130 assert(
'is_string($idpEntityId)');
131 assert(
'is_string($spEntityId)');
132 assert(
'is_string($user)');
134 $store = self::getStore();
138 '_sp' => $spEntityId,
142 $query =
'DELETE FROM ' .
$store->prefix .
'_saml_PersistentNameID WHERE _idp = :_idp AND _sp = :_sp AND _user = :_user';
156 assert(
'is_string($idpEntityId)');
157 assert(
'is_string($spEntityId)');
159 $store = self::getStore();
163 '_sp' => $spEntityId,
166 $query =
'SELECT _user, _value FROM ' .
$store->prefix .
'_saml_PersistentNameID WHERE _idp = :_idp AND _sp = :_sp';
171 while ( (
$row =
$query->fetch(PDO::FETCH_ASSOC)) !== FALSE) {
172 $res[
$row[
'_user']] = $row[
'_value'];
static getStore()
Retrieve the SQL datastore.
static add($idpEntityId, $spEntityId, $user, $value)
Add a NameID into the database.
static getIdentities($idpEntityId, $spEntityId)
Retrieve all federated identities for an IdP-SP pair.
if(! $oauthconfig->getBoolean('getUserInfo.enable', FALSE)) $store
Attribute-related utility methods.
foreach($_POST as $key=> $value) $res
static createTable(\SimpleSAML\Store\SQL $store)
Create NameID table in SQL, if it is missing.
Create styles array
The data for the language used.
static getInstance()
Retrieve our singleton instance.