அங்கீகார

உபயோகிப்போர் பதிவு

வலைபெயர்ப்புடுக்கான இயல்புநிலை அமைப்பு, புதிய பயனர்களின் பதிவைக் கையாள இணையத்தின் ஒரு படிவமான பைதான்-சமூக-ஆத் பயன்படுத்துவதாகும். அவர்களின் மின்னஞ்சலை உறுதிப்படுத்திய பிறகு, ஒரு புதிய பயனர் மூன்றாம் தரப்பு சேவைகளில் ஒன்றைப் பயன்படுத்துவதன் மூலம் பங்களிக்கவோ அல்லது அங்கீகரிக்கவோ முடியும்.

REGISTRATION_OPEN ஐப் பயன்படுத்தி புதிய பயனர்களின் பதிவையும் முடக்கலாம்.

அங்கீகார முயற்சிகள் வீதத்தைக் கட்டுப்படுத்துதல் க்கு உட்பட்டது.

அங்கீகார பின்தளத்தில்

வலைபெயர்ப்பு அங்கீகாரத்திற்காக சாங்கோவை நம்பியுள்ளது. இதில் உள்ளமைக்கப்பட்ட கடவுச்சொல் அடிப்படையிலான ஏற்பு, சமூக ஏற்பு மற்றும் சாங்கோவிற்கான மூன்றாம் தரப்பு அங்கீகார பின்தளத்தில் ஆகியவை அடங்கும்.

சாங்கோவின் உள்ளமைக்கப்பட்ட அங்கீகாரத்தைப் பயன்படுத்தினால், பிற சாங்கோ அடிப்படையிலான திட்டங்களின் பயனர் தரவுத்தளத்தை நீங்கள் இறக்குமதி செய்யலாம் (பார்க்க பூட்டில் இருந்து இடம்பெயர்கிறது).

See also

அங்கீகார அமைப்புகள் அதிகாரப்பூர்வ கப்பல்துறை படத்தில் அங்கீகாரத்தை எவ்வாறு கட்டமைப்பது என்பதை விவரிக்கிறது.

சமூக ஏற்பு

GitLab, Ubuntu, Fedora போன்ற பல மூன்றாம் தரப்பு சேவைகளைப் பயன்படுத்தி Welcome to Python Social Auth’s documentation!, வலைபெயர்ப்பு உதவி அங்கீகாரத்திற்கு நன்றி.

Django Framework இல் உள்ள பொதுவான உள்ளமைவு வழிமுறைகளுக்கு அவர்களின் ஆவணங்களைச் சரிபார்க்கவும்.

Note

முன்னிருப்பாக, சரிபார்க்கப்பட்ட மின்னஞ்சல் முகவரியை வழங்க வலைபெயர்ப்பு மூன்றாம் தரப்பு அங்கீகார சேவைகளை நம்பியுள்ளது. நீங்கள் பயன்படுத்த விரும்பும் சில சேவைகள் இதை ஆதரிக்கவில்லை என்றால், தயவுசெய்து அவற்றுக்கான ஃபோர்ச்_மெயில்_வலைடு கட்டமைப்பதன் மூலம் வலைபெயர்ப்பு பக்கத்தில் மின்னஞ்சல் சரிபார்ப்பை செயல்படுத்தவும். உதாரணத்திற்கு:

SOCIAL_AUTH_OPENSUSE_FORCE_EMAIL_VALIDATION = True

See also

Pipeline

தனிப்பட்ட பின்தளங்களை இயக்குவது மிகவும் எளிதானது, இது AUTHENTICATION_BACKENDS அமைப்பில் உள்ளீட்டைச் சேர்ப்பது மற்றும் கொடுக்கப்பட்ட அங்கீகார முறைக்குத் தேவையான விசைகளைச் சேர்ப்பது மட்டுமே. சில பின்தளங்கள் இயல்புநிலையாகப் பயனர் மின்னஞ்சலை வழங்காது என்பதை நினைவில் கொள்ளவும், நீங்கள் அதை வெளிப்படையாகக் கோர வேண்டும், இல்லையெனில் பயனர்கள் செய்யும் பங்களிப்புகளை வலைபெயர்ப்பு சரியாகக் கொடுக்க முடியாது.

Hint

பெரும்பாலான அங்கீகார பின்தளங்களுக்கு HTTPS தேவைப்படுகிறது. உங்கள் இணையச் சேவையகத்தில் HTTPS இயக்கப்பட்டதும், அதைச் சரியாகப் புகாரளிக்க வலைபெயர்ப்பு ஐ ENABLE_HTTPS அல்லது WEBLATE_ENABLE_HTTPS ஐ பயன்படுத்தி உள்ளமைக்கவும்.

