我正在处理一个任务,即当用户向服务器发送请求时获取客户端证书.我必须获得证书并从证书中获取3条信息:用户名,用户的电子邮件地址和用户的公司名称.
首先,只需获取用户名"Subject CN",电子邮件地址为"Subject E",公司名称为"subject OU"即可.
但后来我意识到有很多不同的CA和工具,他们以不同的格式颁发证书.例如,某些证书在"subject"字段中根本没有电子邮件地址字段,但是将其存储在SubjectAlternativeName扩展名中,并且用户名存储在"subject O"中,其他一些在"subject CN"字段中具有电子邮件以及公司的网址.
我想知道是否有任何方法可以确定地找出用户的姓名,公司名称和电子邮件地址?如果没有,如果证书格式有任何标准,以便这些信息存储在多个位置,或者它们只是在证书中的哪个字段中创建?
最后一个问题是:如果一个网站支持来自"所有"CA的客户端证书,我们在谈论多少个CA?这种情况是常见的还是大多数网站只支持它选择的1-2个CA?
非常感谢您的回复,我脑子里的问题太多了.
假设我有一个整数数组:
arr = [0,5,7,8,11,16]
Run Code Online (Sandbox Code Playgroud)
我有另一个整数:
n = 6
Run Code Online (Sandbox Code Playgroud)
我需要一个向下舍入到数组中最接近的数字的函数:
foo(n) #=> 5
Run Code Online (Sandbox Code Playgroud)
如您所见,数字没有固定的模式.这是一种优雅的方式吗?
谢谢
我读了一个以制表符分隔的文本文件,然后我有一个每行的列表,我然后索引每个列表的第一个条目,然后我把它写入文件.代码如下:
import csv
z = csv.reader(open('output.blast'), delimiter='\t')
k = open('output.fasta', 'w')
for row in z:
print row[1:12]
for i in row[1:12]:
k.write(i+'\t')
Run Code Online (Sandbox Code Playgroud)
当写入文件时,它将其写为一个长行,我希望在每个列表中的第11个(最后一个)条目之后启动一个新行.但我无法弄清楚在哪里放新线特征
在格式化和可读性方面,SQL似乎是最被忽视的语言......而且由于SQL语句可能非常详细和复杂,因此使用起来非常困难.但我发现当我尝试以尽可能最好的方式格式化我的SQL代码时,我有时候不确定如何去做.我知道Java,C#,Python等的标准......但是当涉及到SQL时,我没有看到太多指南或接受的做法.什么是格式化SQL的提示/规则,以便它清晰,清晰,合乎逻辑?你能给出示例代码来说明吗?您发现什么是格式化SQL的最标准,可接受的方式?
我有一个转发器,显示各种股票的财务数据和价格.
在这个页面上,我还有一个"导出"按钮,需要在屏幕上获取数据〜并将其转换为用户的CSV.
问题是,在我对"Stock"实体列表进行了数据绑定之后:
List<Stock> stocks = GetStocks()
rptStockList.DataSource = stocks;
rptStockList.DataBind();
Run Code Online (Sandbox Code Playgroud)
回发时不会保留数据.
此外,此页面上的数据通过UpdatePanel和Timer控件(每次重新数据绑定)不断更新.每隔30秒,转发器控件中各种库存的价格会发生变化.
现在,我有一个链接按钮,在代码隐藏中有一个click事件方法,它应该在屏幕上为用户导出〜数据.我需要获取最后数据绑定到转发器的股票列表的当前值.我不能简单地从数据库中获取最新值,因为这些值将在上次刷新之间的时间内更改.
protected void lbtnExportStocks_Click(object sender, EventArgs e)
{
// No longer have the stock data used in the repeater control
ExportStocksToExcel();
}
Run Code Online (Sandbox Code Playgroud)
我知道ASP.NET不会在post-back上保留转发器的数据源,但是我仍然需要重新构建这个Stock实体列表,这样我就可以将它们发送给CSV或者我需要将它保留在某些办法.
我不想做任何在性能方面过于繁重的事情,因为在一周的某些日子里,这个应用程序会有一些繁重的用法.
这种情况的正确解决方案是什么?我应该遍历Repeater的"Items"集合并重建Stock实体吗?
我知道Oracle是一个通常很好的数据库引擎,但我认为与原生Microsoft SQL服务器解决方案相比,.NET项目的部署太难了.
(我需要同时安装x32和x64位客户端组件并为它们配置TNS名称,并为Oracle安装分布式事务支持.并不是说您需要向Oracle注册才能获取这些二进制文件.)
我还是看到了一些使用Oracle的.NET项目.
使用Oracle而不是SQL Server有什么好处?它是唯一的选择?
您是否将Oracle用于.NET项目?
我在一个持续集成服务器上设置了几个项目,其中一些我没有权限将源代码更改为,服务器是一个linux盒子,我遇到了一个需要将maven编码更改为UTF8的问题能够在盒子上编译.由于我无权修改pom文件,我想知道我是否可以将编译器选项作为命令行参数传递?该项目使用maven编译器2.0,我尝试传递-Denconding = UTF8但没有成功.
我不确定如何使鼻子模块的__main__处理程序工作.我在测试模块的末尾有这个:
if __name__ == "__main__":
import nose
nose.main()
Run Code Online (Sandbox Code Playgroud)
这给了我:
----------------------------------------------------------------------
Ran 0 tests in 0.002s
OK
Run Code Online (Sandbox Code Playgroud)
但它通过命令行运行相同的东西,它找到测试并执行它们:
MacBook-Pro:Storage_t meloam$nosetests FileManager_t.py
............E..
======================================================================
ERROR: testStageOutMgrWrapperRealCopy (WMCore_t.Storage_t.FileManager_t.TestFileManager)
----------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
SNIP
----------------------------------------------------------------------
Ran 15 tests in 0.082s
FAILED (errors=1)
Run Code Online (Sandbox Code Playgroud)
我一直在玩通过不同的参数到nose.main()但我找不到任何有用的东西.我错过了一些非常明显的东西吗
谢谢
Java中是否存在用于拆分字符串的默认/简单方法,但是要使用引号或其他符号?
例如,给定此文本:
There's "a man" that live next door 'in my neighborhood', "and he gets me down..."
Run Code Online (Sandbox Code Playgroud)
获得:
There's
a man
that
live
next
door
in my neighborhood
and he gets me down
Run Code Online (Sandbox Code Playgroud) 这个问题让我很烦恼.不知何故,在安装了wysiwig编辑器后,我的评论体形变成了丰富的... bla bla area.我不想要这个,但我找不到将注释输入格式转回纯文本(或过滤格式)的地方.我知道如何更改不同内容类型的过滤器选项,但将注释转回简单格式只会让我发疯!请帮忙 - 这个配置位置在哪里评论?