SimpleSAMLphp telepítése composer modulként
===========================================

Ha php alkalmazásunk [Composer](https://getcomposer.org) csomegkezelőt használ, akkor a SimpleSAMLphp beépítése alkalmazásunkban ezen keresztül is történhet.

Lépések:

1. Futtassuk a `composer require simplesamlphp/simplesamlphp` parancsot.
2. Hozzuk létre a projektünk gyökerében egy `config/saml` nevű mappát. Itt fogjuk tárolni a simplesamlphp modul konfigurációját.
3. Hozzuk létre a projektünk gyökerében egy `runtime` nevű mappát. Itt fogjuk tárolni az alkalmazás, és ezen belül a simplesamlphp modul futásidejű adatait.
4. A virtuális hostban definiálni kell a `SIMPLESAMLPHP_CONFIG_DIR` változót, mely a fenti mappára mutat:
5. A `config/saml/config/config.php` fájlban helyezzük el a simplesamlphp konfigurációját. (Példa lejjebb)
6. Amennyiben vannak saját, a gyáritól eltérő attributumtérképeink, azokat, valamint a gyáriak közül amelyeket használunk,
   másoljuk be a `/config/saml/attributemap` mappába. Ha csak a gyáriakat használjuk, erre a lépésre nincs szükség, a
   mappa és a rá mutató konfigurációs hivatkozás elhagyható.
7. A manuálisan szerkesztett metaadatokat helyezzük el a `config/saml/metadata` mappában. A konfigurációban állítsuk be az intézményi vagy a
   szövetségi metaadat-terjesztés forrását. További leírás erről [itt](spsetup-server) és [itt](href).

#### Példa apache config részlet _simpleSAMLphp 1.x_ verzió esetén

```apacheconf

    Alias /saml "/app/vendor/simplesamlphp/simplesamlphp/www"
    SetEnv SIMPLESAMLPHP_CONFIG_DIR "/app/config/saml/config"
    
        Options MultiViews FollowSymLinks
        AllowOverride All
        Require all granted
    

```

#### Példa apache config részlet _simpleSAMLphp 2.x_ verzió esetén

```apacheconf

    Alias /saml "/app/vendor/simplesamlphp/simplesamlphp/public"
    SetEnv SIMPLESAMLPHP_CONFIG_DIR "/app/config/saml/config"
    
        Options MultiViews FollowSymLinks
        AllowOverride All
        Require all granted
    

```
#### Példa `config/saml/config/config.php` részlet

```php
 dirname(__DIR__).'/cert/',
        'metadatadir' => dirname(__DIR__).'/metadata/',
        'loggingdir' => dirname(__DIR__, 2).'/runtime/logs/',
        'datadir' => $dataDir.'/',
        'attributenamemapdir' => dirname(__DIR__).'/attributemap/',
        ...
    ]
```

Egy komplett működő, keretrendszer-független példaprojekt elérhető [itt](https://bitbucket.org/uhi67/samlsample1/src/master/).