openid ஏற்பு

ஓபன்ஐடி அடிப்படையிலான சேவைகளுக்கு இது வழக்கமாக அவற்றை இயக்கும் ஒரு சேதி. பின்வரும் பிரிவு ஓபன்சச், ஃபெடோரா மற்றும் உபுண்டு ஆகியவற்றிற்கான திறந்த அங்கீகாரத்தை செயல்படுத்துகிறது:

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.email.EmailAuth",
    "social_core.backends.suse.OpenSUSEOpenId",
    "social_core.backends.ubuntu.UbuntuOpenId",
    "social_core.backends.fedora.FedoraOpenId",
    "weblate.accounts.auth.WeblateUserBackend",
)

See also

OpenID

அறிவிலிமையம் ஏற்பு

நீங்கள் கிதுபில் ஒரு oauth விண்ணப்பத்தை பதிவு செய்ய வேண்டும், பின்னர் அதன் எல்லா ரகசியங்களையும் வலைபெயர்ப்பு செய்யச் சொல்ல வேண்டும்:

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.github.GithubOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_GITHUB_KEY = "GitHub Client ID"
SOCIAL_AUTH_GITHUB_SECRET = "GitHub Client Secret"
SOCIAL_AUTH_GITHUB_SCOPE = ["user:email"]

https://WEBLATE SERVER/accounts/complete/github/ என அழைக்கும் முகவரி ஐக் கொண்டிருக்கும்படி GitHub கட்டமைக்கப்பட வேண்டும்.

நிறுவனங்களுக்கான GitHub மற்றும் குழுக்களுக்கான GitHub ஆகியவற்றிற்கு ஒத்த அங்கீகார பின்தளங்கள் உள்ளன. அவற்றின் அமைப்புகளுக்கு SOCIAL_AUTH_GITHUB_ORG_* மற்றும் SOCIAL_AUTH_GITHUB_TEAM_* எனப் பெயரிடப்பட்டுள்ளது, மேலும் இவற்றின் நோக்கத்தின் கூடுதல் அமைப்புத் தேவை - SOCIAL_AUTH_GITHUB_ORG_NAME அல்லது SOCIAL_AUTH_GITHUB_TEAM_ID. அவர்களின் கால்பேக் URLகள் https://WEBLATE SERVER/accounts/complete/github-org/ மற்றும் https://WEBLATE SERVER/accounts/complete/github-teams/ ஆகும்.

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

See also

GitHub

github ee ஏற்பு

நீங்கள் ஒரு oauth பயன்பாட்டை அறிவிலிமையம் ee இல் பதிவுசெய்து அதன் அனைத்து ரகசியங்களையும் வலைபெயர்ப்பு செய்யச் சொல்ல வேண்டும்:

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.github_enterprise.GithubEnterpriseOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_GITHUB_ENTERPRISE_KEY = "GitHub OAuth App Client ID"
SOCIAL_AUTH_GITHUB_ENTERPRISE_SECRET = "GitHub OAuth App Client Secret"
SOCIAL_AUTH_GITHUB_ENTERPRISE_URL = "https://git.example.com/"
SOCIAL_AUTH_GITHUB_ENTERPRISE_API_URL = "https://git.example.com/api/v3/"
SOCIAL_AUTH_GITHUB_ENTERPRISE_SCOPE = ["user:email"]

GitHub OAuth ஆப் ஆனது https://WEBLATE SERVER/accounts/complete/github-enterprise/ என அழைக்கப்படும் முகவரி ஐக் கொண்டிருக்கும்படி கட்டமைக்கப்பட வேண்டும்.

அதற்கு பதிலாக அறிவிலிமையம் ஓத் பயன்பாடு, அறிவிலிமையம் பயன்பாட்டையும் பயன்படுத்தலாம். அறிவிலிமையம் பயன்பாட்டு அனுமதிகள் களஞ்சியங்கள், அமைப்பு மற்றும்/அல்லது பயனர் மட்டத்தில் வழங்கப்படலாம். நீங்கள் அறிவிலிமையம் பயன்பாட்டைப் பயன்படுத்த முடிவு செய்தால், நீங்கள் அணுகல்: பயனர்களுக்கான படிக்க மட்டும் இசைவு - <மின்னஞ்சல் முகவரிகள்> மற்றும் அமைப்பு - <உறுப்பினர்கள்> ஆகியவற்றை இயக்க வேண்டும்.

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

பிட்பக்கெட் ஏற்பு

