我即将用java开始我的第一个项目
让我告诉我以前如何处理这些事情......
到目前为止,我一直在使用VB6编写的com + componente来处理asp.
该组件通过com +管理控制台注册一个域用户,其中包括lile my_company_domain\my_app_account
组件从udl文件读取配置,配置为访问具有集成安全性的DB.
我使用server.createobject从asp调用componente,该组件使用指定的域帐户运行,因此每个数据库访问都使用此帐户运行...
我喜欢这种方法的有以下几点:
使用集成安全性 - 没有sql用户
无需重新编译任何内容即可更改db(编辑udl文件)或域帐户(编辑com +组件配置)
池连接(因为我总是使用相同的连接字符串)
生产人员可以在不将帐户密码留在文本文件上的情况下更改配置
...
那么,在java上实现这样的东西的最佳方法是什么?
我已经看到了一些关于Commons-DBCP的东西,是否可以使用集成安全性?
非常感谢...
-
添加回应评论
通过集成安全性我的意思是我只需要配置域帐户,就是这样,我不使用sql server帐户,只使用运行VB6 com +组件的帐户.
好吧,也许这不是合适的术语,但我希望你能得到这个想法......
java database connection-string database-connection connection-pooling
我在访问中有一些数据源,我需要以编程方式连接到幕后进行操作并远离用户.
所述数据源有一个密码'pass',因为我将在这里调用它.使用此连接方法我尝试使用open方法时出错
Dim conn as ADODB.Connection
Set ROBBERS.conn = New ADODB.Connection
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=\\pep-home\projects\billing\autobilling\DPBilling2.mdb;" _
& "Jet OLEDB:Database Password=pass;", "admin", "pass"
Run Code Online (Sandbox Code Playgroud)
"无法启动您的应用程序.工作组信息文件丢失或由其他用户独占打开."
由于计划进入2007年,我们没有使用也没有通过访问使用工作组标识文件.数据源上的数据库密码是通过Set Databa Password设置的,该密码必须在独占打开时完成.
我花了很长时间改变我的连接选项,在哪里放置密码等,或者找不到正确的格式,或者(为什么我在这里问)我认为可能还有其他未知的我必须设置这样做.有人在那里得到一些有用的信息吗?
我正在尝试使用Slow Cheetah在本地数据库连接字符串和SQL Azure连接字符串之间切换.这是Azure工作者角色,我正在使用TeamCity推送到Azure.当我查看日志文件时,Slow Cheetah进程正在正常运行并且正在生成转换后的app.config,但未来的构建步骤(我认为我无法控制)是用原始app.config编写转换后的文件. .
有没有其他人用这种方法取得任何成功,或者你能指点我另一种方法来切换我的连接字符串.我被指向只使用一个连接字符串并编辑hosts文件指向我想要的数据库,但这看起来很混乱.
connection-string app-config azure azure-worker-roles slowcheetah
通过使用C#与MySQL数据库的SSH连接,我获得了使用此库进行连接的链接.
这是图书馆的链接,因为你不需要手动打开SSH频道,很多人会觉得这很有趣.
这是一个非常详细的库,有很多功能,但我想要做的很简单.我只想在每次要写入数据库时打开SSH通道.
虽然我是通过提供的源搜索我走到它可以发现在这部分代码TestSshCommand.cs,我想我可以用这部分我的连接,但我需要你们的帮助让我有它的工作我的连接字符串我不知道如何连接所有它.
码:
public void Test_Execute_SingleCommand()
{
using (var client = new SshClient(Resources.HOST, Resources.USERNAME, Resources.PASSWORD))
{
client.Connect();
var result = ExecuteTestCommand(client);
client.Disconnect();
Assert.IsTrue(result);
}
Run Code Online (Sandbox Code Playgroud)
我连接到非SSH通道的代码是:
con.ConnectionString = ConfigurationManager.ConnectionStrings["Con2"].ConnectionString;
con.Open();
cmd = new MySqlCommand("SELECT COUNT(*) FROM " + ConfigSettings.ReadSetting("main"), con);
//...... more of the code
Run Code Online (Sandbox Code Playgroud)
那么如何将此代码与上面的代码结合起来,以便它可以先打开一个SSH通道然后执行我的查询?
我需要将我的代码放入连接和断开连接功能吗?
还有一个想法我在引用中添加.dll文件,我必须说没有任何导入工作.那么有人可以下载库并尝试这个简单的代码来查看引用是否适用于您的项目,以便每个人(很多)可以为他们未来的项目提供有效的解决方案?
编辑:
这是我以后尝试做的代码.我的SSH连接现在只需将两者结合起来就可以了.
问题是我需要在我的电脑上本地拥有一个数据库,并且需要连接到服务器.因此,端口转发将不起作用,因为somone在论坛上说我无法移植,而mysql已经有端口用于运行
using (var client = new SshClient("cpanel****", "******", "******"))
{
client.Connect();
con = new MySqlConnection(GetConnectionString());
con.Open();
cmd = new …Run Code Online (Sandbox Code Playgroud) 目前我有以下<connectionStrings> definition in myWeb.config`文件:
<connectionStrings>
<add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/>
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
我没有写这个,所以我觉得它是由Visual Studio自动创建的.
我的数据库托管在我们网络上的单独服务器上,那么如何定义它以及数据库用户名和密码呢?
为了示例,服务器信息和凭据是:
服务器地址:sql-database/10.0.0.11
用户名:myUsername
密码:myPassword
这是关于使用Visual Studio 2012 ultimate和SQL Server Express 2012的ConnectionStrings/ASP.NET MVC.
在这里继续本教程:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4我遇到了一个问题我的web.config上的这两个连接字符串:
<connectionStrings>
<add name="DefaultConnection"
connectionString="Data Source=(LocalDb)\v11.0;
Initial Catalog=aspnet-MvcMovie-users;
Integrated Security=SSPI;
AttachDBFilename=|DataDirectory|\aspnet-MvcMovie-users.mdf"
providerName="System.Data.SqlClient" />
<add name="MovieDBContext"
connectionString="Data Source=(LocalDB)\v11.0;
AttachDbFilename=|DataDirectory|\Movies.mdf;
Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
该网站工作正常,但我无法弄清楚为什么第一个数据库是在App_Data文件夹中创建的,而第二个数据库是在"C:\ Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA"中创建的?我猜两个都将在App_data中创建,因为它们都使用了这个属性:AttachDBFilename = | DataDirectory |!
注意:该教程提到它应该在App_Data中并且他们添加了一个屏幕截图,确实显示了它!
我一直在寻找答案,并进入SQL的共谋(我认为用户实例可能是解决方案)但无法得到答案:|
(这可能对阅读用户实例很有用http://msdn.microsoft.com/en-us/library/bb264564(v=sql.90).aspx)
任何想法都非常感谢.提前致谢.
问候
我正在使用本地机器(ASP.NET MVC 4应用程序),但现在我想开始使用公司的SQL服务器,所以我需要更改连接字符串以便将我连接到该远程服务器.
设置如下:
Microsoft SQL Server Management Studio用来连接到远程服务器时,我使用与用于连接VPN的相同IP - xxx.xxx.xxx.xxx我有一个现有的连接字符串,我用它连接到我的电脑上的服务器,所以我认为只需改变那里的参数即可:
<add name="ProjectName.DAL.MyDbContext"
providerName="System.Data.SqlClient"
connectionString="Data Source=xxx.xxx.xxx.xxx;
Initial Catalog=DatabaseName;Integrated Security=True;
MultipleActiveResultSets=True;
user id=SQLUsername;password=SQLPassword;App=EntityFramework" />
Run Code Online (Sandbox Code Playgroud)
因此,工作连接字符串并将我连接到本地服务器的更改有两个:
Data Source= xxx.xxx.xxx.xxx - 我正在使用IP.在这里,我想知道IP本身是否足够.我应该使用http://xxx.xxx.xxx.xxx还是IP就可以了?user id=SQLUsername;pasword=SQLPassword- 我使用相同的用户名和密码Management studio,因为我可以通过提供xxx.xxx.xxx.xxx服务器名称和使用SQLUsername/SQLPassword 成功连接到删除服务器SQL Server Authentincation.所以要清楚 - 在Management Studio下我连接到远程服务器没有问题.但是,当我将连接字符串更改为我在上面发布的内容时,我的HomeController逻辑非常简单,只是为了检查是否执行了对数据库的调用:
private MyDbContext db = new MyDbContext();
//
// GET: /Home/
public ActionResult Index()
{
return View(db.Users.ToList()); …Run Code Online (Sandbox Code Playgroud) 在重新发明轮子之前,是否有一种标准方法可以在SQL Server连接字符串中隐藏至少一个密码?
(用C#编写)
我有一个高度多线程的应用程序,它知道多个数据库,因此为了帮助进行故障排除和调试,可以记录连接字符串的各个位置.我无法控制使用此产品的客户使用什么连接字符串,因此在其中找到密码并不常见.我知道这是因为它也并不少见,人们打开调试级记录,并给我们的日志文件有问题报告一起,这些日志中包含的数据库密码(和结果我们的支持票系统包含口令).
我知道最好的做法是不要把连接字符串中的密码,但一部分是出于我的控制(当然,除非我们改变我们的应用程序,所以它拒绝,如果你给它用未加密的密码连接字符串跑......这似乎对我来说有点严厉).
真的希望我想要它的日志是:
Server=myServerAddress;Database=myDataBase;User Id=****;Password=*****;
Run Code Online (Sandbox Code Playgroud)
(如果用户ID /名称是否是敏感信息,或者/或者对于日志记录是否有用 - 我对此表示欢迎).
我可以构建一个简单的正则表达式(例如/Password=[^;]+/),但在此之前,我只是想看看是否还有其他情况我不考虑,特别是如果已经完成的话.
Google或SO上的任何内容都与此特定问题无关,因此请问一个新问题.我使用标准的用户安全选项创建了一个全新的Asp.Net MVC Web应用程序.我还在Azure中创建了一个空数据库.
我什么也没做,只是将默认连接字符串更改为:
<connectionStrings>
<add name="DefaultConnection"
connectionString="data source=mydatabase.database.windows.net;initial catalog=Feedback;persist security info=True;user id=LeaveFeedbackuser;password=mypassword;MultipleActiveResultSets=True;App=EntityFramework"
providerName="System.Data.SqlClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
和默认的连接工厂:
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
<parameters>
<parameter value="v12.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
Run Code Online (Sandbox Code Playgroud)
在尝试注册时(我希望它通常创建AspNetUsers和相关的表)我得到以下错误:
GZip标头中的幻数不正确.确保传入GZip流.描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.
异常详细信息:System.IO.InvalidDataException:GZip标头中的幻数不正确.确保传入GZip流.
来源错误:
第153行:{第154行:var user = new ApplicationUser {UserName = model.Email,Email = model.Email}; 第155行:var result = await UserManager.CreateAsync(user,model.Password); 第156行:if(result.Succeeded)第157行:{
这与GZip有什么关系以及导致此错误的原因是什么?这已经阻止我让OWIN使用我的Azure数据库好几天了.
我有一个.NET Core 2.1 Web API服务,我希望从appsettings.json文件中检索连接字符串,并在我写的单独的数据库类中使用它.我不需要或不想使用Entity Framework,遗憾的是,所有MS文档都只显示EF示例.我已经尝试了大约10种不同的技术,但似乎无处可去.
这是appsettings.json文件:
{
"Logging": {
"LogLevel": {
"Default": "Warning"
}
},
"AllowedHosts": "*",
"ConnectionStrings": {
"DefaultConnection": "Server=MAXIMUS,61433;Database=Geolocation;Trusted_Connection=True;MultipleActiveResultSets=true"
}
}
Run Code Online (Sandbox Code Playgroud)
和startup.cs文件:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.HttpsPolicy;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
namespace GeoLocationService1
{
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
// This method gets called by …Run Code Online (Sandbox Code Playgroud) c# ×4
asp.net ×2
azure ×2
database ×2
sql-server ×2
.net ×1
adodb ×1
app-config ×1
asp.net-mvc ×1
java ×1
ms-access ×1
mysql ×1
owin ×1
passwords ×1
security ×1
slowcheetah ×1
sql ×1
ssh ×1
vpn ×1