| name | sf-auth |
| description | Authentication commands for connecting to Salesforce orgs. Includes Web Login, JWT, SFDX-URL, and Access Token flows. |
sf Authentication
Authentication commands for connecting to Salesforce orgs.
sf org login web
Login using web browser (OAuth flow).
sf org login web --alias myProdOrg --instance-url https://login.salesforce.com
sf org login web --alias mySandbox --instance-url https://test.salesforce.com
sf org login web --alias myOrg --set-default
sf org login web --alias myOrg --client-id <consumer-key>
sf org login web --alias myOrg --no-prompt
Flags
| Flag | Description |
|---|
-a, --alias | Alias for the authenticated org |
-d, --set-default | Set as default org |
-r, --instance-url | Salesforce instance URL |
-i, --client-id | OAuth client ID (connected app) |
--no-prompt | Don't prompt for opening browser |
sf org login jwt
Login using JWT bearer token (for CI/CD and automation).
sf org login jwt --client-id <connected-app-client-id> \
--jwt-key-file path/to/server.key \
--username <salesforce-username> \
--alias myCiOrg
sf org login jwt --client-id <client-id> \
--jwt-key-file server.key \
--username user@sandbox.com \
--alias sandboxOrg \
--instance-url https://test.salesforce.com
sf org login jwt --client-id <client-id> \
--jwt-key-file server.key \
--username <username> \
--alias devOrg \
--set-default \
--set-default-dev-hub
Prerequisites for JWT Auth
- Create a Connected App with OAuth settings
- Generate a digital certificate (private key)
- Upload certificate to Connected App
- Enable OAuth settings with
api, web, refresh_token, offline_access scopes
Flags
| Flag | Description |
|---|
-i, --client-id | OAuth client ID of connected app |
-f, --jwt-key-file | Path to private key file |
-u, --username | Salesforce username |
-a, --alias | Alias for the org |
-r, --instance-url | Instance URL (default: login.salesforce.com) |
-d, --set-default | Set as default username |
--set-default-dev-hub | Set as default Dev Hub |
sf org login sfdx-url
Login using SFDX auth URL (for CI/CD automation).
sf org login sfdx-url --sfdx-url-file auth-url.txt --alias myOrg
echo "force://clientId:clientSecret:refreshToken@instanceUrl" | sf org login sfdx-url --stdin --alias myOrg
Generate Auth URL
sf org display --target-org myOrg --verbose
sf org login access-token --auth-url "force://..." --alias myOrg
sf org login device
Login using device code flow (for headless environments).
sf org login device --alias myOrg
sf org login access-token
Authorize an org using an existing Salesforce access token.
sf org login access-token --instance-url https://mycompany.my.salesforce.com
export SF_ACCESS_TOKEN="<your-access-token>"
sf org login access-token --instance-url https://dev-hub.my.salesforce.com --no-prompt
sf org login access-token --instance-url https://myorg.my.salesforce.com \
--alias myOrg --set-default
sf org login access-token --instance-url https://myorg.my.salesforce.com \
--alias devHub --set-default-dev-hub
Flags
| Flag | Description |
|---|
-a, --alias | Alias for the org |
-d, --set-default-dev-hub | Set as default Dev Hub |
-p, --no-prompt | Don't prompt for confirmation |
-r, --instance-url | URL of the instance (required) |
-s, --set-default | Set as default org |
CI/CD Usage
For CI/CD pipelines, set the SF_ACCESS_TOKEN environment variable and use --no-prompt:
export SF_ACCESS_TOKEN="${{ secrets.SF_ACCESS_TOKEN }}"
sf org login access-token --instance-url https://login.salesforce.com --no-prompt