நீங்கள் பிட்பக்கெட்டில் ஒரு விண்ணப்பத்தை பதிவு செய்ய வேண்டும், பின்னர் அதன் அனைத்து ரகசியங்களையும் வலைபெயர்ப்பு செய்யுங்கள்:

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.bitbucket.BitbucketOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_BITBUCKET_OAUTH2_KEY = "Bitbucket Client ID"
SOCIAL_AUTH_BITBUCKET_OAUTH2_SECRET = "Bitbucket Client Secret"
SOCIAL_AUTH_BITBUCKET_OAUTH2_VERIFIED_EMAILS_ONLY = True

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

See also

Bitbucket

கூகிள் oauth 2

Google OAuth 2 ஐப் பயன்படுத்த, நீங்கள் OAuth பயன்பாட்டை <https://console.developers.google.com/> இல் பதிவு செய்ய வேண்டும்.

வழிமாற்று முகவரி https://WEBLATE SERVER/accounts/complete/google-oauth2/ ஆகும்.

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.google.GoogleOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY = "Client ID"
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET = "Client secret"

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

See also

Google

பேச்புக் ஓத் 2

oauth 2 சேவைகளுடன் வழக்கம்போல, உங்கள் விண்ணப்பத்தை பேச்புக்கில் பதிவு செய்ய வேண்டும். இது முடிந்ததும், அதைப் பயன்படுத்த நீங்கள் வலைபெயர்ப்பு அமைக்கலாம்:

வழிமாற்று முகவரி https://WEBLATE SERVER/accounts/complete/facebook/ ஆகும்.

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.facebook.FacebookOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_FACEBOOK_KEY = "key"
SOCIAL_AUTH_FACEBOOK_SECRET = "secret"
SOCIAL_AUTH_FACEBOOK_SCOPE = ["email", "public_profile"]

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

See also

Facebook

அறிவிலிஆய்வு oauth 2

அறிவிலிஆய்வு OAuth 2 ஐப் பயன்படுத்த, நீங்கள் ஒரு விண்ணப்பத்தை <https://gitlab.com/profile/applications> இல் பதிவு செய்ய வேண்டும்.

வழிமாற்று முகவரி ஆனது https://WEBLATE SERVER/accounts/complete/gitlab/ ஆகும், மேலும் நீங்கள் read_user நோக்கத்தைக் குறிப்பதை உறுதிசெய்யவும்.

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.gitlab.GitLabOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_GITLAB_KEY = "Application ID"
SOCIAL_AUTH_GITLAB_SECRET = "Secret"
SOCIAL_AUTH_GITLAB_SCOPE = ["read_user"]

# If you are using your own GitLab
# SOCIAL_AUTH_GITLAB_API_URL = 'https://gitlab.example.com/'

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

See also

GitLab

கிடியா ஓத் 2

அறிவிலிதேநீர் OAuth 2 ஐப் பயன்படுத்த, நீங்கள் https://GITEA SERVER/user/settings/applications இல் ஒரு விண்ணப்பத்தைப் பதிவு செய்ய வேண்டும்.

வழிமாற்று முகவரி https://WEBLATE SERVER/accounts/complete/gitea/ ஆகும்.

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.gitea.GiteaOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_GITEA_KEY = ""
SOCIAL_AUTH_GITEA_SECRET = ""

# If you are using your own Gitea
SOCIAL_AUTH_GITEA_API_URL = "https://gitea.example.com/"

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

Note

மேலே உள்ள கட்டமைப்பு Forgejo உடன் வேலை செய்கிறது; Forgejo உடன் விளைவாக்கம் வரிசைப்படுத்தலின் உதாரணத்திற்கு, கோட்பெர்க் மொழிபெயர்ப்பு ஐப் பார்க்கவும்.

See also

Gitea

Microsoft Entra ID

Azure Active Directory (Azure AD) is now Microsoft Entra ID. Weblate keeps the azuread-oauth2 and azuread-tenant-oauth2 backend names for compatibility with the underlying Python Social Auth backends and existing deployments.

அங்கீகாரத்திற்காக பொதுவான அல்லது குறிப்பிட்ட குத்தகைதாரர்களைப் பயன்படுத்த வலைபெயர்ப்பு கட்டமைக்கப்படலாம்.

வழிமாற்று முகவரி ஆனது பொதுவானதுக்கான https://WEBLATE SERVER/accounts/complete/azuread-oauth2/ மற்றும் குத்தகைதாரர்-குறிப்பிட்ட அங்கீகாரத்திற்கு https://WEBLATE SERVER/accounts/complete/azuread-tenant-oauth2/.

