Główne nazwy usług (SPN) w połączeń klienta (OLE DB)

W tym temacie opisano właściwości OLE DB i funkcji element członkowski, które obsługują główne nazwy usługa (SPN) w klient aplikacji.Aby uzyskać więcej informacji dotyczących nazwy SPN w klient aplikacji, zobacz Obsługa głównej nazwy usługi (główna nazwa usługi) w połączeń klientów.

Słowa kluczowe ciąg inicjalizacji dostawcy

Następujące kluczowe ciąg inicjalizacji dostawca obsługuje nazwy SPN w aplikacji OLE DB.W poniższej tabela używane są wartości kolumna słowo kluczowe dostawca ciąg IDBInitialize::Initialize.Wartości kolumna Opis używanych w ciągów inicjacji podczas łączenia przy użyciu obiektu ADO lub IDataInitialize::GetDataSource.

Słowo kluczowe

Opis

Wartość

ServerSPN

Serwera główna nazwa usługi

Nazwy główna nazwa usługi serwera.Wartością domyślną jest ciąg pusty, co powoduje, że SQL Server Native Client, aby użyć domyślnego, generowane dostawca główna nazwa usługi.

FailoverPartnerSPN

Partner pracy awaryjnej główna nazwa usługi

Nazwa główna nazwa usługi partner pracy awaryjnej.Wartością domyślną jest ciąg pusty, co powoduje, że SQL Server Native Client, aby użyć domyślnego, generowane dostawca główna nazwa usługi.

Właściwości inicjowania źródła danych

Następujące właściwość w DBPROPSET_SQLSERVERDBINIT zestaw właściwość umożliwiają aplikacjom określić nazwy SPN.

Nazwa

Typ

Użycie

SSPROP_INIT_SERVERSPN

VT_BSTR, Odczyt i zapis

Określa nazwę główna nazwa usługi serwera.Wartością domyślną jest ciąg pusty, co powoduje, że SQL Server Native Client, aby użyć domyślnego, generowane dostawca główna nazwa usługi.

SSPROP_INIT_FAILOVERPARTNERSPN

VT_BSTR, Odczyt i zapis

Określa nazwę główna nazwa usługi partner pracy awaryjnej.Wartością domyślną jest ciąg pusty, co powoduje, że SQL Server Native Client, aby użyć domyślnego, generowane dostawca główna nazwa usługi.

Właściwości źródła danych

Następujące właściwość w DBPROPSET_SQLSERVERDATASOURCEINFO zestaw właściwość umożliwiają aplikacjom Odkryj metoda uwierzytelnianie.

Nazwa

Typ

Użycie

SSPROP_INTEGRATEDAUTHENTICATIONMETHOD

VT_BSTR tylko do odczytu

Zwraca metoda uwierzytelnianie używana dla połączenia.Wartość zwracana do aplikacji jest wartość, która zwraca Windows SQL Server macierzystego klienta.Możliwe wartości są następujące:

  • "NTLM", która jest zwracana, gdy połączenie jest otwarte przy użyciu uwierzytelnianie NTLM.

  • "Kerberos", która jest zwracana, gdy połączenie jest otwarte przy użyciu uwierzytelnianie Kerberos.

Jeśli połączenie zostało otwarte i uwierzytelnianie metoda nie może być ustalona, VT_EMPTY jest zwracany.

Ta właściwość mogą odczytywać tylko, gdy źródło danych został zainicjowany.Jeśli próba odczytu właściwość przed źródło danych został zainicjowany, IDBProperties::GetProperies zwróci DB_S_ERRORSOCCURRED lub DB_E_ERRORSOCCURRED, odpowiednio, i będzie DBPROPSTATUS_NOTSUPPORTED zestaw w DBPROPzestaw_PROPERTIESINERROR dla tej właściwość.To zachowanie jest zgodnie ze specyfikacją OLE DB core.

SSPROP_MUTUALLYAUTHENICATED

VT_BOOL, tylko do odczytu.

Zwraca VARIANT_TRUE, jeśli serwery połączenia wzajemnie zostały uwierzytelnione; w przeciwnym razie zwraca wartość VARIANT_FALSE.

