小编Ass*_*vie的帖子

将密码保存在注册表中作为"秘密"

我需要在某处(最好是注册表)存储我的用户名/密码,以便我的.Net应用程序可以使用它们代表用户登录某些远程服务.我知道可以将注册表中的值存储为"机密",这意味着它们使用Windows域用户令牌或其他东西进行加密.换句话说,我不想自己处理加密.

澄清一下:我不能存储密码的哈希值或盐或它们的任何东西.这些凭据适用于第三方系统,而且我能够代表我的用户登录此系统的唯一方法是以某种方式保留其凭据并能够恢复它们.

所以无论如何,我依旧记得在注册表中有这样一个地方,但细节是模糊的.我需要在C#中完成它(虽然如果它是简单的注册表访问它应该无关紧要).

编辑:还有一件事,它应该在Windows用户会话之间持续存在(如果在用户注销和打开后密码不可读,它对我没有帮助).

.net c# encryption passwords registry

6
推荐指数
2
解决办法
5662
查看次数

什么是最好的免费便携式3D/2D发动机?

我喜欢为pc/mac/linux制作非常简单的3D/2D游戏什么是最好的免费3d/2d引擎呢?我没有游戏编程的经验所以我想它必须易于学习,请用c ++谢谢

c++ game-engine

6
推荐指数
2
解决办法
7792
查看次数

如何将函数名称转换为字符串

我有一个来自对象的函数,比如说Object.MyFunc.我需要将此函数名称发送到另一个函数中,如下所示:doSomething("Object.MyFunc");

任何建议?

javascript

6
推荐指数
2
解决办法
2846
查看次数

Log4cxx自定义appender

是否可以为log4cxx编写自定义appender并通过属性文件(如内置的appender)进行配置?如果可能的话,我更喜欢这样做,而不必重建log4cxx(例如,通过派生/扩展现有的appender).

你能指点我一个例子吗?

c++ logging log4cxx

6
推荐指数
1
解决办法
6848
查看次数

将void指针(数据)转换为函数指针

我知道之前有人问过,但我在这里看到的情况都不像这个.我在运行时导入一些API函数,这些函数的一般声明如下:

// Masks for UnmapViewOfFile and MapViewOfFile
typedef BOOL (WINAPI *MyUnmapViewOfFile)(LPCVOID);
typedef LPVOID (WINAPI *MyMapViewOfFile)(HANDLE, DWORD, DWORD, DWORD, SIZE_T);

// Declarations
MyUnmapViewOfFile LoadedUnmapViewOfFile;
MyMapViewOfFile LoadedMapViewOfFile;
Run Code Online (Sandbox Code Playgroud)

然后我调用一个通用的"加载"函数,它调用GetProcAddress以从正确的DLL获取导出函数的地址.该地址以无效**返回.此void**是泛型加载中的参数之一,如:

int GenericLoad(char* lib, void** Address, char* TheFunctionToLoad)
Run Code Online (Sandbox Code Playgroud)

我会称之为这个功能:

void *Address;
GenericLoad("kernel32.dll", &Address, "UnmapViewOfFile");
LoadedUnmapViewOfFile = (MyUnmapViewOfFile) Address;
Run Code Online (Sandbox Code Playgroud)

或类似的东西.现在,编译器当然抱怨尝试将数据void*转换为函数指针.那怎么办?

我已经阅读了无数的网站和各种令人讨厌的演员阵容,所以如果你在解释中添加代码,我会很感激.

谢谢Jess

c windows pointers

6
推荐指数
1
解决办法
3251
查看次数

是否有可能在不丢失合并信息的情况下重写分支的历史记录?

我们有一个主分支,我们已经合并了大约10个功能分支,一次一个.

所以最近的历史看起来像这样:

merged feat/10 (HEAD of master)
merged feat/9
merged feat/8
merged feat/7
merged feat/6
merged feat/5
...
Run Code Online (Sandbox Code Playgroud)

现在我们发现这feat/7很糟糕,我们想把它从主人那里拿走.恢复合并提交是不够的,因为我们根本不希望破坏的提交存在于我们的历史记录中.我们不能真正使用交互式rebase,因为这将使历史变得平坦,使其看起来好像是在一个分支上完成的,并且我们希望保留所有良好的合并历史记录.

有没有办法从分支的历史中删除特定的合并提交?

我会注意到真实的历史要比你在上面的例子中看到的要复杂得多,所以手动重新进行所有的合并,因为feat/7不是一个好的选择.

编辑

为了澄清那些投票将其作为一个副本关闭的人:这不是关于如何使用rebase进行提交的常见问题解答,当然这已被多次回答.这里的问题是关于在没有展平合并历史的情况下进行提交.

git

6
推荐指数
1
解决办法
250
查看次数

AWS Cloudformation:Fn :: Fin :: FindInMap语句中的联接?