உங்களுக்கு பின்வருபவை தேவைப்படும்:

  • Application (client) ID is available on the app registration overview in the Microsoft Entra admin center. Object ID is not used in Weblate.

  • வழக்கமாக விரும்பப்படும் குத்தகைதாரர் ச்கோப்டு அங்கீகாரத்திற்கு டைரக்டரி (குத்தகைதாரர்) ஐடி தேவை.

  • Secret value is displayed once you create a client secret for the app registration. Secret ID is not used in Weblate.

# Microsoft Entra ID common

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.azuread.AzureADOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# OAuth2 keys
SOCIAL_AUTH_AZUREAD_OAUTH2_KEY = ""
SOCIAL_AUTH_AZUREAD_OAUTH2_SECRET = ""
# Microsoft Entra ID with Tenant

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.azuread_tenant.AzureADTenantOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Application (client) ID
SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_KEY = ""
# Secret value
SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_SECRET = ""
# Directory (tenant) ID
SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_TENANT_ID = ""

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

மந்தமான

ச்லாக் OAuth 2 ஐப் பயன்படுத்த, நீங்கள் ஒரு விண்ணப்பத்தை <https://api.slack.com/apps> இல் பதிவு செய்ய வேண்டும்.

திருப்பி விடப்பட்ட முகவரி https: // வலைபெயர்ப்பு சேவையகம்/கணக்குகள்/முழுமையான/மந்தமான/.

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.slack.SlackOAuth2",
    "social_core.backends.email.EmailAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_SLACK_KEY = ""
SOCIAL_AUTH_SLACK_SECRET = ""

Note

அங்கீகாரத்தின் போது வலைபெயர்ப்பு வழங்கிய கால்பேக் முகவரி ஆனது கட்டமைக்கப்பட்ட டொமைனை உள்ளடக்கியது. முகவரி பொருத்தமின்மை குறித்த பிழைகள் ஏற்பட்டால், இதை நீங்கள் சரிசெய்ய விரும்பலாம், பார்க்கவும் சரியான தள களத்தை அமைக்கவும்.

See also

Slack

அங்கீகார முறை பெயர்கள் மற்றும் ஐகான்களை மீறுதல்

You can override the authentication method display name and icon using settings as SOCIAL_AUTH_<NAME>_IMAGE and SOCIAL_AUTH_<NAME>_TITLE. For example overriding naming for Auth0 would look like:

SOCIAL_AUTH_AUTH0_IMAGE = "custom.svg"
SOCIAL_AUTH_AUTH0_TITLE = "Custom auth"

கடவுச்சொல் அங்கீகாரத்தை முடக்கு

AUTHENTICATION_BACKENDS இலிருந்து social_core.backends.email.EmailAuth அகற்றுவதன் மூலம் மின்னஞ்சல் மற்றும் கடவுச்சொல் அங்கீகாரத்தை முடக்கலாம். எப்போதும் weblate.accounts.auth.WeblateUserBackend அங்கு வைத்திருங்கள், முக்கிய வலைபெயர்ப்பு செயல்பாட்டிற்கு இது தேவை.

மின்னஞ்சல் அங்கீகாரத்தை முடக்குவது மின்னஞ்சல் தொடர்பான அனைத்து செயல்பாட்டையும் முடக்கும்-பயனர் அழைப்பு அல்லது கடவுச்சொல் மீட்டமைப்பு நற்பொருத்தம்.

Tip

நிர்வாகி இடைமுகத்திற்கான கடவுச்சொல் அங்கீகாரத்தை நீங்கள் இன்னும் பயன்படுத்தலாம், நீங்கள் அங்கு கைமுறையாக உருவாக்கும் பயனர்களுக்கு. /நிர்வாகி/உள்நுழைவு/ க்கு செல்லவும்.

எடுத்துக்காட்டாக, opensuse திறந்த ஐடி வழங்குநரை மட்டுமே பயன்படுத்தும் அங்கீகாரத்தை பின்வருவனவற்றைப் பயன்படுத்தி அடைய முடியும்:

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.suse.OpenSUSEOpenId",
    "weblate.accounts.auth.WeblateUserBackend",
)

கடவுச்சொல் ஏற்பு

இயல்புநிலை settings.py நியாயமான AUTH_PASSWORD_VALIDATORS உடன் வருகிறது, இது பலவீனமான கடவுச்சொற்கள் அனுமதிக்கப்படாது என்பதை உறுதி செய்கிறது. உங்கள் கடவுச்சொல் கொள்கையுடன் பொருந்துமாறு இந்த அமைப்பைத் தனிப்பயனாக்கலாம்.

கூடுதலாக நீங்கள் django-zxcvbn-password-validator ஐ நிறுவலாம், இது கடவுச்சொல் சிரமத்தை மிகவும் யதார்த்தமான மதிப்பீடுகளை வழங்குகிறது மற்றும் ஒரு குறிப்பிட்ட வரம்பிற்குக் கீழே கடவுச்சொற்களை நிராகரிக்க அனுமதிக்கிறது.

