-
-
Notifications
You must be signed in to change notification settings - Fork 891
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
website/integrations: add Frappe #10797
Changes from 5 commits
c9919c1
471c67f
7a17768
cca9130
8f69a72
65a2b7a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
@@ -0,0 +1,84 @@ | ||||||||||
--- | ||||||||||
title: Frappe Helpdesk | ||||||||||
--- | ||||||||||
|
||||||||||
<span class="badge badge--secondary">Support level: Community</span> | ||||||||||
|
||||||||||
:::note | ||||||||||
These instructions apply to all projects in the Frappe Family. | ||||||||||
::: | ||||||||||
|
||||||||||
## What is Frappe Helpdesk | ||||||||||
|
||||||||||
> Frappe Helpdesk is an open source ticketing tool based on Frappe Framework. | ||||||||||
> | ||||||||||
> -- https://frappe.io/helpdesk | ||||||||||
|
||||||||||
## Preparation | ||||||||||
|
||||||||||
The following placeholders will be used: | ||||||||||
|
||||||||||
- `frappe.company` is the FQDN of the Frappe install. | ||||||||||
- `authentik.company` is the FQDN of the authentik install. | ||||||||||
- `provider` is the name for the social login provider in Frappe. | ||||||||||
|
||||||||||
## authentik configuration | ||||||||||
|
||||||||||
1. Log in to authentik as an admin, and go to the Admin interface, | ||||||||||
2. Create a new OAuth2/OpenID Provider under **Applications** -> **Providers** using the following settings: | ||||||||||
|
||||||||||
- **Name**: Frappe | ||||||||||
- **Client type**: Confidential | ||||||||||
- **Client ID**: Use the auto-populated ID | ||||||||||
- **Client Secret**: Use the auto-populated secret | ||||||||||
- **Redirect URIs/Origins (RegEx)**: | ||||||||||
- `https://frappe.company/api/method/frappe.integrations.oauth2_logins.custom/provider` | ||||||||||
- **Scopes**: `email`, `openid`, `profile` | ||||||||||
- **Subject mode**: `Based on the Users's username` | ||||||||||
- **Include claims in id_token**: `True` | ||||||||||
- Leave everything else as default | ||||||||||
|
||||||||||
Take note of **Client ID** and **Client Secret** as you will need them later. | ||||||||||
|
||||||||||
3. Create a new Application under **Applications** > **Applications**, pick a name and a slug, and assign the provider that you have just created. | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
|
||||||||||
## Frappe configuration | ||||||||||
|
||||||||||
1. From the Frappe main menu, navigate to **Integrations**, then to **Social Login Key**. | ||||||||||
|
||||||||||
Add a new Social login Key using the black button on top right. | ||||||||||
![](./frappe1.png) | ||||||||||
|
||||||||||
2. Enter the following settings: | ||||||||||
|
||||||||||
In Client Credentials section: | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
- Enable Social Login: Turn the checkmark to the _on_ position. | ||||||||||
- Client ID: _client-id-from-authentik_ | ||||||||||
- Client Secret: _client-secret-from-authentik_ | ||||||||||
|
||||||||||
In Configuration section: | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
- Sign ups: Allow | ||||||||||
|
||||||||||
![](./frappe2.png) | ||||||||||
|
||||||||||
In Identity Details section: | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
- Base URL: `https://authentik.company/` | ||||||||||
- In Client URLs section: | ||||||||||
- Authorize URL: `/application/o/authorize/` | ||||||||||
- Access Token URL: `/application/o/token/` | ||||||||||
- Redirect URL: `/api/method/frappe.integrations.oauth2_logins.custom/provider/` | ||||||||||
- API Endpoint: `/application/o/userinfo/` | ||||||||||
|
||||||||||
![](./frappe3.png) | ||||||||||
|
||||||||||
In Client Information: | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
- Auth URL Data: `{"response_type": "code", "scope": "email profile openid"}` | ||||||||||
|
||||||||||
![](./frappe4.png) 3. Press the black **Save** button on the top right. | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
|
||||||||||
## Verification | ||||||||||
|
||||||||||
1. Go to `https://frappe.company` from Incognito mode. | ||||||||||
2. Press **Login with provider** on the login screen. | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
3. Authorize with authentik. | ||||||||||
4. You will be redirected to home screen of Frappe application. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.