mirror of
https://github.com/ckaczor/sqltoolsservice.git
synced 2026-02-16 10:58:30 -05:00
Login handlers: address comments and fix dispose (#1870)
This commit is contained in:
@@ -6,14 +6,13 @@
|
|||||||
#nullable disable
|
#nullable disable
|
||||||
|
|
||||||
using Microsoft.SqlTools.Hosting.Protocol.Contracts;
|
using Microsoft.SqlTools.Hosting.Protocol.Contracts;
|
||||||
using Microsoft.SqlTools.Utility;
|
|
||||||
|
|
||||||
namespace Microsoft.SqlTools.ServiceLayer.Security.Contracts
|
namespace Microsoft.SqlTools.ServiceLayer.Security.Contracts
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Create Login parameters
|
/// Create Login parameters
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class CreateLoginParams : GeneralRequestDetails
|
public class CreateLoginParams
|
||||||
{
|
{
|
||||||
public string ContextId { get; set; }
|
public string ContextId { get; set; }
|
||||||
|
|
||||||
@@ -36,7 +35,7 @@ namespace Microsoft.SqlTools.ServiceLayer.Security.Contracts
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Delete Login params
|
/// Delete Login params
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class DeleteLoginParams : GeneralRequestDetails
|
public class DeleteLoginParams
|
||||||
{
|
{
|
||||||
public string ConnectionUri { get; set; }
|
public string ConnectionUri { get; set; }
|
||||||
|
|
||||||
@@ -59,7 +58,7 @@ namespace Microsoft.SqlTools.ServiceLayer.Security.Contracts
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Update Login params
|
/// Update Login params
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class UpdateLoginParams : GeneralRequestDetails
|
public class UpdateLoginParams
|
||||||
{
|
{
|
||||||
public string ContextId { get; set; }
|
public string ContextId { get; set; }
|
||||||
|
|
||||||
@@ -83,7 +82,7 @@ namespace Microsoft.SqlTools.ServiceLayer.Security.Contracts
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Update Login params
|
/// Update Login params
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class DisposeLoginViewRequestParams : GeneralRequestDetails
|
public class DisposeLoginViewRequestParams
|
||||||
{
|
{
|
||||||
public string ContextId { get; set; }
|
public string ContextId { get; set; }
|
||||||
}
|
}
|
||||||
@@ -105,7 +104,7 @@ namespace Microsoft.SqlTools.ServiceLayer.Security.Contracts
|
|||||||
/// Initialize Login View Request params
|
/// Initialize Login View Request params
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
||||||
public class InitializeLoginViewRequestParams : GeneralRequestDetails
|
public class InitializeLoginViewRequestParams
|
||||||
{
|
{
|
||||||
public string ConnectionUri { get; set; }
|
public string ConnectionUri { get; set; }
|
||||||
public string ContextId { get; set; }
|
public string ContextId { get; set; }
|
||||||
|
|||||||
@@ -914,7 +914,7 @@ INNER JOIN sys.sql_logins AS sql_logins
|
|||||||
private Microsoft.SqlServer.Management.Smo.Server server;
|
private Microsoft.SqlServer.Management.Smo.Server server;
|
||||||
private static string defaultLanguageDisplay;
|
private static string defaultLanguageDisplay;
|
||||||
private bool windowsAuthSupported = true;
|
private bool windowsAuthSupported = true;
|
||||||
private bool aADAuthSupported = false;
|
private bool aadAuthSupported = false;
|
||||||
|
|
||||||
private StringCollection credentials = null;
|
private StringCollection credentials = null;
|
||||||
#endregion
|
#endregion
|
||||||
@@ -1067,10 +1067,10 @@ INNER JOIN sys.sql_logins AS sql_logins
|
|||||||
{
|
{
|
||||||
if (this.server.ServerType == DatabaseEngineType.SqlAzureDatabase)
|
if (this.server.ServerType == DatabaseEngineType.SqlAzureDatabase)
|
||||||
{
|
{
|
||||||
this.aADAuthSupported = true;
|
this.aadAuthSupported = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.aADAuthSupported;
|
return this.aadAuthSupported;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ namespace Microsoft.SqlTools.ServiceLayer.Security
|
|||||||
CDataContainer dataContainer = CDataContainer.CreateDataContainer(connInfo, databaseExists: true);
|
CDataContainer dataContainer = CDataContainer.CreateDataContainer(connInfo, databaseExists: true);
|
||||||
LoginViewInfo loginViewInfo = new LoginViewInfo();
|
LoginViewInfo loginViewInfo = new LoginViewInfo();
|
||||||
|
|
||||||
|
// TODO cache databases and languages
|
||||||
string[] databases = new string[dataContainer.Server.Databases.Count];
|
string[] databases = new string[dataContainer.Server.Databases.Count];
|
||||||
for (int i = 0; i < dataContainer.Server.Databases.Count; i++)
|
for (int i = 0; i < dataContainer.Server.Databases.Count; i++)
|
||||||
{
|
{
|
||||||
@@ -327,7 +328,6 @@ namespace Microsoft.SqlTools.ServiceLayer.Security
|
|||||||
|
|
||||||
internal async Task HandleDisposeLoginViewRequest(DisposeLoginViewRequestParams parameters, RequestContext<object> requestContext)
|
internal async Task HandleDisposeLoginViewRequest(DisposeLoginViewRequestParams parameters, RequestContext<object> requestContext)
|
||||||
{
|
{
|
||||||
contextIdToConnectionUriMap.Remove(parameters.ContextId);
|
|
||||||
await requestContext.SendResult(new object());
|
await requestContext.SendResult(new object());
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|||||||
Reference in New Issue
Block a user