Ta właściwość mogą odczytywać tylko, gdy źródło danych został zainicjowany.Jeśli próba odczytania właściwość przed źródło danych został zainicjowany, IDBProperties::GetProperies zwróci DB_S_ERRORSOCCURRED lub DB_E_ERRORSOCCURRED, odpowiednio, i będzie DBPROPSTATUS_NOTSUPPORTED zestaw w DBPROPzestaw_PROPERTIESINERROR dla tej właściwość.To zachowanie jest zgodnie ze specyfikacją OLE DB core

Jeśli ten atrybut jest badany pod kątem połączenie bez użycia uwierzytelniania systemu Windows, zwracany jest VARIANT_FALSE.

Obsługa interfejsu API OLE DB SPN

W poniższej tabela opisano funkcje element członkowski OLE DB, które obsługują nazwy SPN w klient połączenia:

Funkcja członka

Opis

IDataInitialize::GetDataSource

pwszInitializationStringmoże zawierać nowe słowa kluczowe ServerSPN i FailoverPartnerSPN.

IDataInitialize::GetInitializationString

Jeśli SSPROP_INIT_SERVERSPN i SSPROP_INIT_FAILOVERPARTNERSPN-do domyślnych wartości, zostaną uwzględnione w ciąg inicjującego przez ppwszInitString jako kluczowe wartości dla ServerSPN i FailoverPartnerSPN.W przeciwnym wypadku te słowa kluczowe nie zostaną uwzględnione w ciąg inicjującego.

IDBInitialize::Initialize

Jeśli monitowanie jest włączone ustawienie DBPROP_INIT_PROMPT danych źródło właściwości inicjujące, OLE DB logowania zostanie wyświetlone okno dialogowe.Dzięki temu SPN wprowadzone dla serwer dublowany i jego partner pracy awaryjnej.

Dostawca ciąg w DPPROP_INIT_PROVIDERSTRING, jeśli zestaw, rozpozna nowe słowa kluczowe ServerSPN i FailoverPartnerSPN i ich wartości, jeśli jest obecny, aby zainicjować SSPROP_INIT_SERVER_SPN i SSPROP_INIT_FAILOVER_PARTNER_SPN.

IDBProperties::SetPropertiesmoże być wywołana z zestaw właściwości SSPROP_INIT_SERVER_SPN i SSPROP_INIT_FAILOVER_PARTNER_SPN przed IDBInitialize::Initialize jest wywoływana.Jest to ciąg dostawca zamiast.

Jeśli właściwość jest zestaw w więcej niż jednym miejscu, wartość zestaw programowo ma pierwszeństwo przed wartością zestaw w ciąg dostawca.Wartość zestaw podczas inicjowania ciąg ma pierwszeństwo przed wartością zestaw w oknie dialogowym logowania.

To samo słowo kluczowe pojawi się więcej niż jeden raz w ciąg dostawca, pierwszeństwo ma wartość z pierwszego wystąpienia.

IDBProperties::GetProperties

IDBProperties::GetProperties mogą być wywoływane w celu uzyskania wartości nowe właściwości źródło danych inicjujących SSPROP_INIT_SERVERSPN i SSPROP_INIT_FAILOVERPARTNERSPN oraz nowe właściwości źródło danych, SSPROP_AUTHENTICATIONMETHOD i SSPROP_MUTUALLYAUTHENTICATED.

IDBProperties::GetPropertyInfo

IdbProperties::GetPropertyInfo będą one obejmowały nowe właściwości źródło danych inicjujących SSPROP_INIT_SERVERSPN i SSPROP_INIT_FAILOVERPARTNERSPN lub nowe właściwości źródło danych, SSPROP_AUTHENTICATION_METHOD i SSPROP_MUTUALLYAUTHENTICATED.

IDBProperties::SetProperties

IDBProperties::SetProperties do ustawiania wartości nowe dane należy wywołać źródło właściwości inicjujące, SSPROP_INITSERVERSPN i SSPROP_INIT_FAILOVERPARTNERSPN.

Właściwości te zestaw w dowolnym czas, ale jeśli źródło danych jest już otwarty, zostanie zwrócony następujący błąd: DB_E_ERRORSOCCURRED, "Operacja Wielokrokowa OLE DB wygenerowała błędy.Sprawdź wszystkie wartości stanu OLE DB, jeśli są dostępne.Wykonano żadnego działania."