我正在尝试使用凭据提供程序为Windows 7创建自定义登录.我使用的是Windows 7 Professional,Windows SDK 7.0和Visual Studio 2010 Ultimate.在我从SDK 7.0中的示例文件夹构建SampleCredentialProvider的解决方案后,我创建了dll文件,我将dll文件复制到我的Windows\System32文件夹中,然后运行Register.reg,但登录时没有发生任何事情.根据登录屏幕中的文档,我应该能够看到新用户(管理员和访客).我做错了什么?有诀窍吗?
谢谢.
我已成功安装并运行名为DriveCommandLine的Google Drive Quick Start应用程序.我还调整了一点,以获取我的云端硬盘帐户中的一个文件的GET文件信息.
我现在要做的是以某种方式保存凭证并重新使用它们,而无需用户每次都必须访问网页才能获得授权代码.我已查看此页面,其中包含检索和使用OAuth 2.0凭据的说明.为了使用示例类(MyClass),我修改了DriveCommandLine中实例化Credential对象的行:
Credential credential = MyClass.getCredentials(code, "");
这会导致抛出以下异常:
java.lang.NullPointerException
    at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:187)
    at com.google.api.client.json.jackson.JacksonFactory.createJsonParser(JacksonFactory.java:84)
    at com.google.api.client.json.JsonFactory.fromInputStream(JsonFactory.java:247)
    at com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets.load(GoogleClientSecrets.java:168)
    at googledrive.MyClass.getFlow(MyClass.java:145)
    at googledrive.MyClass.exchangeCode(MyClass.java:166)
    at googledrive.MyClass.getCredentials(MyClass.java:239)
    at googledrive.DriveCommandLine.<init>(DriveCommandLine.java:56)
    at googledrive.DriveCommandLine.main(DriveCommandLine.java:115)
