Skip to content

Commit

Permalink
feat(authentication): suport ldap over unix socket (authelia#5397)
Browse files Browse the repository at this point in the history
This adds support for LDAP unix sockets using the ldapi scheme. In addition it improves all of the address related parsing significantly deprecating old options.

Signed-off-by: James Elliott <[email protected]>
  • Loading branch information
james-d-elliott authored May 7, 2023
1 parent 90d1901 commit fb5c285
Show file tree
Hide file tree
Showing 150 changed files with 4,897 additions and 3,663 deletions.
2 changes: 1 addition & 1 deletion .github/FUNDING.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

# github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
# patreon: # Replace with a single Patreon username
open_collective: authelia-sponsors
open_collective: 'authelia-sponsors'
# ko_fi: # Replace with a single Ko-fi username
# tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
# community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
Expand Down
36 changes: 18 additions & 18 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
---
blank_issues_enabled: false
contact_links:
- name: Idea
url: https://github.com/authelia/authelia/discussions/new?category=ideas
about: Submit an Idea for Voting
- name: Question
url: https://github.com/authelia/authelia/discussions/new?category=q-a
about: Ask a Question
- name: Discussion
url: https://github.com/authelia/authelia/discussions/new
about: Start a Discussion related to Ideas, Polls, Show and Tell, or General Topics
- name: Documentation
url: https://www.authelia.com/
about: Read the Documentation
- name: Matrix
url: https://matrix.to/#/#community:authelia.com
about: Discuss Authelia with the Developers on Matrix which is the preferred method of contact
- name: Discord
url: https://discord.authelia.com
about: Discuss Authelia with the Developers on Discord which is bridged to Matrix
- name: 'Idea'
url: 'https://github.com/authelia/authelia/discussions/new?category=ideas'
about: 'Submit an Idea for Voting'
- name: 'Question'
url: 'https://github.com/authelia/authelia/discussions/new?category=q-a'
about: 'Ask a Question'
- name: 'Discussion'
url: 'https://github.com/authelia/authelia/discussions/new'
about: 'Start a Discussion related to Ideas, Polls, Show and Tell, or General Topics'
- name: 'Documentation'
url: 'https://www.authelia.com/'
about: 'Read the Documentation'
- name: 'Matrix'
url: 'https://matrix.to/#/#community:authelia.com'
about: 'Discuss Authelia with the Developers on Matrix which is the preferred method of contact'
- name: 'Discord'
url: 'https://discord.authelia.com'
about: 'Discuss Authelia with the Developers on Discord which is bridged to Matrix'
...
68 changes: 40 additions & 28 deletions .github/ISSUE_TEMPLATE/feature-request.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
---
name: Feature Request
description: Submit a Feature Request
name: 'Feature Request'
description: 'Submit a Feature Request'
labels:
- type/feature
- status/needs-design
- priority/4/normal
- 'type/feature'
- 'status/needs-design'
- 'priority/4/normal'
body:
- type: markdown
- type: 'markdown'
attributes:
value: |
Thanks for taking the time to fill out this feature request. A feature request is created as issue for the purpose of tracking the design and implementation of a feature.
Expand All @@ -16,42 +16,54 @@ body:
1. Ensure there are no other similar feature requests.
2. Make sure you've checked the [Documentation](https://www.authelia.com) doesn't clearly document the features existence already.
3. Consider creating an [Idea Discussion](https://github.com/authelia/authelia/discussions/new?category=ideas) which can be voted on instead if one doesn't exist.
- type: textarea
id: description
- type: 'textarea'
id: 'description'
attributes:
label: Description
description: Describe the feature
label: |
Description
description: |
Describe the feature
validations:
required: true
- type: textarea
id: use-case
- type: 'textarea'
id: 'use-case'
attributes:
label: Use Case
description: Provide a use case
label: |
Use Case
description: |
Provide a use case
validations:
required: true
- type: textarea
id: details
- type: 'textarea'
id: 'details'
attributes:
label: Details
description: Describe the feature in detail
label: |
Details
description: |
Describe the feature in detail
validations:
required: false
- type: textarea
id: documentation
- type: 'textarea'
id: 'documentation'
attributes:
label: Documentation
description: Provide any relevant specification or other documentation if applicable
label: |
Documentation
description: |
Provide any relevant specification or other documentation if applicable
validations:
required: false
- type: checkboxes
id: checklist
- type: 'checkboxes'
id: 'checklist'
attributes:
label: Pre-Submission Checklist
description: By submitting this issue confirm all of the following
label: |
Pre-Submission Checklist
description: |
By submitting this issue confirm all of the following
options:
- label: I agree to follow the [Code of Conduct](http://www.authelia.com/code-of-conduct)
- label: |
I agree to follow the [Code of Conduct](http://www.authelia.com/code-of-conduct)
required: true
- label: I have checked for related issues and checked the documentation
- label: |
I have checked for related issues and checked the documentation
required: true
...
1 change: 1 addition & 0 deletions .yamllint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ yaml-files:
ignore: |
api/openapi.yml
docs/pnpm-lock.yaml
docs/node_modules/
internal/configuration/test_resources/config_bad_quoting.yml
web/pnpm-lock.yaml
web/node_modules/
Expand Down
166 changes: 98 additions & 68 deletions cmd/authelia-gen/templates/github_issue_template_bug_report.yml.tmpl
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
---
name: Bug Report
description: Report a bug
name: 'Bug Report'
description: 'Report a bug'
labels:
{{- range .Labels }}
- {{ . }}
- '{{ . }}'
{{- end }}
body:
- type: markdown
- type: 'markdown'
attributes:
value: |
Thanks for taking the time to fill out this bug report. If you are unsure if this is actually a bug and you still need some form of support we generally recommend creating a [Question and Answer Discussion](https://github.com/authelia/authelia/discussions/new?category=q-a) first.
Expand All @@ -25,122 +25,152 @@ body:
- Do not truncate any logs unless you are complying with the specific instructions in the [Logs](https://www.authelia.com/r/troubleshooting#logs) section.
- If you plan on sanitizing, removing, or adjusting any values for the logs or configuration files please read the [Sanitization](https://www.authelia.com/r/troubleshooting#sanitization) section.
7. Please consider including a [HTTP Archive File](https://www.authelia.com/r/har) if you're having redirection issues.
- type: dropdown
id: version
- type: 'dropdown'
id: 'version'
attributes:
label: Version
description: What version(s) of Authelia can you reproduce this bug on?
label: |
Version
description: |
What version(s) of Authelia can you reproduce this bug on?
multiple: true
options:
{{- range .Versions }}
- {{ . }}
- '{{ . }}'
{{- end }}
validations:
required: true
- type: dropdown
id: deployment
- type: 'dropdown'
id: 'deployment'
attributes:
label: Deployment Method
description: How are you deploying Authelia?
label: |
Deployment Method
description: |
How are you deploying Authelia?
options:
- Docker
- Kubernetes
- Bare-metal
- Other
- 'Docker'
- 'Kubernetes'
- 'Bare-metal'
- 'Other'
validations:
required: true
- type: dropdown
id: proxy
- type: 'dropdown'
id: 'proxy'
attributes:
label: Reverse Proxy
description: What reverse proxy are you using?
label: |
Reverse Proxy
description: |
What reverse proxy are you using?
options:
{{- range .Proxies }}
- {{ . }}
- '{{ . }}'
{{- end }}
validations:
required: true
- type: input
id: proxy-version
- type: 'input'
id: 'proxy-version'
attributes:
label: Reverse Proxy Version
description: What is the version of your reverse proxy?
placeholder: x.x.x
label: |
Reverse Proxy Version
description: |
What is the version of your reverse proxy?
placeholder: 'x.x.x'
validations:
required: false
- type: textarea
id: description
- type: 'textarea'
id: 'description'
attributes:
label: Description
description: Describe the bug.
label: |
Description
description: |
Describe the bug.
validations:
required: true
- type: textarea
id: reproduction
- type: 'textarea'
id: 'reproduction'
attributes:
label: Reproduction
description: Describe how we can reproduce this issue. This should be step by step and should include detailed and specific information. Abstract or generic information should be avoided. For example this should include specific application names and versions if relevant. Reproducing the issue is important so we can verify it exists, add relevant tests, and verify it is solved.
label: |
Reproduction
description: |
Describe how we can reproduce this issue. This should be step by step and should include detailed and specific information. Abstract or generic information should be avoided. For example this should include specific application names and versions if relevant. Reproducing the issue is important so we can verify it exists, add relevant tests, and verify it is solved.
validations:
required: true
- type: textarea
id: expectations
- type: 'textarea'
id: 'expectations'
attributes:
label: Expectations
description: Describe the desired or expected results.
label: |
Expectations
description: |
Describe the desired or expected results.
validations:
required: false
- type: textarea
id: configuration
- type: 'textarea'
id: 'configuration'
attributes:
label: Configuration (Authelia)
description: Provide a complete configuration file (the template will automatically put this content in a code block).
render: yaml
label: |
Configuration (Authelia)
description: |
Provide a complete configuration file (the template will automatically put this content in a code block).
render: 'yaml'
validations:
required: false
- type: textarea
id: logs
- type: 'textarea'
id: 'logs'
attributes:
label: Logs (Authelia)
label: |
Logs (Authelia)
description: |
Provide complete logs with the log level set to debug or trace. Complete means from application start until the issue occurring. This is clearly explained in the [Logs](https://www.authelia.com/r/troubleshooting#logs) section of the troubleshooting guide.

The template will automatically put this content in a code block so you can just paste it.
render: shell
render: 'shell'
validations:
required: true
- type: textarea
id: logs-other
- type: 'textarea'
id: 'logs-other'
attributes:
label: Logs (Proxy / Application)
description: Provide complete debug logs for the affected proxy and/or application if available and relevant (the template will automatically put this content in a code block).
render: shell
label: |
Logs (Proxy / Application)
description: |
Provide complete debug logs for the affected proxy and/or application if available and relevant (the template will automatically put this content in a code block).
render: 'shell'
validations:
required: false
- type: textarea
id: documentation
- type: 'textarea'
id: 'documentation'
attributes:
label: Documentation
description: Provide any relevant specification or other documentation if applicable.
label: |
Documentation
description: |
Provide any relevant specification or other documentation if applicable.
validations:
required: false
- type: checkboxes
id: checklist
- type: 'checkboxes'
id: 'checklist'
attributes:
label: Pre-Submission Checklist
description: By submitting this issue confirm all of the following.
label: |
Pre-Submission Checklist
description: |
By submitting this issue confirm all of the following.
options:
- label: I agree to follow the [Code of Conduct](http://www.authelia.com/code-of-conduct)
- label: |
I agree to follow the [Code of Conduct](http://www.authelia.com/code-of-conduct)
required: true
- label: This is a bug report and not a support request
- label: |
This is a bug report and not a support request
required: true
- label: I have read the security policy and this bug report is not a security issue or security related issue
- label: |
I have read the security policy and this bug report is not a security issue or security related issue
required: true
- label: I have either included the complete configuration file or I am sure it's unrelated to the configuration
- label: |
I have either included the complete configuration file or I am sure it's unrelated to the configuration
required: true
- label: I have provided all of the required information in full with the only alteration being reasonable sanitization in accordance with the [Troubleshooting Sanitization](https://www.authelia.com/r/sanitize) reference guide
- label: |
I have provided all of the required information in full with the only alteration being reasonable sanitization in accordance with the [Troubleshooting Sanitization](https://www.authelia.com/r/sanitize) reference guide
required: true
- label: I have checked for related proxy or application logs and included them if available
- label: |
I have checked for related proxy or application logs and included them if available
required: true
- label: I have checked for related issues and checked the documentation
- label: |
I have checked for related issues and checked the documentation
required: true
...
Loading

0 comments on commit fb5c285

Please sign in to comment.