saml ஏற்பு

Added in version 4.1.1.

Changed in version 5.12: SAML அங்கீகாரத்திற்கான சார்புகள் இயல்புநிலை அனைத்து கூடுதல்களில் இனி சேர்க்கப்படாது. பிப்பைப் பயன்படுத்தி வலைபெயர்ப்பு தொகுப்பை நிறுவும் போது saml சேர்க்க வேண்டும் (uv pip install Weblate[all,saml]).

உள்ளமைவுக்கான பைதான் சமூக அங்கீகார வழிமுறைகளைப் பின்பற்றவும். குறிப்பிடத்தக்க வேறுபாடுகள்:

  • வலைபெயர்ப்பு ஒற்றை IDPயை ஆதரிக்கிறது, இது SOCIAL_AUTH_SAML_ENABLED_IDPS இல் weblate என அழைக்கப்படும்.

  • SAML நீகுமொ மேனிலை தரவு முகவரி என்பது /கணக்குகள்/மெட்டாடேட்டா/saml/ ஆகும், இது ஒரு நிறுவன ஐடியும் கூட.

  • உள்நுழைவு முகவரி என்பது /கணக்குகள்/முழுமை/saml/ (ஏசிஎச் முகவரி என்றும் அழைக்கப்படுகிறது).

  • பின்வரும் அமைப்புகள் தானாக நிரப்பப்படும்: SOCIAL_AUTH_SAML_SP_ENTITY_ID, SOCIAL_AUTH_SAML_TECHNICAL_CONTACT, SOCIAL_AUTH_SAML_SUPPORT_CONTACT

எடுத்துக்காட்டு உள்ளமைவு:

# Authentication configuration
AUTHENTICATION_BACKENDS = (
    "social_core.backends.email.EmailAuth",
    "social_core.backends.saml.SAMLAuth",
    "weblate.accounts.auth.WeblateUserBackend",
)

# Social auth backends setup
SOCIAL_AUTH_SAML_SP_ENTITY_ID = f"https://{SITE_DOMAIN}/accounts/metadata/saml/"
SOCIAL_AUTH_SAML_SP_PUBLIC_CERT = "-----BEGIN CERTIFICATE-----"
SOCIAL_AUTH_SAML_SP_PRIVATE_KEY = "-----BEGIN PRIVATE KEY-----"
SOCIAL_AUTH_SAML_ENABLED_IDPS = {
    "weblate": {
        "entity_id": "https://idp.testshib.org/idp/shibboleth",
        "url": "https://idp.testshib.org/idp/profile/SAML2/Redirect/SSO",
        "x509cert": "MIIEDjCCAvagAwIBAgIBADA ... 8Bbnl+ev0peYzxFyF5sQA==",
    }
}
SOCIAL_AUTH_SAML_ORG_INFO = {
    "en-US": {
        "name": "example",
        "displayname": "Example Inc.",
        "url": "http://example.com"
    }
}
SOCIAL_AUTH_SAML_TECHNICAL_CONTACT = {
    "givenName": "Tech Gal",
    "emailAddress": "technical@example.com"
}
SOCIAL_AUTH_SAML_SUPPORT_CONTACT = {
    "givenName": "Support Guy",
    "emailAddress": "support@example.com"
}

இதைப் பயன்படுத்தி புதிய இணை விசைகளை உருவாக்கலாம்:

openssl req -newkey rsa:4096 -new -x509 -days 3652 -nodes -out saml.crt -keyout saml.key

இயல்புநிலை உள்ளமைவு பின்வரும் பண்புக்கூறுகளிலிருந்து பயனர் விவரங்களைப் பிரித்தெடுக்கிறது, அவற்றை வழங்க உங்கள் ஐடிபியை உள்ளமைக்கவும்:

பண்புக்கூறு

saml uri குறிப்பு

முழுப்பெயர்

urn:oid:2.5.4.3

முதல் பெயர்

urn:oid:2.5.4.42

கடைசி பெயர்

urn:oid:2.5.4.4

மின்னஞ்சல்

urn:oid:0.9.2342.19200300.100.1.3

பயனர்பெயர்

urn:oid:0.9.2342.19200300.100.1.1

உங்கள் ஐடிபியில் வலைபெயர்ப்பு எச்பியை உள்ளமைக்கும் போது, நிலையான Name அடையாளம் வடிவம் என்பதைத் தேர்ந்தெடுக்க பரிந்துரைக்கப்படுகிறது.

Hint