我一直在研究这些API(Google Drive和OAuth)2天,但进展甚微.我非常感谢上述错误以及获得持久凭据的问题.
整个结构对我来说似乎不必要地复杂化.有人想解释为什么我不能通过传入我的谷歌用户名和密码来创建一个简单的凭据对象?
谢谢,Brian O Carroll,都柏林,爱尔兰
*更新*
好吧,我刚刚解决了上述错误,现在又有了一个新错误.
解决第一个问题的方法是修改MyClass.getFlow().我没有使用json文件创建GoogleClientServices对象,而是使用了不同版本的GoogleAuthorizationCodeFlow.Builder,它允许您直接输入客户端ID和客户端密钥作为字符串:
flow = new GoogleAuthorizationCodeFlow.Builder(httpTransport, jsonFactory, "<MY CLIENT ID>", "<MY CLIENT SECRET>", SCOPES).setAccessType("offline").setApprovalPrompt("force").build();
我现在遇到的问题是,当我尝试使用flow(GoogleAuthorizationCodeFlow对象)来交换Credentials对象的授权代码时,我收到以下错误:
An error occurred: com.google.api.client.auth.oauth2.TokenResponseException: 400 Bad Request
{
  "error" : "invalid_scope"
}
googledrive.MyClass$CodeExchangeException
        at googledrive.MyClass.exchangeCode(MyClass.java:185)
        at googledrive.MyClass.getCredentials(MyClass.java:262)
        at googledrive.DriveCommandLine.<init>(DriveCommandLine.java:56)
        at googledrive.DriveCommandLine.main(DriveCommandLine.java:115) …我正在使用命令行svn客户端(版本1.6.12,来自Ubuntu repos),我似乎无法让它来缓存我的用户凭据.我正在尝试访问https svn存储库(类似于https://subversion.FAKE.com/PROJECT).我对此repo的用户名与我的本地用户名不同.
这是〜/ .subversion/config的auth部分
[auth]
### Set password stores used by Subversion. They should be
### delimited by spaces or commas. The order of values determines
### the order in which password stores are used.
### Valid password stores:
###   gnome-keyring        (Unix-like systems)
###   kwallet              (Unix-like systems)
###   keychain             (Mac OS X)
###   windows-cryptoapi    (Windows)
# password-stores = gnome-keyring
### 
### The rest of this section in this file has been deprecated.
### Both 'store-passwords' and 'store-auth-creds' …我将Apache配置为代理服务器时遇到问题.目前,我通过端口80使用domain.net访问MS Sharepoint安装.在能够使用它之前,我必须输入用户名和密码.到现在为止还挺好.
现在我希望能够通过子域web.domain.net访问网站.托管此站点的服务器在内部网络中的另一台计算机上运行.我想出的解决方案是将端口80重定向到运行apache的计算机以服务新网站,并将对sharepoint的任何请求代理到sharepoint服务器.
到目前为止,我启用了httpd.conf中的所有代理模块,并添加了一个虚拟主机. 编辑:第一次回复后更新配置.
<VirtualHost *:80>
    ServerName domain.net
    ProxyRequests Off
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
    ProxyErrorOverride On
    ProxyPass   /   http://sharepoint/
    ProxyPassReverse   /   http://sharepoint/
    <Location />
        AuthType basic
        AuthBasicAuthoritative Off
        SetEnv proxy-chain-auth On
        Order allow,deny
        Allow from all
    </Location>
</VirtualHost>
这有效.输入domain.net会将我转发给sharepoint服务器.现在出现了实际问题.sharepoint要求我提供我的凭据.但是当我输入它们时,登录表单会一直弹出,因为我输入了不正确的用户名和密码.
似乎凭证不会通过代理转发到sharepoint.
你能给我任何建议如何解决这个问题吗?是否可以使用mod_proxy执行此操作?
我需要在整个应用程序中维护我的登录凭据,因此,我有3个选项来维护我的登录凭据...
1 key chain
2 NSUserDefaults
3 plist
哪一个最好选择?是否有其他方式来存储登录凭据?
提前致谢
我刚刚安装了Virtuoso的opensource软件包,我正在运行名为Conductor的web gui.
它需要登录,但我不认为在安装过程中有任何设置.
这是默认的un/pass吗?如果现在,我该怎么设置?
我们有一个在ec2主机上运行的docker容器.在该docker容器中,我们运行一些aws cli命令.我们尚未在容器中定义任何AWS凭据.这意味着容器继承了主机ec2的实例配置文件.
我的假设是真的吗?如果是这样,容器究竟如何继承实例配置文件凭据?其次(可能相关)aws cli究竟做了什么来获取实例配置文件凭据?它是否调用元数据端点(169.254.169.254)?例如,如果从环境变量中获取凭据,则凭证是硬编码的,可以看到,但实例配置文件的凭据实际驻留在哪里?
我有一个尝试运行docker login命令的系统,它是一个无头的 linux 系统,但不幸的是只安装了Docker Credentials Helper docker-credential-secretservice。
这意味着我收到以下错误:
Error saving credentials: error storing credentials - err: exit status 1, out: `Cannot autolaunch D-Bus without X11 $DISPLAY`
我认为这是有道理的:
默认情况下,Docker 在每个平台上查找本机二进制文件,即 macOS 上的“osxkeychain”、Windows 上的“wincred”和 Linux 上的“pass”。一个特殊情况是,在 Linux 上,如果 Docker 找不到“pass”二进制文件,它将回退到“secretservice”二进制文件。如果这些二进制文件都不存在,它会将凭据(即密码)以 base64 编码存储在上述配置文件中。
由于secretservicehelper 使用 GUI 凭据存储,因此它会尝试打开一个窗口,而在无头系统上则无法打开该窗口。
我无法控制系统,因此我无法删除/usr/bin/docker-credential-secretservice文件以强制docker login回退到配置文件而不是使用secretservice帮助程序。
我可以做的是在用户的主文件夹中创建和列出文件。我试过这样运行命令:
docker --config ./docker login -u <user-name> -p <password> <repository>
我的印象是登录命令会config.json在 ./docker 中创建一个(我注意到docker login如果文件夹不存在会创建它)。这适用于没有安装任何帮助程序的系统,但不适用于相关系统。
我还尝试使用以下内容创建一个~/.docker/config.json: …
使用 Rails 6(或 5.2)加密凭据,我在管理和解决文件中的合并冲突时遇到了困难credentials.yml.enc。正如文档中所述,目的是将加密凭据添加到源代码管理中(https://guides.rubyonrails.org/security.html#custom-credentials)
例如, 
branch_a添加凭据service a并合并到 master
branch_b添加凭据service b并在变基时,文件中的冲突credentials.yml.enc如下所示:
<<<<<<< HEAD
sahdkajshdkajhsdkjahsdkjahsdkajhsdkjahsdkjahdskjahsdjkahsdencryptedstring-a09dpjmcas==
=======
laskdjalksjdlakjsdlaksjdlakjsdlaksjdlakjsdlajsdlkajsdlkjasdljalsdajsdencryptedstringrere=
>>>>>>> branch_b
我可以查看每个分支上的未加密内容credentials.yml.enc并非常手动地解决冲突,但是是否有更好的方法来管理凭据以避免这些凭据冲突。
credentials ×10
docker ×2
amazon-ec2 ×1
apache ×1
ios ×1
iphone ×1
linux ×1
objective-c ×1
provider ×1
proxy ×1
python ×1
sockets ×1
svn ×1
virtuoso ×1
windows-7 ×1