タグ付けされた質問 「kerberos」

2
Windows認証を使用してリンクサーバーを機能させるにはどうすればよいですか?
ドメイン環境で「ログインの現在のセキュリティコンテキストを使用して作成する」を使用して、別のサーバーServerBで作成されたServerAにリンクサーバーを取得しようとしています。Kerberosを有効にするには、各サーバーでSQL Serverを実行するサービスアカウント用にSPNを作成する必要があることを読みました。私はそれを行っており、認証スキームがKerberosであることを両方とも示していますが、まだエラーに直面しています: "Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'". Active Directoryでは、ServerBのサービスアカウントがMSSQLSvcへの委任に対して信頼されていることがわかりますが、ServerAのサービスアカウントでは「このユーザーを委任に対して信頼」が有効になっていないことに気付きました。ターゲットサーバーでもそのオプションを有効にする必要がありますか?現在のWindowsログインを使用してリンクサーバーを使用できるようにするために、他に必要なものはありますか?

2
証明書チェーンは信頼されていない機関によって発行されました
少し前に、Windows 10 Home Edition環境(正確にはラップトップ)にSQL Server 2016 Developer Editionをインストールしましたが、すべて問題ありませんでした。 その後、誰か-ボックスの管理者-私に言わずに、ボックスの名前を変更することにしました。 その後、SQLサーバーに接続しようとすると、次のエラーメッセージが表示されます。 これはこれと非常によく似た質問です。 AzureのWebサイトからVMロールのDBに接続すると、「証明書チェーンは信頼されていない機関によって発行されました」 私もここにいます: ターゲットプリンシパル名が正しくありません。SSPIコンテキストを生成できません。(Microsoft SQL Server、エラー:0) Kerberos Configuration Managerを使用していて、別のエラーメッセージが表示される SQLサーバー認証でこのSQLサーバーのインスタンスに接続できますが、 Windows認証を使用して接続したいと言っておく必要があります。 明確にするために-これはすべてローカルマシンであり、どのドメインにも属していません。 ここから先に進む方法がよくわからないので、Windows認証を使用します。 証明書に関連するエラーメッセージにより、ここで証明書を再発行することについて考えさせられます。これを行う方法について、またはこれがこの状況を回避するための有効な方法であるかどうか、私にはわかりません。 私はその日はこのマシンの周りにいませんが、できるだけ早く追いつきます。時間が許せば研究を続けます。

1
SQL Server 2012で仮想アカウントではなく管理されたサービスアカウントを使用する理由は何ですか?
SQL Server 2012のでは、サービスアカウントは、次のように作成された仮想口座説明するように、(VAS)ここでは対照的に、管理されたサービスアカウント(MSAは)。 説明に基づいて、これらについて見られる重要な違い: MSAはドメインアカウント、VAはローカルアカウントです MSAはADによって処理される自動マジックパスワード管理を使用し、VAにはパスワードがありません Kerberosコンテキストでは、MSAはSPNを自動的に登録しますが、VAは 他に違いはありますか?Kerberosが使用されていない場合、DBAがMSAを好むのはなぜですか? 更新:別のユーザーは、VAに関するMSドキュメントの矛盾の可能性に気付きました: 仮想アカウントは自動管理されており、仮想アカウントはドメイン環境のネットワークにアクセスできます。 対 仮想アカウントは、リモートロケーションに対して認証できません。すべての仮想アカウントは、マシンアカウントの権限を使用します。次の形式でマシンアカウントをプロビジョニングします <domain_name>\<computer_name>$。 「マシンアカウント」とは何ですか?どのように/いつ/なぜ「プロビジョニング」されますか?「ドメイン環境でネットワークにアクセスする」と「(ドメイン環境で)リモートロケーションに認証する」の違いは何ですか?

