snapshot of https://github.com/RocketChat/Rocket.Chat.git (develop, 2026-09-16; blobs > 131072B omitted)
Some checks failed
Create issues from TODOs / todos (push) Failing after 3s
Close inactive issues / close-issues (push) Has been cancelled
Deploy GitHub Pages / deploy-preview (push) Has been cancelled
CI / ⚙️ Variables Setup (push) Has been cancelled
CI / ⚙️ Test Guard (push) Has been cancelled
CI / 🚀 Notify external services - draft (push) Has been cancelled
CI / 📦 Build Packages (push) Has been cancelled
CI / 📦 Meteor Build (coverage) (push) Has been cancelled
CI / 📦 Meteor Build (production) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [account-service presence-service omnichannel-transcript-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [account-service presence-service omnichannel-transcript-service], fips) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [authorization-service queue-worker-service ddp-streamer-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [authorization-service queue-worker-service ddp-streamer-service], fips) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], coverage) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], fips) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [account-service presence-service omnichannel-transcript-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [authorization-service queue-worker-service ddp-streamer-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [rocketchat], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [rocketchat], coverage) (push) Has been cancelled
CI / 🚢 Publish Docker Images (ghcr.io) (push) Has been cancelled
CI / 📦 Track Image Sizes (push) Has been cancelled
CI / 🔎 Code Check - Action Lint (push) Has been cancelled
CI / 🔎 Code Check (push) Has been cancelled
CI / 🔨 Test Storybook (push) Has been cancelled
CI / 🔨 Test Unit (push) Has been cancelled
CI / 🔨 Test API (CE) (push) Has been cancelled
CI / 🔨 Test API Livechat (CE) (push) Has been cancelled
CI / 🔨 Test UI (CE) (push) Has been cancelled
CI / 🔨 Test API (EE) (push) Has been cancelled
CI / 🔨 Test API Livechat (EE) (push) Has been cancelled
CI / 🔨 Test API Apps (deno-runtime - EE) (push) Has been cancelled
CI / 🔨 Test UI (EE) (push) Has been cancelled
CI / 🔨 Test API (FIPS) (push) Has been cancelled
CI / 🔨 Test API Livechat (FIPS) (push) Has been cancelled
CI / 🔨 Test UI (FIPS) (push) Has been cancelled
CI / 🔨 Test Federation Matrix (push) Has been cancelled
CI / 📊 Report Coverage (push) Has been cancelled
CI / ✅ Tests Done (push) Has been cancelled
CI / 🚀 Publish build assets (push) Has been cancelled
CI / 🚀 Publish Docker Images (DockerHub) (push) Has been cancelled
CI / 🚀 Notify external services (push) Has been cancelled
CI / Update Version Durability (push) Has been cancelled
Release / Release (push) Has been cancelled
Auto-close duplicate issues / auto-close-duplicates (push) Failing after 1s
Code scanning - action / CodeQL-Build (push) Failing after 1s
Some checks failed
Create issues from TODOs / todos (push) Failing after 3s
Close inactive issues / close-issues (push) Has been cancelled
Deploy GitHub Pages / deploy-preview (push) Has been cancelled
CI / ⚙️ Variables Setup (push) Has been cancelled
CI / ⚙️ Test Guard (push) Has been cancelled
CI / 🚀 Notify external services - draft (push) Has been cancelled
CI / 📦 Build Packages (push) Has been cancelled
CI / 📦 Meteor Build (coverage) (push) Has been cancelled
CI / 📦 Meteor Build (production) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [account-service presence-service omnichannel-transcript-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [account-service presence-service omnichannel-transcript-service], fips) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [authorization-service queue-worker-service ddp-streamer-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [authorization-service queue-worker-service ddp-streamer-service], fips) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], coverage) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], fips) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [account-service presence-service omnichannel-transcript-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [authorization-service queue-worker-service ddp-streamer-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [rocketchat], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [rocketchat], coverage) (push) Has been cancelled
CI / 🚢 Publish Docker Images (ghcr.io) (push) Has been cancelled
CI / 📦 Track Image Sizes (push) Has been cancelled
CI / 🔎 Code Check - Action Lint (push) Has been cancelled
CI / 🔎 Code Check (push) Has been cancelled
CI / 🔨 Test Storybook (push) Has been cancelled
CI / 🔨 Test Unit (push) Has been cancelled
CI / 🔨 Test API (CE) (push) Has been cancelled
CI / 🔨 Test API Livechat (CE) (push) Has been cancelled
CI / 🔨 Test UI (CE) (push) Has been cancelled
CI / 🔨 Test API (EE) (push) Has been cancelled
CI / 🔨 Test API Livechat (EE) (push) Has been cancelled
CI / 🔨 Test API Apps (deno-runtime - EE) (push) Has been cancelled
CI / 🔨 Test UI (EE) (push) Has been cancelled
CI / 🔨 Test API (FIPS) (push) Has been cancelled
CI / 🔨 Test API Livechat (FIPS) (push) Has been cancelled
CI / 🔨 Test UI (FIPS) (push) Has been cancelled
CI / 🔨 Test Federation Matrix (push) Has been cancelled
CI / 📊 Report Coverage (push) Has been cancelled
CI / ✅ Tests Done (push) Has been cancelled
CI / 🚀 Publish build assets (push) Has been cancelled
CI / 🚀 Publish Docker Images (DockerHub) (push) Has been cancelled
CI / 🚀 Notify external services (push) Has been cancelled
CI / Update Version Durability (push) Has been cancelled
Release / Release (push) Has been cancelled
Auto-close duplicate issues / auto-close-duplicates (push) Failing after 1s
Code scanning - action / CodeQL-Build (push) Failing after 1s
This commit is contained in:
16
apps/meteor/server/lib/saml/definition/IAttributeMapping.ts
Normal file
16
apps/meteor/server/lib/saml/definition/IAttributeMapping.ts
Normal file
@@ -0,0 +1,16 @@
|
||||
export interface IAttributeMapping {
|
||||
fieldName: string | Array<string>;
|
||||
regex?: string;
|
||||
template?: string;
|
||||
}
|
||||
|
||||
export interface IUserDataMap {
|
||||
attributeList: Set<string>;
|
||||
identifier: {
|
||||
type: string;
|
||||
attribute?: string;
|
||||
};
|
||||
email: IAttributeMapping;
|
||||
username: IAttributeMapping;
|
||||
name: IAttributeMapping;
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
export interface IAuthorizeRequestVariables extends Record<string, string> {
|
||||
newId: string;
|
||||
instant: string;
|
||||
callbackUrl: string;
|
||||
entryPoint: string;
|
||||
issuer: string;
|
||||
identifierFormat: string;
|
||||
authnContextComparison: string;
|
||||
authnContext: string;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
export interface ILogoutRequestVariables extends Record<string, string> {
|
||||
newId: string;
|
||||
instant: string;
|
||||
idpSLORedirectURL: string;
|
||||
issuer: string;
|
||||
identifierFormat: string;
|
||||
nameID: string;
|
||||
sessionIndex: string;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
export interface ILogoutResponse {
|
||||
id: string;
|
||||
response: string;
|
||||
inResponseToId: string;
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
export interface ILogoutResponseVariables extends Record<string, string> {
|
||||
newId: string;
|
||||
instant: string;
|
||||
idpSLORedirectURL: string;
|
||||
issuer: string;
|
||||
identifierFormat: string;
|
||||
nameID: string;
|
||||
sessionIndex: string;
|
||||
inResponseToId: string;
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
export interface IMetadataVariables extends Record<string, string> {
|
||||
issuer: string;
|
||||
certificate: string;
|
||||
identifierFormat: string;
|
||||
callbackUrl: string;
|
||||
sloLocation: string;
|
||||
}
|
||||
5
apps/meteor/server/lib/saml/definition/ISAMLAction.ts
Normal file
5
apps/meteor/server/lib/saml/definition/ISAMLAction.ts
Normal file
@@ -0,0 +1,5 @@
|
||||
export interface ISAMLAction {
|
||||
actionName: string;
|
||||
serviceName: string;
|
||||
credentialToken: string;
|
||||
}
|
||||
4
apps/meteor/server/lib/saml/definition/ISAMLAssertion.ts
Normal file
4
apps/meteor/server/lib/saml/definition/ISAMLAssertion.ts
Normal file
@@ -0,0 +1,4 @@
|
||||
export interface ISAMLAssertion {
|
||||
assertion: Element;
|
||||
xml: string;
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
export interface ISAMLGlobalSettings {
|
||||
generateUsername: boolean;
|
||||
nameOverwrite: boolean;
|
||||
mailOverwrite: boolean;
|
||||
immutableProperty: string;
|
||||
defaultUserRole: string;
|
||||
userDataFieldMap: string;
|
||||
usernameNormalize: string;
|
||||
channelsAttributeUpdate: boolean;
|
||||
includePrivateChannelsInUpdate: boolean;
|
||||
}
|
||||
4
apps/meteor/server/lib/saml/definition/ISAMLRequest.ts
Normal file
4
apps/meteor/server/lib/saml/definition/ISAMLRequest.ts
Normal file
@@ -0,0 +1,4 @@
|
||||
export interface ISAMLRequest {
|
||||
id: string;
|
||||
request: string;
|
||||
}
|
||||
22
apps/meteor/server/lib/saml/definition/ISAMLUser.ts
Normal file
22
apps/meteor/server/lib/saml/definition/ISAMLUser.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
export interface ISAMLUser {
|
||||
emailList: Array<string>;
|
||||
fullName: string | null;
|
||||
roles?: Array<string>;
|
||||
eppn: string | null;
|
||||
|
||||
username?: string;
|
||||
language?: string;
|
||||
channels?: Array<string>;
|
||||
samlLogin: {
|
||||
provider: string | null;
|
||||
idp: string;
|
||||
idpSession: string;
|
||||
nameID: string;
|
||||
};
|
||||
|
||||
attributeList: Map<string, any>;
|
||||
identifier: {
|
||||
type: string;
|
||||
attribute?: string;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
import type { SAMLSignatureAlgorithm } from '@rocket.chat/core-typings';
|
||||
|
||||
export interface IServiceProviderOptions {
|
||||
provider: string;
|
||||
entryPoint: string;
|
||||
idpSLORedirectURL: string;
|
||||
issuer: string;
|
||||
cert: string;
|
||||
privateCert: string;
|
||||
privateKey: string;
|
||||
signatureAlgorithm: SAMLSignatureAlgorithm;
|
||||
customAuthnContext: string;
|
||||
authnContextComparison: string;
|
||||
defaultUserRole: string;
|
||||
allowedClockDrift: number;
|
||||
signatureValidationType: string;
|
||||
validateLogoutRequestSignature: boolean;
|
||||
validateLogoutResponseSignature: boolean;
|
||||
identifierFormat: string;
|
||||
nameIDPolicyTemplate: string;
|
||||
authnContextTemplate: string;
|
||||
authRequestTemplate: string;
|
||||
logoutResponseTemplate: string;
|
||||
logoutRequestTemplate: string;
|
||||
metadataCertificateTemplate: string;
|
||||
metadataTemplate: string;
|
||||
callbackUrl: string;
|
||||
}
|
||||
43
apps/meteor/server/lib/saml/definition/SAMLEnvelope.ts
Normal file
43
apps/meteor/server/lib/saml/definition/SAMLEnvelope.ts
Normal file
@@ -0,0 +1,43 @@
|
||||
// Other binding values are not supported: HTTP-Artifact, URI, SOAP, PAOS
|
||||
export type SAMLBinding = 'HTTP-Redirect' | 'HTTP-POST';
|
||||
|
||||
export type SAMLDocumentType = 'SAMLRequest' | 'SAMLResponse';
|
||||
|
||||
export type SAMLBaseEnvelope<T extends SAMLDocumentType = SAMLDocumentType> = {
|
||||
binding: SAMLBinding;
|
||||
/**
|
||||
* encodedDocument is the document in the exact format we received it
|
||||
* */
|
||||
encodedDocument: string;
|
||||
/**
|
||||
* decodedDocument is the raw XML file; processed according to the binding specification
|
||||
* */
|
||||
decodedDocument: string;
|
||||
type: T;
|
||||
relayState?: string;
|
||||
};
|
||||
|
||||
/**
|
||||
* HTTP-Redirect envelope
|
||||
* For this binding, the document must be a Deflated XML file that is then base64 encoded
|
||||
**/
|
||||
export type SAMLRedirectEnvelope<T extends SAMLDocumentType = SAMLDocumentType> = SAMLBaseEnvelope<T> & {
|
||||
binding: 'HTTP-Redirect';
|
||||
sigAlg?: string;
|
||||
signature?: string;
|
||||
|
||||
/**
|
||||
* signedContent is the complete string value that must be matched by the signature
|
||||
* */
|
||||
signedContent?: string;
|
||||
};
|
||||
|
||||
/**
|
||||
* HTTP-POST envelope
|
||||
* For this binding, the document must be a regular XML file that is base64 encoded
|
||||
**/
|
||||
export type SAMLPOSTEnvelope<T extends SAMLDocumentType = SAMLDocumentType> = SAMLBaseEnvelope<T> & {
|
||||
binding: 'HTTP-POST';
|
||||
};
|
||||
|
||||
export type SAMLEnvelope<T extends SAMLDocumentType = SAMLDocumentType> = SAMLRedirectEnvelope<T> | SAMLPOSTEnvelope<T>;
|
||||
11
apps/meteor/server/lib/saml/definition/callbacks.ts
Normal file
11
apps/meteor/server/lib/saml/definition/callbacks.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
export interface ILogoutRequestValidateCallback {
|
||||
(err: string | object | null, data?: Record<string, string | null> | null): Promise<void>;
|
||||
}
|
||||
|
||||
export interface ILogoutResponseValidateCallback {
|
||||
(err: string | object | null, inResponseTo?: string | null): Promise<void>;
|
||||
}
|
||||
|
||||
export interface IResponseValidateCallback {
|
||||
(err: string | object | null, profile?: Record<string, any> | null, loggedOut?: boolean): void;
|
||||
}
|
||||
Reference in New Issue
Block a user