<?xml version='1.0' encoding='utf-8'?>
<creole>

    <files>
    </files>

    <containers>
        <container name="internet" id='53'>
            <package>eole-winbind-pkg</package>
            <host hostlist='auth_smb' name='nom_serveur_smb' ip='ip_serveur_smb' instance_mode='when_container'
                crossed='False' comment='serveurs d’authentification SMB'/>
            <file filelist='ntlm' name='/etc/logrotate.d/winbind' source='winbind.logrotate' rm='True'/>
            <!--authentification-->
            <file name='/etc/nsswitch.conf' source='nsswitch-proxy_auth.conf'/>
            <service servicelist='ntlm'>winbind</service>
            <file filelist='ntlm' name='/etc/samba/smb.conf' source='smb-proxy_auth.conf' mkdir='True'/>
            <file filelist='kerberos' name='/etc/samba/lmhosts' mkdir='True'/>
        </container>
    </containers>

    <variables>

        <family name='services'>
            <variable name='activer_winbind' type='oui/non' description='Activer le client d’authentification'/>
        </family>

        <family name='winbind' icon='key'>
            <variable name='winbind_auth_mode' type='string' description='Méthode d’authentification' mandatory='True'/>
            <!-- **** SMB **** -->
            <variable name='nom_serveur_smb' type='netbios' description='Nom du contrôleur de domaine SMB' mandatory='True'/>
            <variable name='nom_domaine_smb' type='netbios' description='Nom du domaine SMB' mandatory='True'/>
            <variable name='ip_serveur_smb' type='ip' description='Adresse IP du contrôleur de domaine SMB' mandatory='True'/>
            <!-- **** KRB **** -->
            <variable name='nom_domaine_krb' type='domain' description='Nom du domaine KERBEROS (realm)' mandatory='True'/>
            <variable name='nom_serveur_krb' type='hostname_strict' description='Nom du contrôleur de domaine KERBEROS' mandatory='True'/>
            <variable name='nom_domaine_windows' type='netbios' description='Nom du domaine Windows' mandatory='True'/>
            <variable name='limit_krb_auth' type='oui/non' description="Limiter l'authentification au DC renseigné">
                <value>oui</value>
            </variable>
            <variable name='ip_serveur_krb' type='ip' description='Adresse IP du contrôleur de domaine KERBEROS'/>
        </family>

        <separators></separators>

    </variables>

    <constraints>
        <check name="valid_enum" target="winbind_auth_mode">
            <param>['KERBEROS', 'SMB']</param>
        </check>
        <auto name="calc_multi_condition" target="activer_winbind">
            <param>oui</param>
            <param name="operator">OR</param>
            <param type="eole" optional="True" hidden="False" name="condition_1">proxy_need_winbind</param>
            <param type="eole" optional="True" hidden="False" name="condition_2">activer_freeradius</param>
            <param name="condition_3">non</param>
            <param name="match">oui</param>
            <param name="mismatch">non</param>
        </auto>
        <condition name='disabled_if_not_in' source='activer_winbind'>
            <param>oui</param>
            <target type='filelist'>ntlm</target>
            <target type='servicelist'>ntlm</target>
            <target type='family'>winbind</target>
        </condition>
        <condition name='disabled_if_not_in' source='winbind_auth_mode'>
            <param>KERBEROS</param>
            <target type='filelist'>kerberos</target>
            <target>limit_krb_auth</target>
            <target type='variable'>nom_serveur_krb</target>
            <target type='variable'>nom_domaine_krb</target>
            <target type='variable'>nom_domaine_windows</target>
            <target type='variable'>ip_serveur_krb</target>
        </condition>
        <condition name='disabled_if_not_in' source='winbind_auth_mode'>
            <param>SMB</param>
            <target type='variable'>nom_serveur_smb</target>
            <target type='variable'>nom_domaine_smb</target>
            <target type='variable'>ip_serveur_smb</target>
            <target type='hostlist'>auth_smb</target>
        </condition>
        <auto name='extract_ad_domain_from_realm' target='nom_domaine_windows'>
            <param type='eole' name='realm'>nom_domaine_krb</param>
        </auto>
        <check name='valid_krb_name' target='nom_machine'>
            <param type='eole' hidden="False">winbind_auth_mode</param>
        </check>
    </constraints>

    <help>
        <family name="winbind">Configuration de l’authentification auprès d’un annuaire de type AD</family>
        <variable name="activer_winbind">Activer le service winbind utilisable par les services proxy et FreeRADIUS pour l’authentification des utilisateurs du domaine.</variable>
<variable name="limit_krb_auth">Permet de limiter l'authentification à un seul DC. Si il y a plusieurs DC, en basculant sur non, l'authentification s'effectuera sur le DC qui répond le mieux</variable>
    </help>

</creole>
<!-- vim: ts=4 sw=4 expandtab
-->