மேலே உள்ள எடுத்துக்காட்டு மற்றும் கப்பல்துறை படமானது weblate எனப்படும் IdP ஐ வரையறுக்கிறது. உங்கள் ஐடிபியில் இந்த சரத்தை Relay ஆக உள்ளமைக்க வேண்டும்.

Note

வலைபெயர்ப்பு அங்கீகரிப்பு, அங்கீகரிப்பு செயல்முறையின் மூலம் அனுப்பப்படும் RelayState அளவுருவைச் சார்ந்துள்ளது. இது சில அடையாள வழங்குநர்களுடன் கட்டமைக்கப்பட வேண்டும்:

See also

  • Docker இல் SAML ஐ கட்டமைக்கிறது

  • SAML

ldap ஏற்பு

சாங்கோ-ஆத்-எல்.டி.ஏ.பி தொகுப்பைப் பயன்படுத்தி எல்.டி.ஏ.பி அங்கீகாரத்தை சிறப்பாக அடைய முடியும். வழக்கமான வழிமுறைகள் வழியாக நீங்கள் அதை நிறுவலாம்:

# Using PyPI
uv pip install 'django-auth-ldap>=1.3.0'

# Using apt-get
apt-get install python-django-auth-ldap

Hint

இந்த தொகுப்பு கப்பல்துறை கொள்கலனில் சேர்க்கப்பட்டுள்ளது, காண்க டோக்கரைப் பயன்படுத்தி நிறுவுதல்.

Note

பைதான் LDAP 3.1.0 தொகுதியில் சில இணக்கமின்மைகள் உள்ளன, அவை அந்த பதிப்பைப் பயன்படுத்துவதைத் தடுக்கலாம். 'AttributeError: 'module' ஆப்செக்ட்டில் '_trace_level' <https://github.com/python-ldap/python-ldap/issues/226>`_ என்ற பிழை ஏற்பட்டால், python-ldap ஐ 3.0.0 ஆகக் குறைப்பது உதவக்கூடும்.

நீங்கள் தொகுப்பு நிறுவப்பட்டதும், அதை சாங்கோ அங்கீகாரத்தில் இணைக்கலாம்:

# Add LDAP backed, keep Django one if you want to be able to sign in
# even without LDAP for admin account
AUTHENTICATION_BACKENDS = (
    "django_auth_ldap.backend.LDAPBackend",
    "weblate.accounts.auth.WeblateUserBackend",
)

# LDAP server address
AUTH_LDAP_SERVER_URI = "ldaps://ldap.example.net"

# DN to use for authentication
AUTH_LDAP_USER_DN_TEMPLATE = "cn=%(user)s,o=Example"
# Depending on your LDAP server, you might use a different DN
# like:
# AUTH_LDAP_USER_DN_TEMPLATE = 'ou=users,dc=example,dc=com'

# List of attributes to import from LDAP upon sign in
# Weblate stores full name of the user in the full_name attribute
AUTH_LDAP_USER_ATTR_MAP = {
    "full_name": "name",
    # Use the following if your LDAP server does not have full name
    # Weblate will merge them later
    # 'first_name': 'givenName',
    # 'last_name': 'sn',
    # Email is required for Weblate (used in VCS commits)
    "email": "mail",
}
# Optional: route "Forgot your password?" to your LDAP self-service page
PASSWORD_RESET_URL = "https://id.example.net/password-reset/"


# Hide the registration form
REGISTRATION_OPEN = False

Note

AUTHENTICATION_BACKENDS அமைப்பிலிருந்து 'social_core.backends.email.Email.EmailAuth' ஐ அகற்ற வேண்டும், இல்லையெனில் பயனர்கள் தங்கள் கடவுச்சொல்லை வலைபெயர்ப்பு இல் அமைத்து, அதைப் பயன்படுத்தி அங்கீகரிக்க முடியும். அனுமதிகளை வழங்குவதற்கும் அநாமதேய பயனர்களை எளிதாக்குவதற்கும் 'weblate.accounts.auth.WeblateUserBackend' ஐ வைத்திருப்பது இன்னும் தேவைப்படுகிறது. உள்ளக நிர்வாகி கணக்கை நீங்கள் உருவாக்கியிருந்தால் (எ.கா createadmin ஐப் பயன்படுத்தி) உள்நுழையவும் இது உங்களை அனுமதிக்கும்.

பிணைப்பு கடவுச்சொல்லைப் பயன்படுத்துதல்

அங்கீகாரத்திற்காக நீங்கள் நேரடி பிணைப்பை பயன்படுத்த முடியாவிட்டால், நீங்கள் தேடலைப் பயன்படுத்த வேண்டும், மேலும் தேடலுக்கு பிணைக்க ஒரு பயனரை வழங்க வேண்டும். உதாரணத்திற்கு:

