{"version":3,"sources":["../../../packages/core/rpc/credssp/rpc-credssp-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;GAEG;AACH,qBAAa,oBAAoB;IAC7B,OAAc,OAAO,SAAoB;IACzC,OAAc,OAAO,SAAW;CACnC;AAED;;GAEG;AACH,qBAAa,qBAAqB;IAC9B,OAAc,OAAO,SAAa;IAClC,OAAc,OAAO,SAAW;CACnC;AAED,MAAM,WAAW,uBAAuB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,8BAA8B,EAAE,OAAO,CAAC;CAC3C;AAED,MAAM,WAAW,uBAAuB;IACpC,+BAA+B,EAAE,OAAO,CAAC;IACzC,+BAA+B,EAAE,OAAO,CAAC;IACzC,2CAA2C,EAAE,OAAO,CAAC;IACrD,uCAAuC,EAAE,MAAM,EAAE,CAAC;IAClD,mDAAmD,EAAE,MAAM,EAAE,CAAC;IAC9D,qBAAqB,EAAE,MAAM,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAChC,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,OAAO,CAAC,EAAE,uBAAuB,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,4BAA4B;IACzC;;OAEG;IACH,gCAAgC,EAAE,MAAM,CAAC;IAEzC;;OAEG;IACH,iBAAiB,EAAE,kBAAkB,CAAC;CACzC;AAED;;GAEG;AACH,oBAAY,uBAAuB;IAC/B;;OAEG;IACH,mBAAmB,IAAI;IAEvB;;OAEG;IACH,oBAAoB,IAAI;IAExB;;OAEG;IACH,gBAAgB,IAAI;IAEpB;;OAEG;IACH,iBAAiB,IAAI;IAErB;;;OAGG;IACH,gBAAgB,IAAI;IAEpB;;;OAGG;IACH,WAAW,IAAI;IAEf;;;OAGG;IACH,0BAA0B,IAAI;IAE9B;;OAEG;IACH,iCAAiC,IAAI;IAErC;;;OAGG;IACH,iBAAiB,IAAI;IACrB;;;;OAIG;IACH,+BAA+B,IAAI;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACpD;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,uBAAuB,CAAC;IAEnC;;;OAGG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,IAAI,CAAC,EAAE,4BAA4B,CAAC;IAEpC;;OAEG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED;;GAEG;AACH,oBAAY,+BAA+B;IACvC;;OAEG;IACH,SAAS,cAAc;IAEvB;;OAEG;IACH,mBAAmB,wBAAwB;IAE3C;;OAEG;IACH,IAAI,SAAS;CAChB","file":"rpc-credssp-model.d.ts","sourcesContent":["import { NodeRequestOptions } from '../../data/node-connection';\r\nimport { RpcBaseData } from '../rpc-base';\r\n\r\n/**\r\n * CredSSP request Rpc call name and version.\r\n */\r\nexport class RpcCredSspRequestKey {\r\n    public static command = 'CredSspRequest';\r\n    public static version = '0.1.0';\r\n}\r\n\r\n/**\r\n * CredSSP response Rpc call name and version\r\n */\r\nexport class RpcCredSspResponseKey {\r\n    public static command = 'CredSsp';\r\n    public static version = '0.1.0';\r\n}\r\n\r\nexport interface ServerRoleConfiguration {\r\n    ServerName: string;\r\n    IsServerConfiguredAsServerRole: boolean;\r\n}\r\n\r\nexport interface ClientRoleConfiguration {\r\n    IsGatewayConfiguredAsClientRole: boolean;\r\n    AllowFreshCredentialsKeyPresent: boolean;\r\n    AllowFreshCredentialsWhenNTLMOnlyKeyPresent: boolean;\r\n    AllowFreshCredentialsDelegatableServers: string[];\r\n    AllowFreshCredentialsWhenNTLMOnlyDelegatableServers: string[];\r\n    NotDelegatableServers: string[];\r\n}\r\n\r\nexport interface ConfigurationStatus {\r\n    client?: ClientRoleConfiguration;\r\n    servers?: ServerRoleConfiguration[];\r\n}\r\n\r\nexport interface GatewayLocalPowerShellConfig {\r\n    /**\r\n     * Server configured for executing cluster operations.\r\n     */\r\n    configuredServerConnectionString: string;\r\n\r\n    /**\r\n     * PowerShell session options to run with cluster operations.\r\n     */\r\n    powerShellOptions: NodeRequestOptions;\r\n}\r\n\r\n/**\r\n * Identifies the CredSSP operation type to preform\r\n */\r\nexport enum RpcCredSSPOperationType {\r\n    /**\r\n     * Enable CredSSP Server role on the managed server.\r\n     */\r\n    EnableManagedServer = 0,\r\n\r\n    /**\r\n     * Disable CredSSP Server role on the managed server.\r\n     */\r\n    DisableManagedServer = 1,\r\n\r\n    /**\r\n     * Enable CredSSP client role on the gateway and delegate to the list ot servers.\r\n     */\r\n    EnableClientRole = 2,\r\n\r\n    /**\r\n     * Disable CredSSP client role on the gateway and remove all delegated servers.\r\n     */\r\n    DisableClientRole = 3,\r\n\r\n    /**\r\n     * Enable CredSSP Server role on the managed server, and enable the gateway to\r\n     * delegate to the managed server.\r\n     */\r\n    EnableDelegation = 4,\r\n\r\n    /**\r\n     *  Test that CredSSP connection from gateway to server(s) is enabled. To function as verification mechanism\r\n     *  that CredSSP is bound to work.\r\n     */\r\n    TestCredSSP = 5,\r\n\r\n    /**\r\n     * Confirm the CredSSP client configuration on the gateway machine and the list of servers\r\n     * that can be delegated fresh credentials from the gateway.\r\n     */\r\n    ConfirmClientConfiguration = 6,\r\n\r\n    /**\r\n     * Confirm the CredSSP server configuration on the managed server.\r\n     */\r\n    ConfirmManagedServerConfiguration = 7,\r\n\r\n    /**\r\n     * Confirm the CredSSP client configuration on the gateway, and confirm the CredSSP server\r\n     * configuration to the managed server.\r\n     */\r\n    ConfirmDelegation = 8,\r\n    /**\r\n     * Configure CredSSP server role on a given server and enable gateway to delegate to managed server\r\n     * if gateway machine is not given. Otherwise, do nothing. Return configured server name and\r\n     * PowerShell options needed for proceeding invoke PowerShell calls.\r\n     */\r\n    TryGatewayLocalPowerShellConfig = 9\r\n}\r\n\r\n/**\r\n * Explicit credentials i.e username andd password\r\n */\r\nexport interface Credentials {\r\n    username: string;\r\n    password: string;\r\n}\r\n\r\n/**\r\n * CredSSP Manager operation/action RPC message.\r\n */\r\nexport interface RpcCredSSPOperation extends RpcBaseData {\r\n    /**\r\n     * Request specific Id to track completion.\r\n     */\r\n    requestId: string;\r\n\r\n    /**\r\n     * Type of CredSSP operation to perform\r\n     */\r\n    operation: RpcCredSSPOperationType;\r\n\r\n    /**\r\n     * @deprecated\r\n     * The contextual scenario title to be used when showing notifications.\r\n     */\r\n    notificationTitle: string;\r\n\r\n    /**\r\n     * The server names to use in this request.  Can be a single server for role server\r\n     * or a list of servers for role client.\r\n     */\r\n    serverNames: string[];\r\n\r\n    /***\r\n     * Authentication options, need the username and password here\r\n     */\r\n    credentials?: Credentials;\r\n\r\n    /**\r\n     * @deprecated\r\n     * Optional notification Id to be used when showing notifications.  This will allow notifications\r\n     * from the caller and from CredSSP to be merged in the notification center.\r\n     */\r\n    notificationId?: string;\r\n}\r\n\r\n/**\r\n * CredSSP Manager operation/action RPC message result.\r\n */\r\nexport interface RpcCredSSPOperationResult {\r\n    /**\r\n     * Request specific Id to track completion.\r\n     */\r\n    requestId: string;\r\n\r\n    /**\r\n     * Did the requested operation succeed or not?\r\n     */\r\n    succeeded: boolean;\r\n\r\n    /**\r\n     * Error message if any.\r\n     */\r\n    error?: string;\r\n\r\n    /**\r\n     * Solution to error if any.\r\n     */\r\n    solutionMessage?: string;\r\n\r\n    /**\r\n     * Data to return if any.\r\n     */\r\n    data?: GatewayLocalPowerShellConfig;\r\n\r\n    /**\r\n     * CredSSP configuration information of the client/server.\r\n     */\r\n    configurationStatus?: ConfigurationStatus;\r\n}\r\n\r\n/**\r\n * CredSSP operation result returnable members.\r\n */\r\nexport enum RpcCredSSPOperationResultMember {\r\n    /**\r\n     * \"Succeeded\" member of operation result interface.\r\n     */\r\n    Succeeded = 'succeeded',\r\n\r\n    /**\r\n     * \"configurationData\" member of operation result interface.\r\n     */\r\n    ConfigurationStatus = 'configurationStatus',\r\n\r\n    /**\r\n     * \"data\" member of operation result interface.\r\n     */\r\n    Data = 'data'\r\n}\r\n"]}