Method: SqlCmd.to_integrated_security

Defined in:
lib/sql_cmd/format.rb

.to_integrated_security(connection_string, server_only: false) ⇒ Object

Ensures a connection string is using integrated security instead of SQL Authentication.



110
111
112
113
114
115
116
117
118
# File 'lib/sql_cmd/format.rb', line 110

def to_integrated_security(connection_string, server_only: false)
  raise 'Failed to convert connection string to integrated security. Connection string is nil!' if connection_string.nil?
  parts = connection_string.split(';')
  new_connection_string = ''
  ommitted_parts = ['user id', 'uid', 'password', 'pwd', 'integrated security', 'trusted_connection']
  ommitted_parts += ['database', 'initial catalog'] if server_only
  parts.each { |part| new_connection_string << "#{part};" unless part.downcase.strip.start_with?(*ommitted_parts) } # only keep parts not omitted
  "#{new_connection_string}Integrated Security=SSPI;"
end