import ldap
from django_auth_ldap.config import LDAPSearch

AUTH_LDAP_BIND_DN = ""
AUTH_LDAP_BIND_PASSWORD = ""
AUTH_LDAP_USER_SEARCH = LDAPSearch(
    "ou=users,dc=example,dc=com", ldap.SCOPE_SUBTREE, "(uid=%(user)s)"
)

செயலில் உள்ள அடைவு ஒருங்கிணைப்பு

import ldap
from django_auth_ldap.config import LDAPSearch, NestedActiveDirectoryGroupType

AUTH_LDAP_BIND_DN = "CN=ldap,CN=Users,DC=example,DC=com"
AUTH_LDAP_BIND_PASSWORD = "password"

# User and group search objects and types
AUTH_LDAP_USER_SEARCH = LDAPSearch(
    "CN=Users,DC=example,DC=com", ldap.SCOPE_SUBTREE, "(sAMAccountName=%(user)s)"
)

# Make selected group a superuser in Weblate
AUTH_LDAP_USER_FLAGS_BY_GROUP = {
    # is_superuser means user has all permissions
    "is_superuser": "CN=weblate_AdminUsers,OU=Groups,DC=example,DC=com",
}

# Map groups from AD to Weblate
AUTH_LDAP_GROUP_SEARCH = LDAPSearch(
    "OU=Groups,DC=example,DC=com", ldap.SCOPE_SUBTREE, "(objectClass=group)"
)
AUTH_LDAP_GROUP_TYPE = NestedActiveDirectoryGroupType()
AUTH_LDAP_FIND_GROUP_PERMS = True

# Optionally enable group mirroring from LDAP to Weblate
# AUTH_LDAP_MIRROR_GROUPS = True

cas ஏற்பு

சாங்கோ காச் என்சி போன்ற தொகுப்பைப் பயன்படுத்தி சிஏஎச் அங்கீகாரத்தை அடைய முடியும்.

படி ஒன்று cas வழியாக பயனரின் மின்னஞ்சல் புலத்தை வெளிப்படுத்துகிறது. இது cas சேவையகத்திலேயே கட்டமைக்கப்பட வேண்டும், மேலும் cas v1 பண்புகளை ஆதரிக்காததால் குறைந்தபட்சம் cas v2 ஐ இயக்க வேண்டும்.

படி இரண்டு உங்கள் cas சேவையகம் மற்றும் பண்புகளைப் பயன்படுத்த வலைபெயர்ப்பைப் புதுப்பிக்கிறது.

Django CAS NG வை நிறுவ:

uv pip install django-cas-ng

நீங்கள் தொகுப்பை நிறுவியவுடன், settings.py கோப்பை மாற்றுவதன் மூலம் அதை சாங்கோ அங்கீகார அமைப்புடன் இணைக்கலாம்:

# Add CAS backed, keep the Django one if you want to be able to sign in
# even without LDAP for the admin account
AUTHENTICATION_BACKENDS = (
    "django_cas_ng.backends.CASBackend",
    "weblate.accounts.auth.WeblateUserBackend",
)

# CAS server address
CAS_SERVER_URL = "https://cas.example.net/cas/"

# Add django_cas_ng somewhere in the list of INSTALLED_APPS
INSTALLED_APPS = (..., "django_cas_ng")

இறுதியாக, பயனர் பொருளுக்கு மின்னஞ்சல் புலத்தை வரைபடமாக்க ஒரு சமிக்ஞையைப் பயன்படுத்தலாம். இது வேலை செய்ய நீங்கள் சாங்கோ-சிஏஎச்-என்சி தொகுப்பிலிருந்து சமிக்ஞையை இறக்குமதி செய்து இந்த சமிக்ஞையுடன் உங்கள் குறியீட்டை இணைக்க வேண்டும். அமைப்புகள் கோப்பில் இதைச் செய்வது சிக்கல்களை ஏற்படுத்தும், எனவே அதை வைக்க பரிந்துரைக்கப்படுகிறது:

  • உங்கள் பயன்பாட்டு கட்டமைப்பில் django.apps.AppConfig.ready() முறை

  • திட்டத்தின் urls.py கோப்பில் (மாதிரிகள் இல்லாதபோது)

from django_cas_ng.signals import cas_user_authenticated
from django.dispatch import receiver


@receiver(cas_user_authenticated)
def update_user_email_address(sender, user=None, attributes=None, **kwargs):
    # If your CAS server does not always include the email attribute
    # you can wrap the next two lines of code in a try/catch block.
    user.email = attributes["email"]
    user.save()

