mirror of
https://github.com/finmars-platform/finmars-core.git
synced 2026-04-26 22:56:00 +03:00
[GH-ISSUE #63] Implement OAuth-like Flow for Finmars ID Connection #18
Labels
No labels
BackEnd
FrontEnd
bug
enhancement
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/finmars-core#18
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @olegprivate on GitHub (Jul 22, 2025).
Original GitHub issue: https://github.com/finmars-platform/finmars-core/issues/63
Originally assigned to: @falendary on GitHub.
Is your feature request related to a problem? Please describe.
Currently, connecting Finmars Workspace to a Finmars ID account is a manual process. The user must navigate to the Finmars ID portal, manually generate a license key, and then copy and paste it into the Workspace settings. This process is cumbersome and can be prone to user error.
Describe the solution you'd like
To streamline this, we propose replacing the manual copy-paste method with a simple, one-click authorization flow. A new "Connect to Finmars ID" button will handle the entire process of authentication, license key generation, and configuration automatically.
User Story
As a Finmars Workspace user, I want to connect my workspace to my Finmars ID account by clicking a single button, so that I can authorize the connection seamlessly without manually generating and pasting a license key.
Acceptance Criteria
Given a user is on the Workspace's "Default Settings" page and is not yet connected to Finmars ID.
Then they should see a button with the text "Connect to Finmars ID".
And the license key field should be read-only.
All the services that are dependent on license key - such as Marketplace, Unified DB and others - in case no key is provided should clearly give a message: "No license key provided" and then for common users "contact your admin" and for admins - the same button "Connect Finmars ID"
[opt.] Maybe we should put this button just on top of the page - near the user profile icon, but it should be available ONLY for Workspace Admins.
Given the user clicks the "Connect to Finmars ID" button.
When they are redirected to the Finmars ID login/signup page.
And they successfully log in or create an account.
Then a new license key should be automatically generated for their Workspace instance on the Finmars ID side.
And they should be automatically redirected back to the Finmars Workspace settings page.
And the Workspace must automatically receive and save the new license key in the settings.
And the button's state and text must change to "Connected to: [user's Finmars ID]" (e.g., "Connected to: user@example.com"). The user's ID/email should be fetched during the process.
Given the user's Workspace is already connected to Finmars ID.
When they click the "Connected to: [user's Finmars ID]" button.
Then the stored license key must be erased from the Workspace settings.
And the button should revert to its initial state with the text "Connect to Finmars ID".
And the connection should be considered terminated.
Given a user initiates the connection flow.
If the authentication at Finmars ID fails, the user should remain on the Finmars ID page to retry.
If the callback to Workspace fails or the key is not received correctly, the Workspace should display a clear error notification (e.g., "Connection failed. Please try again.") and the button should revert to its initial "Connect" state.
@falendary commented on GitHub (Jul 23, 2025):
Fixed in https://github.com/finmars-platform/finmars-vue-portal/pull/20