@accelerated-software-development/caddy-api-client - v0.4.3
    Preparing search index...

    Interface BuildSecurityConfigOptions

    Options for building a security configuration

    interface BuildSecurityConfigOptions {
        identityProviders?: (
            | {
                kind: "oauth";
                name: string;
                params: {
                    authorization_url?: string;
                    client_id?: string;
                    client_secret?: string;
                    driver?: string;
                    realm?: string;
                    scopes?: string[];
                    token_url?: string;
                };
            }
            | {
                kind: "oauth";
                name: string;
                params: {
                    client_id?: string;
                    client_secret?: string;
                    driver?: string;
                    metadata_url?: string;
                    realm?: string;
                    scopes?: string[];
                };
            }
        )[];
        identityStores?: (
            | {
                kind: "local";
                name: string;
                params: { path: string; realm?: string };
            }
            | {
                kind: "ldap";
                name: string;
                params: {
                    bind_password?: string;
                    bind_username?: string;
                    groups?: { dn: string; roles?: (...)[] }[];
                    realm?: string;
                    search_base_dn?: string;
                    search_user_filter?: string;
                    servers?: { address: string; port?: number }[];
                } & { [k: string]: unknown };
            }
        )[];
        policies?: {
            access_list_rules?: {
                action?: "allow"
                | "deny";
                comment?: string;
                conditions?: string[];
            }[];
            bypass_configs?: { match_type: string; uri?: string }[];
            crypto_key_configs?: { source?: string; token_name?: string }[];
            name: string;
        }[];
        portals?: {
            cookie_config?: {
                domains?: Record<
                    string,
                    { insecure?: boolean; lifetime?: number; same_site?: string },
                >;
                insecure?: boolean;
                lifetime?: number;
                path?: string;
                same_site?: string;
            };
            identity_providers?: string[];
            identity_stores?: string[];
            name: string;
            ui?: { custom_css?: string; logo_url?: string; theme?: string };
            user_transformer_configs?: Record<string, unknown>[];
        }[];
    }
    Index

    Properties

    identityProviders?: (
        | {
            kind: "oauth";
            name: string;
            params: {
                authorization_url?: string;
                client_id?: string;
                client_secret?: string;
                driver?: string;
                realm?: string;
                scopes?: string[];
                token_url?: string;
            };
        }
        | {
            kind: "oauth";
            name: string;
            params: {
                client_id?: string;
                client_secret?: string;
                driver?: string;
                metadata_url?: string;
                realm?: string;
                scopes?: string[];
            };
        }
    )[]

    Identity providers

    identityStores?: (
        | {
            kind: "local";
            name: string;
            params: { path: string; realm?: string };
        }
        | {
            kind: "ldap";
            name: string;
            params: {
                bind_password?: string;
                bind_username?: string;
                groups?: { dn: string; roles?: (...)[] }[];
                realm?: string;
                search_base_dn?: string;
                search_user_filter?: string;
                servers?: { address: string; port?: number }[];
            } & { [k: string]: unknown };
        }
    )[]

    Identity stores

    policies?: {
        access_list_rules?: {
            action?: "allow" | "deny";
            comment?: string;
            conditions?: string[];
        }[];
        bypass_configs?: { match_type: string; uri?: string }[];
        crypto_key_configs?: { source?: string; token_name?: string }[];
        name: string;
    }[]

    Authorization policies (gatekeepers)

    portals?: {
        cookie_config?: {
            domains?: Record<
                string,
                { insecure?: boolean; lifetime?: number; same_site?: string },
            >;
            insecure?: boolean;
            lifetime?: number;
            path?: string;
            same_site?: string;
        };
        identity_providers?: string[];
        identity_stores?: string[];
        name: string;
        ui?: { custom_css?: string; logo_url?: string; theme?: string };
        user_transformer_configs?: Record<string, unknown>[];
    }[]

    Authentication portals