Search code examples
phpsimplesamlphp

SimpleSamlphp : add attribut inside another attribut


I actualy use simpleSamlPhp for creat an authentification on my website so i have a service provider instal on my website and i also instal an Identity provider until their no problem. My service provider connect to my identity provider and connexion work fine.

I have in the file "config/authsources.php" my different user :

$config = array(
    ...
    'example-userpass' => array(
        'userTest:pwd' => array(
            'uid' => array('userTest'),
            'NameIdentifier' => 'Test',
            'Attribut1' => 'att1',
            'Attribut2' => 'att2'
        )
    ),
    ...
),
...

My problem is that i want to have an attribut with several attributs in one attribut for have something like that :

$config = array(
    ...
    'example-userpass' => array(
        'userTest:pwd' => array(
            'uid' => array('userTest'),
            'NameIdentifier' => 'Test',
            'Attribut1' => 'att1',
            'Attribut2' => array(
                'Attribut21' =>  'att21',
                'Attribut22' => 'att22',
                 ...    
            )
        )
    ),
    ...
),
...

But when i do it i have this error :

SimpleSAML_Error_Error: UNHANDLEDEXCEPTION
Backtrace:
1 C:\wamp\www\Idp\simplesamlphp\www\_include.php:37 (SimpleSAML_exception_handler)
0 [builtin] (N/A)
Caused by: Exception: Invalid attributes for user userTest in authentication source example-userpass: Invalid attribute value for attribute Attribut2: array (
  'Attribut21' => 'att21',
  'Attribut22' => 'att22'
)

So how can i add an attribut with other attribut?


Solution

  • It was not really diffcult finally i just have to do :

    $config = array(
        ...
        'example-userpass' => array(
            'userTest:pwd' => array(
                'uid' => array('userTest'),
                'NameIdentifier' => 'Test',
                'Attribut1' => 'att1',
                'Attribut2' => array(
                    'att21',
                    'att22',
                     ...    
                )
            )
        ),
        ...
    ),
    ...