---
title: "Conas fíordheimhniú i gcoinne bunachar sonraí úsáideoirí Django ó Apache"
version: 6.0
locale: ga
source: https://docs.djangoproject.com/ga/6.0/howto/deployment/wsgi/apache-auth/
canonical: https://djangodocs.dev/ga/6.0/howto/deployment/wsgi/apache-auth/
---
# Conas fíordheimhniú i gcoinne bunachar sonraí úsáideoirí Django ó Apache

Since keeping multiple authentication databases in sync is a common problem
when dealing with Apache, you can configure Apache to authenticate against
Django's [authentication system](/ga/6.0/topics/auth/) directly. This
requires Apache version \>= 2.2 and `mod_wsgi` \>= 2.0. For example, you could:

- Freastal ar chomhaid statacha/meán go díreach ó Apache d'úsáideoirí fíordheimhnithe amháin.
- Fíordheimhnigh rochtain ar stór [Subversion](https://subversion.apache.org/) i gcoinne úsáideoirí Django le cead áirithe.
- Lig d'úsáideoirí áirithe ceangal le scair WebDAV a cruthaíodh le [mod\_dav](https://httpd.apache.org/docs/current/mod/mod_dav.html).

> **Note**
>
> Má tá a:ref: samhail úsáideora saincheaptha \<auth-custom-user\>\`suiteáilte agat agus má theastaíonn uait an láimhseálaí auth réamhshocraithe seo a úsáid, caithfidh sé tacú le tréith \`\`is\_active\`. Más mian leat údarú grúpbhunaithe a úsáid, caithfidh caidreamh ainmnithe 'grúpaí' a bheith ag d'úsáideoir saincheaptha, ag tagairt do réad gaolmhar a bhfuil réimse 'ainm' aige. Is féidir leat do láimhseálaí auth mod\_wsgi saincheaptha féin a shonrú mura féidir le do saincheaptha cloí leis na riachtanais seo.

## Fíordheimhniú le `mod_wsgi`

> **Note**
>
> Le húsáid `WSGIApplicationGroup %{GLOBAL}` sna cumraíochtaí thíos, glacann sé leis nach bhfuil ach feidhmchlár Django amháin á rith ag do shampla Apache. Má tá níos mó ná feidhmchlár Django amháin á rith agat, féach le do thoil don rannán [Grúpaí Feidhmchláir a Shainmhíniú](https://modwsgi.readthedocs.io/en/develop/user-guides/configuration-guidelines.html#defining-application-groups) sna doiciméid mod\_wsgi chun tuilleadh eolais a fháil faoin socrú seo.

Déan cinnte go bhfuil mod\_wsgi suiteáilte agus gníomhachtaithe agus gur lean tú na céimeanna chun bunú:doc: Apache le mod\_\</howto/deployment/wsgi/modwsgi\> wsgi.

Ansin, cuir do chumraíocht Apache in eagar chun suíomh a chur leis nach dteastaíonn uait nach mbeidh ach úsáideoirí fíordheimhnithe in ann a fheiceáil:

```apache
WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py
WSGIPythonPath /path/to/mysite.com

WSGIProcessGroup %{GLOBAL}
WSGIApplicationGroup %{GLOBAL}

<Location "/secret">
    AuthType Basic
    AuthName "Top Secret"
    Require valid-user
    AuthBasicProvider wsgi
    WSGIAuthUserScript /path/to/mysite.com/mysite/wsgi.py
</Location>
```

Insíonn an treoir `wsgiauthuserscript` do mod\_wsgi an fheidhm `check_password` a fhorghníomhú i script wsgi sonraithe, ag dul ar aghaidh an ainm úsáideora agus an pasfhocal a fhaigheann sé ón pras. Sa sampla seo, tá an WSGIAuthUserScript\` mar an gcéanna leis an `WSGIScriptalias` a shainmhíníonn d'iarratas:doc: atá cru\</howto/deployment/wsgi/index\> thaithe ag django-admin startproject.

> **Using Apache 2.2+ with authentication**
>
> Déan cinnte go bhfuil mod\_auth\_basic\` agus `mod_authz_user` luchtaithe.
>
> D'fhéadfaí iad seo a thiomsú go statach i Apache, nó b'fhéidir go mbeidh ort LoadModule a úsáid chun iad a luchtú go dinimiciúil i do httpd.conf\`:
>
> ```apache
> LoadModule auth_basic_module modules/mod_auth_basic.so
> LoadModule authz_user_module modules/mod_authz_user.so
> ```

Faoi dheireadh, cuir do script WSGI `mysite.wsgi` in eagar chun fíordheimhniú Apache a cheangal le meicníochtaí fíordheimhnithe do shuíomh tríd an fheidhm `check_password` a allmhairiú:

```
import os

os.environ["DJANGO_SETTINGS_MODULE"] = "mysite.settings"

from django.contrib.auth.handlers.modwsgi import check_password

from django.core.handlers.wsgi import WSGIHandler

application = WSGIHandler()
```

Beidh iarratais a thosaíonn le `/rúdaí/` éilíonn úsáideoir a fhíordheimhniú anois.

Soláthraíonn mod\_wsgi [doiciméadú meicníochtaí rialaithe rochtaine](https://modwsgi.readthedocs.io/en/develop/user-guides/access-control-mechanisms.html) sonraí agus faisnéis bhreise faoi mhodhanna malartacha fíordheimhnithe.

### Údarú le grúpaí mod\_wsgi\` agus Django

cuireann mod\_wsgi feidhmiúlacht ar fáil freisin chun suíomh ar leith a theorannú do bhaill ghrúpa.

Sa chás seo, ba chóir go mbeadh cuma seo ar chumraíocht Apache:

```apache
WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py

WSGIProcessGroup %{GLOBAL}
WSGIApplicationGroup %{GLOBAL}

<Location "/secret">
    AuthType Basic
    AuthName "Top Secret"
    AuthBasicProvider wsgi
    WSGIAuthUserScript /path/to/mysite.com/mysite/wsgi.py
    WSGIAuthGroupScript /path/to/mysite.com/mysite/wsgi.py
    Require group secret-agents
    Require valid-user
</Location>
```

Chun tacú leis an treoir `WSGIAuthGroupScript`, ní mór don script WSGI céanna `mysite.wsgi` an fheidhm `groups_for_user` a iompórtáil freisin a thugann liosta grúpaí leis an úsáideoir ar leith.

```python
from django.contrib.auth.handlers.modwsgi import check_password, groups_for_user
```

Éilíonn iarratais ar `/rúna/` anois an t-úsáideoir a bheith ina bhall den ghrúpa “gníomhairí rúnaimh”.
