Code Monkey home page Code Monkey logo

ssp's Introduction

SAMPSSP

Some of the APIs used in this sample are not Win32 APIs.  They are
specific APIs for Security Providers.

This sample demonstrates the implementation of a Windows NT
Security Support Provider. Security Support Providers (SSPs) are 
DLLs that implement one or more security protocols for authentication
and data security. Several SSPs are provided with Microsoft 
Operating Systems that allow applications to use the most common
security protocols (NTLM, Kerberos, SSL, etc) without having to 
implement their own provider.

If an application developer needs to implement his own security
protocol, than they may want to leverage the SSP Interface (SSPI)
and write their own Provider. The developer should carefully review
the documentation on the Platform SDK for SSPI and SSPs before
attempting to implement their own Provider.

NOTE: This sample does not use any kind of "real" credentials, or
implement a certain security protocol. The purpose of the sample
is merely to demonstrate the interface, prove the concept, and 
possibly to serve as a framework for a new package. It is expected 
that a real provider would create\provide credentials based on 
some security framework not implemented by Windows NT.

This authentication package can be used with the SOCKAUTH sample
with some minor modifications so that it requests this 
authentication package specifically.

To invoke the sample package, copy the DLL to the %systemroot%\system32
directory and make the following changes to the SOCKAUTH security.c
file:

// Make security.c unicode (before the #includes)
#define UNICODE

// replace the #defines with: 
wchar_t NT_DLL_NAME[12] = L"sampssp.dll";
wchar_t PACKAGE_NAME[12] = L"SAMPSSP";
wchar_t TOKEN_SOURCE_NAME[12] = L"AuthSamp";

// In InitPackage function
   pInit = GetProcAddress (g_hLib, "InitSecurityInterfaceW");


ssp's People

Contributors

pan-m avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.