-
-
Notifications
You must be signed in to change notification settings - Fork 22.2k
feat: Add BrightData Unlocker tool component #5075
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
base: main
Are you sure you want to change the base?
Changes from all commits
1dad765
3f1f950
9cc339c
fe67cdf
1abee67
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 |
---|---|---|
@@ -1,40 +1,40 @@ | ||
### Responsible Disclosure Policy | ||
### Responsible Disclosure Policy | ||
|
||
At Flowise, we prioritize security and continuously work to safeguard our systems. However, vulnerabilities can still exist. If you identify a security issue, please report it to us so we can address it promptly. Your cooperation helps us better protect our platform and users. | ||
At Flowise, we prioritize security and continuously work to safeguard our systems. However, vulnerabilities can still exist. If you identify a security issue, please report it to us so we can address it promptly. Your cooperation helps us better protect our platform and users. | ||
|
||
### Vulnerabilities | ||
### Vulnerabilities | ||
|
||
The following types of issues are some of the most common vulnerabilities: | ||
|
||
- Clickjacking on pages without sensitive actions | ||
- CSRF on unauthenticated/logout/login pages | ||
- Attacks requiring MITM (Man-in-the-Middle) or physical device access | ||
- Social engineering attacks | ||
- Activities that cause service disruption (DoS) | ||
- Content spoofing and text injection without a valid attack vector | ||
- Email spoofing | ||
- Absence of DNSSEC, CAA, CSP headers | ||
- Missing Secure or HTTP-only flag on non-sensitive cookies | ||
- Deadlinks | ||
- User enumeration | ||
|
||
### Reporting Guidelines | ||
|
||
- Submit your findings to https://github.com/FlowiseAI/Flowise/security | ||
- Provide clear details to help us reproduce and fix the issue quickly. | ||
|
||
### Disclosure Guidelines | ||
|
||
- Do not publicly disclose vulnerabilities until we have assessed, resolved, and notified affected users. | ||
- If you plan to present your research (e.g., at a conference or in a blog), share a draft with us at least **30 days in advance** for review. | ||
- Avoid including: | ||
- Data from any Flowise customer projects | ||
- Flowise user/customer information | ||
- Details about Flowise employees, contractors, or partners | ||
|
||
### Response to Reports | ||
|
||
- We will acknowledge your report within **5 business days** and provide an estimated resolution timeline. | ||
- Your report will be kept **confidential**, and your details will not be shared without your consent. | ||
We appreciate your efforts in helping us maintain a secure platform and look forward to working together to resolve any issues responsibly. | ||
- Clickjacking on pages without sensitive actions | ||
- CSRF on unauthenticated/logout/login pages | ||
- Attacks requiring MITM (Man-in-the-Middle) or physical device access | ||
- Social engineering attacks | ||
- Activities that cause service disruption (DoS) | ||
- Content spoofing and text injection without a valid attack vector | ||
- Email spoofing | ||
- Absence of DNSSEC, CAA, CSP headers | ||
- Missing Secure or HTTP-only flag on non-sensitive cookies | ||
- Deadlinks | ||
- User enumeration | ||
|
||
### Reporting Guidelines | ||
|
||
- Submit your findings to https://github.com/FlowiseAI/Flowise/security | ||
- Provide clear details to help us reproduce and fix the issue quickly. | ||
|
||
### Disclosure Guidelines | ||
|
||
- Do not publicly disclose vulnerabilities until we have assessed, resolved, and notified affected users. | ||
- If you plan to present your research (e.g., at a conference or in a blog), share a draft with us at least **30 days in advance** for review. | ||
- Avoid including: | ||
- Data from any Flowise customer projects | ||
- Flowise user/customer information | ||
- Details about Flowise employees, contractors, or partners | ||
|
||
### Response to Reports | ||
|
||
- We will acknowledge your report within **5 business days** and provide an estimated resolution timeline. | ||
- Your report will be kept **confidential**, and your details will not be shared without your consent. | ||
|
||
We appreciate your efforts in helping us maintain a secure platform and look forward to working together to resolve any issues responsibly. |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -118,35 +118,35 @@ Flowise 在一个单一的单体存储库中有 3 个不同的模块。 | |
|
||
Flowise 支持不同的环境变量来配置您的实例。您可以在 `packages/server` 文件夹中的 `.env` 文件中指定以下变量。阅读[更多信息](https://docs.flowiseai.com/environment-variables) | ||
|
||
| 变量名 | 描述 | 类型 | 默认值 | | ||
|-----------------------------|---------------------------------------------------------|-------------------------------------------------|-------------------------------------| | ||
| `PORT` | Flowise 运行的 HTTP 端口 | 数字 | 3000 | | ||
| `FLOWISE_FILE_SIZE_LIMIT` | 上传文件大小限制 | 字符串 | 50mb | | ||
| `DEBUG` | 打印组件的日志 | 布尔值 | | | ||
| `LOG_PATH` | 存储日志文件的位置 | 字符串 | `your-path/Flowise/logs` | | ||
| `LOG_LEVEL` | 日志的不同级别 | 枚举字符串: `error`, `info`, `verbose`, `debug` | `info` | | ||
| `TOOL_FUNCTION_BUILTIN_DEP` | 用于工具函数的 NodeJS 内置模块 | 字符串 | | | ||
| `TOOL_FUNCTION_EXTERNAL_DEP`| 用于工具函数的外部模块 | 字符串 | | | ||
| `DATABASE_TYPE` | 存储 Flowise 数据的数据库类型 | 枚举字符串: `sqlite`, `mysql`, `postgres` | `sqlite` | | ||
| `DATABASE_PATH` | 数据库保存的位置(当 `DATABASE_TYPE` 是 sqlite 时) | 字符串 | `your-home-dir/.flowise` | | ||
| `DATABASE_HOST` | 主机 URL 或 IP 地址(当 `DATABASE_TYPE` 不是 sqlite 时)| 字符串 | | | ||
| `DATABASE_PORT` | 数据库端口(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `DATABASE_USERNAME` | 数据库用户名(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `DATABASE_PASSWORD` | 数据库密码(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `DATABASE_NAME` | 数据库名称(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `SECRETKEY_PATH` | 保存加密密钥(用于加密/解密凭据)的位置 | 字符串 | `your-path/Flowise/packages/server` | | ||
| `FLOWISE_SECRETKEY_OVERWRITE`| 加密密钥用于替代存储在 `SECRETKEY_PATH` 中的密钥 | 字符串 | | | ||
| `MODEL_LIST_CONFIG_JSON` | 加载模型的位置 | 字符串 | `/your_model_list_config_file_path` | | ||
| `STORAGE_TYPE` | 上传文件的存储类型 | 枚举字符串: `local`, `s3` | `local` | | ||
| `BLOB_STORAGE_PATH` | 本地上传文件存储路径(当 `STORAGE_TYPE` 为 `local`) | 字符串 | `your-home-dir/.flowise/storage` | | ||
| `S3_STORAGE_BUCKET_NAME` | S3 存储文件夹路径(当 `STORAGE_TYPE` 为 `s3`) | 字符串 | | | ||
| `S3_STORAGE_ACCESS_KEY_ID` | AWS 访问密钥 (Access Key) | 字符串 | | | ||
| `S3_STORAGE_SECRET_ACCESS_KEY` | AWS 密钥 (Secret Key) | 字符串 | | | ||
| `S3_STORAGE_REGION` | S3 存储地区 | 字符串 | | | ||
| `S3_ENDPOINT_URL` | S3 端点 URL | 字符串 | | | ||
| `S3_FORCE_PATH_STYLE` | 设置为 true 以强制请求使用路径样式寻址 | 布尔值 | false | | ||
| `SHOW_COMMUNITY_NODES` | 显示由社区创建的节点 | 布尔值 | | | ||
| `DISABLED_NODES` | 从界面中隐藏节点(以逗号分隔的节点名称列表) | 字符串 | | | ||
| 变量名 | 描述 | 类型 | 默认值 | | ||
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. can we keep unrelated changes out of this PR? 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. Will check and fix |
||
| ------------------------------ | -------------------------------------------------------- | ----------------------------------------------- | ----------------------------------- | | ||
| `PORT` | Flowise 运行的 HTTP 端口 | 数字 | 3000 | | ||
| `FLOWISE_FILE_SIZE_LIMIT` | 上传文件大小限制 | 字符串 | 50mb | | ||
| `DEBUG` | 打印组件的日志 | 布尔值 | | | ||
| `LOG_PATH` | 存储日志文件的位置 | 字符串 | `your-path/Flowise/logs` | | ||
| `LOG_LEVEL` | 日志的不同级别 | 枚举字符串: `error`, `info`, `verbose`, `debug` | `info` | | ||
| `TOOL_FUNCTION_BUILTIN_DEP` | 用于工具函数的 NodeJS 内置模块 | 字符串 | | | ||
| `TOOL_FUNCTION_EXTERNAL_DEP` | 用于工具函数的外部模块 | 字符串 | | | ||
| `DATABASE_TYPE` | 存储 Flowise 数据的数据库类型 | 枚举字符串: `sqlite`, `mysql`, `postgres` | `sqlite` | | ||
| `DATABASE_PATH` | 数据库保存的位置(当 `DATABASE_TYPE` 是 sqlite 时) | 字符串 | `your-home-dir/.flowise` | | ||
| `DATABASE_HOST` | 主机 URL 或 IP 地址(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `DATABASE_PORT` | 数据库端口(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `DATABASE_USERNAME` | 数据库用户名(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `DATABASE_PASSWORD` | 数据库密码(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `DATABASE_NAME` | 数据库名称(当 `DATABASE_TYPE` 不是 sqlite 时) | 字符串 | | | ||
| `SECRETKEY_PATH` | 保存加密密钥(用于加密/解密凭据)的位置 | 字符串 | `your-path/Flowise/packages/server` | | ||
| `FLOWISE_SECRETKEY_OVERWRITE` | 加密密钥用于替代存储在 `SECRETKEY_PATH` 中的密钥 | 字符串 | | | ||
| `MODEL_LIST_CONFIG_JSON` | 加载模型的位置 | 字符串 | `/your_model_list_config_file_path` | | ||
| `STORAGE_TYPE` | 上传文件的存储类型 | 枚举字符串: `local`, `s3` | `local` | | ||
| `BLOB_STORAGE_PATH` | 本地上传文件存储路径(当 `STORAGE_TYPE` 为 `local`) | 字符串 | `your-home-dir/.flowise/storage` | | ||
| `S3_STORAGE_BUCKET_NAME` | S3 存储文件夹路径(当 `STORAGE_TYPE` 为 `s3`) | 字符串 | | | ||
| `S3_STORAGE_ACCESS_KEY_ID` | AWS 访问密钥 (Access Key) | 字符串 | | | ||
| `S3_STORAGE_SECRET_ACCESS_KEY` | AWS 密钥 (Secret Key) | 字符串 | | | ||
| `S3_STORAGE_REGION` | S3 存储地区 | 字符串 | | | ||
| `S3_ENDPOINT_URL` | S3 端点 URL | 字符串 | | | ||
| `S3_FORCE_PATH_STYLE` | 设置为 true 以强制请求使用路径样式寻址 | 布尔值 | false | | ||
| `SHOW_COMMUNITY_NODES` | 显示由社区创建的节点 | 布尔值 | | | ||
| `DISABLED_NODES` | 从界面中隐藏节点(以逗号分隔的节点名称列表) | 字符串 | | | ||
|
||
您也可以在使用 `npx` 时指定环境变量。例如: | ||
|
||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
import { INodeParams, INodeCredential } from '../src/Interface' | ||
|
||
class BrightDataApi implements INodeCredential { | ||
label: string | ||
name: string | ||
version: number | ||
description: string | ||
inputs: INodeParams[] | ||
|
||
constructor() { | ||
this.label = 'BrightData API' | ||
this.name = 'brightDataApi' | ||
this.version = 1.0 | ||
this.description = 'Go to https://brightdata.com/, navigate to settings, and create an API key or copy your existing one.' | ||
this.inputs = [ | ||
{ | ||
label: 'BrightData API Key', | ||
name: 'brightDataApiKey', | ||
type: 'password', | ||
placeholder: '<BRIGHTDATA_API_KEY>', | ||
description: 'Your BrightData API key (Bearer token)' | ||
}, | ||
{ | ||
label: 'Zone', | ||
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. how to find this? please add docs link to the description. Refer to other credential how this is done 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. will add references to the website |
||
name: 'brightDataZone', | ||
type: 'string', | ||
default: 'web_unlocker1', | ||
placeholder: 'web_unlocker1', | ||
description: 'Proxy Zone - Place your unlocker zone name here', | ||
optional: true | ||
} | ||
] | ||
} | ||
} | ||
|
||
module.exports = { credClass: BrightDataApi } |
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.
can we keep unrelated changes out of this PR?
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.
Do you just want the commit not to contain it?