Sql-Server
無法為 SQL Server 2017 (14.x.xxxx) 創建自簽名證書
使用 SQL Server 2017 開發者版
我正在使用的命令是:
New-SelfSignedCertificate -CertStoreLocation Cert:\LocalMachine\My -DnsName host.doman.com -KeySpec KeyExchange -FriendlyName SQLCert
錯誤資訊是:
New-SelfSignedCertificate:找不到與參數名稱“KeySpec”匹配的參數。
我的 powerShell 版本是:
PS C:\Windows\system32> $PSversionTable 名稱 值 ---- ----- PS版本 4.0 WSManStackVersion 3.0 序列化版本 1.1.0.1 CLRVersion 4.0.30319.42000 建構版本 6.3.9600.18773 PSCompatibleVersions {1.0、2.0、3.0、4.0} PSRemotingProtocolVersion 2.2
您需要用雙引號將 CertStoreLocation、Subject、DnsName 和 FriendlyName 括起來。
無需指定位置,因為它將預設為“本地電腦/個人/證書”,以便 SQL Server 使用它。
這將在 Windows Server 2016 上生成可供 SQL Server 2017 使用的有效證書:
New-SelfSignedCertificate -Subject "CN=insert FQDN here" -DnsName "<insert FQDN here>","insert NetBIOS name here" -FriendlyName "Self Signed Certificate Friendly Name" -KeySpec KeyExchange -KeyLength 2048 -NotAfter (Get-Date).AddYears(5)
請將“在此處插入 FQDN”和“在此處插入 NetBIOS 名稱”替換為實際的 FQDN 和 NetBIOS 名稱,並保留雙引號。
3 天后,我設法在本地與我的 SQL Server 2017 建立連接。在這裡我所做的,我知道這不是一個好方法,但有些方法對我有用!
- 為埠 1433(TCP 和 UDP)添加了入站新規則
- 為埠 1433(TCP 和 UDP)添加了出站新規則
- 在我的情況下,允許我的客戶端應用程序在防火牆中使用它的 Android Studio。
- 使用我的 Android 應用進行測試,現在不需要 SSL。