尝试在Fn :: FindInMap中使用Fn :: Join,如下所示:

"SubnetId": {
    "Fn::FindInMap": [
        {
            "Ref": "OrganizationName"
        },
        "AZ",
        {
            "Fn::Join": [
                "",
                [
                    {
                        "Ref": "Environment"
                    },
                    {
                        "Ref": "Member1AZ"
                    }
                ]
            ]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

OrganizationName,Environment和Member1AZ都是参数。本质上,它应该连接到我的映射并生成,例如:

"SubnetId" : { "Fn::FindInMap" : [ "Organization2", "AZ", "prod1c" ]}
Run Code Online (Sandbox Code Playgroud)

但是,它似乎没有将Fn :: Join的输出作为Fn :: FindInMap上的单个实体使用,如果我对模板的该部分进行硬编码,它将正确验证。

A client error (ValidationError) occurred when calling the ValidateTemplate operation: Template error: every Fn::FindInMap object requires three parameters, the map name, map key and the attribute for return value
Run Code Online (Sandbox Code Playgroud)

我的映射如下:

Mappings" : …
Run Code Online (Sandbox Code Playgroud)

templates amazon-web-services aws-cloudformation

6
推荐指数
2
解决办法
9164
查看次数

docker autobuild with git private submodule

我在GitHub上有两个私有存储库叫做dashboardui.我定义ui为git子模块dashboard,并且我将docker配置为autobuild dashboard对特定分支上的每个更改.

我阅读了这篇文档https://docs.docker.com/docker-hub/builds/,但是当我尝试在我ui的设置中设置docker给出的部署密钥时,它会显示"密钥已在使用中".实际上,这个密钥已被dashboard用于允许docker自动生成此repo!

这是我的docker构建日志:

错误:

Failed to clone repository: Cloning into '/tmp/build_byaxhis7sznbvmb6wgwzm6n'...
Submodule 'app/styles/ui' (git@github.com:yllieth/ui.git) registered for path 'app/styles/ui'
Cloning into 'app/styles/ui'...


Warning: Permanently added 'github.com,192.30.252.130' (RSA) to the list of known hosts.
ERROR: Repository not found.
fatal: The remote end hung up unexpectedly
Clone of 'git@github.com:yllieth/ui.git' into submodule path 'app/styles/ui' failed
Run Code Online (Sandbox Code Playgroud)

Dockerfile:

即使我在我的仓库中定义了Docker文件,Docker也找不到任何Dockerfile dashboard.所以,我将无法给它任何指令或添加另一个SSH密钥.

如果有人知道如何使用autobuild与私人回购和git子模块,我很感兴趣!

git git-submodules docker

6
推荐指数
1
解决办法
2030
查看次数

CloudFormation使用日志记录存储桶创建CloudFront分配

尝试配置由CloudFront分发的静态网站存储桶.

如果省略Logging分发的配置,则以下CloudFormation模板可用:

{
...

"PrimeBucket": {
    "Properties": {
        "AccessControl": "PublicRead",
        "WebsiteConfiguration": {
            "ErrorDocument": "error.html",
            "IndexDocument": "index.html"
        }
    },
    "Type": "AWS::S3::Bucket"
},
"PrimeBucketDistribution": {
    "Properties": {
        "DistributionConfig": {
            "DefaultCacheBehavior": {
                "AllowedMethods": [
                    "GET",
                    "HEAD",
                    "OPTIONS"
                ],
                "ForwardedValues": {
                    "QueryString": "false"
                },
                "TargetOriginId": "BucketOrigin",
                "ViewerProtocolPolicy": "allow-all"
            },
            "Enabled": "true",
            "Logging": {
                "Bucket": {
                    "Ref": "PrimeBucketLogs"
                },
                "IncludeCookies": "false"
            },
            "Origins": [
                {
                    "DomainName": {
                        "Fn::GetAtt": [
                            "PrimeBucket",
                            "DomainName"
                        ]
                    },
                    "Id": "BucketOrigin",
                    "S3OriginConfig": {}
                }
            ]
        }
    },
    "Type": "AWS::CloudFront::Distribution" …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 amazon-cloudfront aws-cloudformation

6
推荐指数
1
解决办法
1223
查看次数

DynamoDB DAX 和高可用性

您处理 DAX 维护时段的首选策略是什么?

DynamoDB 本身没有 MW,并且可用性非常高。当 DAX 被引入混合中时,如果它是客户端对 DDB 的唯一访问点,那么它就变成了 SPOF。那么,如何在 DAX 计划停机期间优雅地处理降级问题?

我的想法是不直接使用 DAX 客户端,而是引入一些抽象层,使其能够在 DAX 关闭时回退到直接 DDB 访问。这是一个好方法吗?

amazon-dynamodb-dax

5
推荐指数
1
解决办法
1211
查看次数