2
各SQLインスタンスのSPNエントリはどのように見えるべきですか?
適切なKerberos接続を取得するためにSPN(サービスプリンシパル名)を正確にフォーマットする方法と、SQLインスタンスごとに必要な数について、矛盾する情報を見つけています。 この2017年のMS文書には、次のものが含まれています。 SQL Server 2008以降、TCP / IP、名前付きパイプ、および共有メモリでのKerberos認証をサポートするために、SPN形式が変更されました。名前付きインスタンスとデフォルトインスタンスでサポートされるSPN形式は次のとおりです。 名前付きインスタンス: MSSQLSvc/FQDN:[port|instancename] デフォルトのインスタンス: MSSQLSvc/FQDN:port|MSSQLSvc/FQDN 新しいSPN形式では、ポート番号は必要ありません。つまり、マルチポートサーバーまたはポート番号を使用しないプロトコルは、Kerberos認証を使用できます。 この最後の段落は、次のいずれか1つのエントリのみが必要であることを意味します。 名前付きインスタンス: MSSQLSvc/sqlbox1.mydomain.org/instance2 デフォルトのインスタンス: MSSQLSvc/sqlbox1.mydomain.org これは、ポート番号だけでなく、使用する名前に関しても、この古い(2011)MSドキュメントと矛盾しているようです。 SPNを作成するには、SQL ServerのNetBIOS名または完全修飾ドメイン名(FQDN)を使用できます。ただし、NetBIOS名とFQDNの両方のSPNを作成する必要があります。 私の環境にすでに存在するSPNを見ると、さまざまな組み合わせがあり、一部のサーバーには最大4つのエントリがあります。 MSSQLSvc/sqlbox1 MSSQLSvc/sqlbox1:1433 MSSQLSvc/sqlbox1.mydomain.org MSSQLSvc/sqlbox1.mydomain.org:1433 MS自身のKerberos構成マネージャーでさえ、最後の2つのバージョンを(適切に難読化して)生成したいようです: 同様に、既存の名前付きインスタンスの場合、奇妙な組み合わせが見られます。それらの一部はほぼ確実に無効です。 MSSQLSvc/sqlbox1:1522 MSSQLSvc/sqlbox1:instance2 MSSQLSvc/sqlbox1.mydomain.org:1522 MSSQLSvc/sqlbox1.mydomain.org:instance2 MSSQLSvc/sqlbox1.mydomain.org/instance2 MSSQLSvc/sqlbox1.mydomain.org:1522:instance2 では、環境でTCPを使用するだけの場合、デフォルトインスタンスと名前付きインスタンスの両方について、実際のDSNはどのように見えるべきでしょうか。 ポートを含めるかどうか。または、ポートのあるものとないものを含めますか? FQDNのみを使用するか、Netbios名のみのエントリが必要ですか?それとも、名前付きパイプ(私たちはそうではありません)を使用している場合のみでしょうか? (コンテキストでは、SQL 2005から2014を実行し、一部はクラスター化され、その他はスタンドアロンです。接続はTCPのみを介して行われ、名前付きパイプは構成マネージャーで無効になっています。SQLサービスアカウントがそれらを作成できるようにする代わりに、手動で修正/作成します。サーバーの起動。)

2
SQL Server 2012のリンクサーバーでKerberos認証が機能しない
Windows Server 2012でSQL Server 2012を実行している2つのSQL Serverを使用してDEV / TEST環境をセットアップしています。WindowsServer 2008でSQL Server 2005から移行していますが、これはすでに正常に稼働しています。 SQL Server 2012では、Kerberos認証が機能していません。 各サーバーには独自のActive Directoryアカウントがあり、Active Directoryユーザーとコンピューターを通じて「サービスプリンシパル名の書き込み」および「サービスプリンシパル名の読み取り」権限が付与されています。SQL Server 2005サーバーに接続して実行する場合: SELECT net_transport, auth_scheme FROM sys.dm_exec_connections WHERE session_id = @@SPID; そうですか: net_transport auth_scheme TCP KERBEROS 新しいSQL Server 2012インスタンスに対して同じクエリを実行すると、次のようになります。 net_transport auth_scheme TCP NTLM を使用SetSPN -Q MSSQLSvc/*してサービスプリンシパル名をアクティブドメインにクエリすると、サーバーの名前以外はまったく同じ方法で、2005サーバーと2012サーバーの両方が一覧表示されます。 例えば: MSSQLSvc/SERVERa2005.domain.inet MSSQLSvc/SERVERa2005domain.inet:1433 MSSQLSvc/SERVERb2005.domain.inet MSSQLSvc/SERVERb2005domain.inet:1433 MSSQLSvc/SERVERa2012.domain.inet MSSQLSvc/SERVERa2012domain.inet:1433 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.