@boxyhq/saml-jackson 0.3.6-beta.570 → 0.3.6-beta.585
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/controller/oauth.js
CHANGED
@@ -133,13 +133,27 @@ class OAuthController {
|
|
133
133
|
code_challenge,
|
134
134
|
code_challenge_method,
|
135
135
|
});
|
136
|
-
|
137
|
-
const
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
136
|
+
const relayState = relayStatePrefix + sessionId;
|
137
|
+
const { sso } = samlConfig.idpMetadata;
|
138
|
+
let redirectUrl = '';
|
139
|
+
let authorizeForm = '';
|
140
|
+
// HTTP redirect binding
|
141
|
+
if ('redirectUrl' in sso) {
|
142
|
+
const samlReqEnc = yield deflateRawAsync(samlReq.request);
|
143
|
+
redirectUrl = redirect.success(sso.redirectUrl, {
|
144
|
+
RelayState: relayState,
|
145
|
+
SAMLRequest: Buffer.from(samlReqEnc).toString('base64'),
|
146
|
+
});
|
147
|
+
}
|
148
|
+
// HTTP POST binding
|
149
|
+
if ('postUrl' in sso) {
|
150
|
+
const samlReqEnc = Buffer.from(samlReq.request).toString('base64');
|
151
|
+
authorizeForm = (0, utils_1.createAuthorizeForm)(relayState, samlReqEnc, sso.postUrl);
|
152
|
+
}
|
153
|
+
return {
|
154
|
+
redirect_url: redirectUrl,
|
155
|
+
authorize_form: authorizeForm,
|
156
|
+
};
|
143
157
|
});
|
144
158
|
}
|
145
159
|
samlResponse(body) {
|
package/dist/controller/utils.js
CHANGED
@@ -1,8 +1,32 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.IndexNames = void 0;
|
3
|
+
exports.createAuthorizeForm = exports.IndexNames = void 0;
|
4
4
|
var IndexNames;
|
5
5
|
(function (IndexNames) {
|
6
6
|
IndexNames["EntityID"] = "entityID";
|
7
7
|
IndexNames["TenantProduct"] = "tenantProduct";
|
8
8
|
})(IndexNames = exports.IndexNames || (exports.IndexNames = {}));
|
9
|
+
const createAuthorizeForm = (relayState, samlReqEnc, postUrl) => {
|
10
|
+
const formElements = [
|
11
|
+
'<!DOCTYPE html>',
|
12
|
+
'<html>',
|
13
|
+
'<head>',
|
14
|
+
'<meta charset="utf-8">',
|
15
|
+
'<meta http-equiv="x-ua-compatible" content="ie=edge">',
|
16
|
+
'</head>',
|
17
|
+
'<body onload="document.forms[0].submit()">',
|
18
|
+
'<noscript>',
|
19
|
+
'<p>Note: Since your browser does not support JavaScript, you must press the Continue button once to proceed.</p>',
|
20
|
+
'</noscript>',
|
21
|
+
'<form method="post" action="' + encodeURI(postUrl) + '">',
|
22
|
+
'<input type="hidden" name="RelayState" value="' + relayState + '"/>',
|
23
|
+
'<input type="hidden" name="SAMLRequest" value="' + samlReqEnc + '"/>',
|
24
|
+
'<input type="submit" value="Continue" />',
|
25
|
+
'</form>',
|
26
|
+
'<script>document.forms[0].style.display="none";</script>',
|
27
|
+
'</body>',
|
28
|
+
'</html>',
|
29
|
+
];
|
30
|
+
return formElements.join('');
|
31
|
+
};
|
32
|
+
exports.createAuthorizeForm = createAuthorizeForm;
|
package/dist/typings.d.ts
CHANGED