மூன்றாம் தரப்பு சாங்கோ அங்கீகாரத்தை கட்டமைத்தல்

பொதுவாக எந்த சாங்கோ அங்கீகார சொருகி வலைபெயர்ப்புடுடன் வேலை செய்ய வேண்டும். சொருகி வழிமுறைகளைப் பின்பற்றவும், வலைபெயர்ப்பு பயனர் பின்தளத்தில் நிறுவப்பட்டிருக்க நினைவில் கொள்ளுங்கள்.

பொதுவாக நிறுவலானது AUTHENTICATION_BACKENDS க்கு அங்கீகார பின்தளத்தைச் சேர்ப்பது மற்றும் அங்கீகார பயன்பாட்டை (ஏதேனும் இருந்தால்) நிறுவுவது INSTALLED_APPS:

AUTHENTICATION_BACKENDS = (
    # Add authentication backend here
    "weblate.accounts.auth.WeblateUserBackend",
)

INSTALLED_APPS += (
    # Install authentication app here
)

இரண்டு காரணி ஏற்பு

Added in version 5.7.

Hint

இரண்டு காரணி ஏற்பு உள்நுழைய கடவுச்சொல்லை விட அதிகமாக தேவைப்படுவதன் மூலம் உங்கள் கணக்கிற்கு மற்றொரு பாதுகாப்பை சேர்க்கிறது.

வலைபெயர்ப்பு பின்வரும் இரண்டாவது காரணிகளை ஆதரிக்கிறது:

பாதுகாப்பு விசைகள் (வெப்அத்ன்)

இரண்டும், பாச்கிகள் மற்றும் பாதுகாப்பு விசைகள் ஆதரிக்கப்படுகின்றன.

பயனர் சரிபார்ப்பை உள்ளடக்கியதால் தொடுதல், முக ஏற்பு, சாதன கடவுச்சொல் அல்லது முள் ஆகியவற்றைப் பயன்படுத்தி உங்கள் அடையாளத்தை பாச்கேச் சரிபார்க்கவும்.

பாதுகாப்பு விசைகள் என்பது வெப்அத்ன் நற்சான்றிதழ்கள், அவை அங்கீகாரத்தின் இரண்டாவது காரணியாக மட்டுமே பயன்படுத்தப்படலாம், மேலும் இவை பயனர் இருப்பை மட்டுமே உறுதிப்படுத்துகின்றன.

அங்கீகார பயன்பாடுகள் (TOTP)

Aegis, பிட்வார்டன், கூகிள் அங்கீகரிப்பாளர், 1Password, Autigy, நுண்மென் அங்கீகரிப்பாளர் போன்ற அங்கீகார பயன்பாடுகள் மற்றும் உலாவி நீட்டிப்புகள். உள்நுழைவின்போது கேட்கப்படும்போது உங்கள் அடையாளத்தைச் சரிபார்க்க இரண்டாவது காரணியாகப் பயன்படுத்தப்படும் நேர அடிப்படையிலான ஒரு முறை கடவுச்சொற்களை உருவாக்குகின்றன.

மீட்பு குறியீடுகள்

உங்கள் சாதனத்திற்கான அணுகலை இழந்துவிட்டால், இரண்டு காரணி அங்கீகாரக் குறியீடுகளைப் பெற முடியாவிட்டால், உங்கள் கணக்கை அணுக மீட்புக் குறியீடுகள் பயன்படுத்தப்படலாம்.

உங்கள் மீட்பு குறியீடுகளை உங்கள் கடவுச்சொல்லைப் போலவே பாதுகாப்பாக வைத்திருங்கள். பிட்வார்டன், 1 பாச்வேர்ட், உண்மையான அல்லது கீப்பர் போன்ற கடவுச்சொல் நிர்வாகியுடன் அவற்றை சேமிக்க பரிந்துரைக்கிறோம்.

ஒவ்வொரு பயனரும் இதை கணக்கு இல் உள்ளமைக்க முடியும் மேலும் தற்போதுள்ள அங்கீகார முறையுடன் கூடுதலாக கையொப்பமிட இரண்டாவது காரணி தேவைப்படும்.

This can be enforced for users at the project (see இரண்டு காரணி அங்கீகாரத்தை செயல்படுத்தியது) or team level. In site-wide deployments, this can also be used to enforce two-factor authentication for all users by enabling it on the default Users team, which is assigned automatically to new users by automatic team assignment.

அமல்படுத்தப்பட்ட இரண்டு காரணி அங்கீகாரத்துடன் கூடிய குழுவின் அனுமதிகள் கட்டமைக்கப்படாத பயனர்களுக்கு பயன்படுத்தப்படாது.