547
szerkesztés
Módosítások
Új oldal, tartalma: „Az attribútum feloldást az <code>IDP_HOME/conf</code> könyvtárban található '''<code>attribute-resolver.xml</code>''' névre hallgató fájlban konfigurálhatjuk. A ...”
Az attribútum feloldást az <code>IDP_HOME/conf</code> könyvtárban található '''<code>attribute-resolver.xml</code>''' névre hallgató fájlban konfigurálhatjuk. A fájl szerkezetét tekintve '''négy részből''' áll.
== Attributum resolver alapbeállítások ==
Ezeket általában nem kell állítgatni, megfelelőek az alapbeállítások
<source lang="xml">
<AttributeResolver xmlns="urn:mace:shibboleth:2.0:resolver" xmlns:resolver="urn:mace:shibboleth:2.0:resolver"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pc="urn:mace:shibboleth:2.0:resolver:pc"
xmlns:ad="urn:mace:shibboleth:2.0:resolver:ad" xmlns:dc="urn:mace:shibboleth:2.0:resolver:dc"
xmlns:enc="urn:mace:shibboleth:2.0:attribute:encoder" xmlns:sec="urn:mace:shibboleth:2.0:security"
xsi:schemaLocation="urn:mace:shibboleth:2.0:resolver classpath:/schema/shibboleth-2.0-attribute-resolver.xsd
urn:mace:shibboleth:2.0:resolver:pc classpath:/schema/shibboleth-2.0-attribute-resolver-pc.xsd
urn:mace:shibboleth:2.0:resolver:ad classpath:/schema/shibboleth-2.0-attribute-resolver-ad.xsd
urn:mace:shibboleth:2.0:resolver:dc classpath:/schema/shibboleth-2.0-attribute-resolver-dc.xsd
urn:mace:shibboleth:2.0:attribute:encoder classpath:/schema/shibboleth-2.0-attribute-encoder.xsd
urn:mace:shibboleth:2.0:security classpath:/schema/shibboleth-2.0-security.xsd">
</AttributeResolver>
</source>
== Attributumok definiálása ==
<!-- ========================================== -->
<!-- Attribute Definitions -->
<!-- ========================================== -->
<!-- ... -->
== Kapcsolódások adattárakhoz ==
Ahhoz, hogy megkaphassuk az egyes attributumokhoz tartozó értéket, valamilyen adattárból (adatbázis, címtár) kell őket kinyernünk, hiszen ekkor még csak a sikeres azonosítás után tartunk, és csak a felhasználói nevet tudjuk, amivel az azonosítás megtörtént. '''Fontos''', hogy az egyes kapcsolódások definiálásakor erre a felhasználói névre a '''<code>$requestContext.principalName</code>''' néven hivatkozhatunk, amely kiindulópontként szolgálhat lekérdezéseinkhez.
=== Kapcsolódás relációs adatbázisokhoz ===
'''1. Konnektor definiálása'''
Új adatbáziskapcsolat létrehozásához definiálnunk kell a konnektort
<DataConnector xsi:type="RelationalDatabase" xmlns="urn:mace:shibboleth:2.0:resolver:dc">
az alábbi attributumokkal
''Attributumok, melyeket kötelező megadni''
*'''id''' - egyedi azonosító, mellyel az attributum definicióknál elérhetjük a konnektort
''Attributumok, melyeket opcionálisan megadhatók''
*'''readOnlyConnection''' - logikai érték, mely meghatározza, hogy az adatbázis csak olvasható, vagy esetleg írható is. Alapértelmezés szerint <code>true</code>, azaz csak olvasható
*'''queryUsesStoredProcedure''' - logikai érték, mely meghatározza, hogy a 3. lépésnél bemutatott módon definiált SQL lekérdezések használhatnak-e előre meghatározott eljárásokat. Alapértelmezés szerint nem, azaz <code>false</code>
*'''cacheResults''' - logikai érték, mely meghatározza, hogy a lekérdezés eredménye eltárolható-e a felhasználó munkamenetének lejártáig. Alapértelmezés szerint igen, azaz <code>true</code>
<source lang="xml">
<resolver:DataConnector xsi:type="RelationalDatabase" xmlns="urn:mace:shibboleth:2.0:resolver:dc"
id="UNIQUE_ID">
<!-- Ide kerülnek majd az további konfigurációs beállítások a következő lépések alapján -->
</resolver:DataConnector>
</soruce>
<!-- ========================================== -->
<!-- Data Connectors -->
<!-- ========================================== -->
<!-- ... -->
== Principal Connectors ==
Ezt sem kell babrálni :)
<source lang="xml">
<!-- ========================================== -->
<!-- Principal Connectors -->
<!-- ========================================== -->
<resolver:PrincipalConnector xsi:type="Transient" xmlns="urn:mace:shibboleth:2.0:resolver:pc" id="shibTransient"
nameIDFormat="urn:mace:shibboleth:1.0:nameIdentifier" />
<resolver:PrincipalConnector xsi:type="Transient" xmlns="urn:mace:shibboleth:2.0:resolver:pc" id="saml1Unspec"
nameIDFormat="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" />
<resolver:PrincipalConnector xsi:type="Transient" xmlns="urn:mace:shibboleth:2.0:resolver:pc" id="saml2Transient"
nameIDFormat="urn:oasis:names:tc:SAML:2.0:nameid-format:transient" />
</source>
== Attributum resolver alapbeállítások ==
Ezeket általában nem kell állítgatni, megfelelőek az alapbeállítások
<source lang="xml">
<AttributeResolver xmlns="urn:mace:shibboleth:2.0:resolver" xmlns:resolver="urn:mace:shibboleth:2.0:resolver"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pc="urn:mace:shibboleth:2.0:resolver:pc"
xmlns:ad="urn:mace:shibboleth:2.0:resolver:ad" xmlns:dc="urn:mace:shibboleth:2.0:resolver:dc"
xmlns:enc="urn:mace:shibboleth:2.0:attribute:encoder" xmlns:sec="urn:mace:shibboleth:2.0:security"
xsi:schemaLocation="urn:mace:shibboleth:2.0:resolver classpath:/schema/shibboleth-2.0-attribute-resolver.xsd
urn:mace:shibboleth:2.0:resolver:pc classpath:/schema/shibboleth-2.0-attribute-resolver-pc.xsd
urn:mace:shibboleth:2.0:resolver:ad classpath:/schema/shibboleth-2.0-attribute-resolver-ad.xsd
urn:mace:shibboleth:2.0:resolver:dc classpath:/schema/shibboleth-2.0-attribute-resolver-dc.xsd
urn:mace:shibboleth:2.0:attribute:encoder classpath:/schema/shibboleth-2.0-attribute-encoder.xsd
urn:mace:shibboleth:2.0:security classpath:/schema/shibboleth-2.0-security.xsd">
</AttributeResolver>
</source>
== Attributumok definiálása ==
<!-- ========================================== -->
<!-- Attribute Definitions -->
<!-- ========================================== -->
<!-- ... -->
== Kapcsolódások adattárakhoz ==
Ahhoz, hogy megkaphassuk az egyes attributumokhoz tartozó értéket, valamilyen adattárból (adatbázis, címtár) kell őket kinyernünk, hiszen ekkor még csak a sikeres azonosítás után tartunk, és csak a felhasználói nevet tudjuk, amivel az azonosítás megtörtént. '''Fontos''', hogy az egyes kapcsolódások definiálásakor erre a felhasználói névre a '''<code>$requestContext.principalName</code>''' néven hivatkozhatunk, amely kiindulópontként szolgálhat lekérdezéseinkhez.
=== Kapcsolódás relációs adatbázisokhoz ===
'''1. Konnektor definiálása'''
Új adatbáziskapcsolat létrehozásához definiálnunk kell a konnektort
<DataConnector xsi:type="RelationalDatabase" xmlns="urn:mace:shibboleth:2.0:resolver:dc">
az alábbi attributumokkal
''Attributumok, melyeket kötelező megadni''
*'''id''' - egyedi azonosító, mellyel az attributum definicióknál elérhetjük a konnektort
''Attributumok, melyeket opcionálisan megadhatók''
*'''readOnlyConnection''' - logikai érték, mely meghatározza, hogy az adatbázis csak olvasható, vagy esetleg írható is. Alapértelmezés szerint <code>true</code>, azaz csak olvasható
*'''queryUsesStoredProcedure''' - logikai érték, mely meghatározza, hogy a 3. lépésnél bemutatott módon definiált SQL lekérdezések használhatnak-e előre meghatározott eljárásokat. Alapértelmezés szerint nem, azaz <code>false</code>
*'''cacheResults''' - logikai érték, mely meghatározza, hogy a lekérdezés eredménye eltárolható-e a felhasználó munkamenetének lejártáig. Alapértelmezés szerint igen, azaz <code>true</code>
<source lang="xml">
<resolver:DataConnector xsi:type="RelationalDatabase" xmlns="urn:mace:shibboleth:2.0:resolver:dc"
id="UNIQUE_ID">
<!-- Ide kerülnek majd az további konfigurációs beállítások a következő lépések alapján -->
</resolver:DataConnector>
</soruce>
<!-- ========================================== -->
<!-- Data Connectors -->
<!-- ========================================== -->
<!-- ... -->
== Principal Connectors ==
Ezt sem kell babrálni :)
<source lang="xml">
<!-- ========================================== -->
<!-- Principal Connectors -->
<!-- ========================================== -->
<resolver:PrincipalConnector xsi:type="Transient" xmlns="urn:mace:shibboleth:2.0:resolver:pc" id="shibTransient"
nameIDFormat="urn:mace:shibboleth:1.0:nameIdentifier" />
<resolver:PrincipalConnector xsi:type="Transient" xmlns="urn:mace:shibboleth:2.0:resolver:pc" id="saml1Unspec"
nameIDFormat="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" />
<resolver:PrincipalConnector xsi:type="Transient" xmlns="urn:mace:shibboleth:2.0:resolver:pc" id="saml2Transient"
nameIDFormat="urn:oasis:names:tc:SAML:2.0:nameid-format:transient" />
</source>