mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
(core) Revamp ForwardAuthLogin and unify with GRIST_PROXY_AUTH_HEADER
Summary: By default, only respect GRIST_FORWARD_AUTH_HEADER on login endpoints; sessions are used elsewhere. With GRIST_IGNORE_SESSION, do not use sessions, and respect GRIST_FORWARD_AUTH_HEADER on all endpoints. GRIST_PROXY_AUTH_HEADER is now a synonym to GRIST_FORWARD_AUTH_HEADER. Test Plan: Fixed tests. Tested first approach (no GRIST_IGNORE_SESSION) with grist-omnibus manually. Tested the second approach (with GRIST_IGNORE_SESSION) with a Apache-based setup enforcing http basic auth on all endpoints. Reviewers: paulfitz, georgegevoian Reviewed By: paulfitz, georgegevoian Differential Revision: https://phab.getgrist.com/D4104
This commit is contained in:
@@ -78,7 +78,10 @@ describe('Authorizer', function() {
|
||||
this.timeout(5000);
|
||||
setUpDB(this);
|
||||
oldEnv = new testUtils.EnvironmentSnapshot();
|
||||
// GRIST_PROXY_AUTH_HEADER now only affects requests directly when GRIST_IGNORE_SESSION is
|
||||
// also set.
|
||||
process.env.GRIST_PROXY_AUTH_HEADER = 'X-email';
|
||||
process.env.GRIST_IGNORE_SESSION = 'true';
|
||||
await createInitialDb();
|
||||
await activateServer(server, docTools.getDocManager());
|
||||
await loadFixtureDocs();
|
||||
@@ -185,7 +188,9 @@ describe('Authorizer', function() {
|
||||
const applyUserActions = await cli.send("applyUserActions",
|
||||
0,
|
||||
[["UpdateRecord", "Table1", 1, {A: nonce}]]);
|
||||
assert.lengthOf(cli.messages, 1); // user actions pushed to client
|
||||
// Skip messages with no actions (since docUsage may or may not appear by now)
|
||||
const messagesWithActions = cli.messages.filter(m => m.data.docActions);
|
||||
assert.lengthOf(messagesWithActions, 1); // user actions pushed to client
|
||||
assert.equal(applyUserActions.error, undefined);
|
||||
const fetchTable = await cli.send("fetchTable", 0, "Table1");
|
||||
assert.equal(fetchTable.error, undefined);
|
||||
|
||||
Reference in New Issue
Block a user