小编Rob*_*sen的帖子

当mysql命令行工作时,为什么PHP PDO会收到"SQLSTATE [42000] [1044]用户拒绝访问"?

在过去的几个小时里,我一直在用力撞击这堵墙,我的头脑很血腥.:(

正如标题所暗示的,我已经创建了一个可以访问数据库MySQL用户罚款从MySQL命令提示符在数据库服务器上.但是,当我尝试实例化一个新的PDO对象以使用同一个用户访问数据库时,我得到:

SQLSTATE[42000] [1044] Access denied for user 'bob'@'localhost' to database 'my_database'
Run Code Online (Sandbox Code Playgroud)

这是我创建用户的方式:

GRANT SELECT, DELETE, EXECUTE, INSERT, UPDATE ON my_database.* TO 'bob'@'localhost' IDENTIFIED BY 'some_password';
Run Code Online (Sandbox Code Playgroud)

这可能是什么问题?!请有人给我一个骨头!(仅供参考,当我尝试创建一个新的PDO对象时会出现问题...我捕获了一个PDOException,这就是消息).

授权后我做了FLUSH PRIVILEGES,这是SHOW GRANTS的输出:

mysql> SHOW GRANTS FOR 'bob'@'localhost';
+------------------------------------------------------------------------------------------------------------+
| Grants for bob@localhost                                                                                   |
+------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'bob'@'localhost' IDENTIFIED BY PASSWORD '.........................................' |
| GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE ON `my_database`.* TO 'bob'@'localhost'                      |
+------------------------------------------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

以下是这个用户的mysql.db:

mysql> SELECT * FROM db WHERE User = 'bob'\G;
*************************** …
Run Code Online (Sandbox Code Playgroud)

php mysql database pdo database-permissions

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

Postgres无法创建唯一索引,密钥重复

我正在尝试使用这个看似简单的SQL向Postgres 9.3数据库中的表添加一列:

ALTER TABLE quizzes ADD COLUMN deleted BOOLEAN NOT NULL DEFAULT false;
Run Code Online (Sandbox Code Playgroud)

但是,我收到以下错误:

ERROR:  could not create unique index "quizzes_pkey"
DETAIL:  Key (id)=(10557462) is duplicated.
Run Code Online (Sandbox Code Playgroud)

奇怪的是,实际上没有具有该id的(这是主键,所以它不应该有重复):

SELECT id FROM quizzes WHERE id = 10557462;
 id 
----
(0 rows)
Run Code Online (Sandbox Code Playgroud)

事实上,似乎已经以某种方式跳过了id:

SELECT id FROM quizzes WHERE id > 10557459 ORDER BY id LIMIT 4;
    id    
----------
 10557460
 10557461
 10557463
 10557464
(4 rows)
Run Code Online (Sandbox Code Playgroud)

为什么这会阻止我添加列,我该如何解决?

sql postgresql alter-table

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

如何使用Mustache使用Spring Security?

我正在关注Spring Security参考,并且我已经重定向到自定义登录页面,如3.3节所述.但是,我不确定如何在Mustache中获取CSRF令牌(所有示例都使用JSP).我尝试过这样一些天真的事......

{{#_csrf}}
    <input type="hidden" name="{{parameterName}}" value="{{token}}"/>
{{/_csrf}}
Run Code Online (Sandbox Code Playgroud)

...还有这个...

{{#CsrfToken}}
    <input type="hidden" name="{{parameterName}}" value="{{token}}"/>
{{/CsrfToken}}
Run Code Online (Sandbox Code Playgroud)

......但它们不起作用(我并没有真正期待它们).如何在Mustache中获取CSRF令牌?

我也想知道:我在哪里可以在我的代码中设置断点,以查看Spring Security将模型作为模型发送到我的自定义登录视图?)

java spring-mvc spring-security mustache

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

如何将JSON对象转换为base64字符串?

我正在尝试遵循Amazon 使用POST将基于浏览器的文件上传到S3 的示例

该示例提供了此JSON策略...

{ "expiration": "2013-08-06T12:00:00.000Z",
  "conditions": [
    {"bucket": "examplebucket"},
    ["starts-with", "$key", "user/user1/"],
    {"acl": "public-read"},
    {"success_action_redirect": "http://acl6.s3.amazonaws.com/successful_upload.html"},
    ["starts-with", "$Content-Type", "image/"],
    {"x-amz-meta-uuid": "14365123651274"},
    ["starts-with", "$x-amz-meta-tag", ""],

    {"x-amz-credential": "AKIAIOSFODNN7EXAMPLE/20130806/us-east-1/s3/aws4_request"},
    {"x-amz-algorithm": "AWS4-HMAC-SHA256"},
    {"x-amz-date": "20130806T000000Z" }
  ]
}
Run Code Online (Sandbox Code Playgroud)

...并说这是该策略的base64编码版本:

eyAiZXhwaXJhdGlvbiI6ICIyMDEzLTA4LTA3VDEyOjAwOjAwLjAwMFoiLA0KICAiY29uZGl0aW9ucyI6IFsNCiAgICB7ImJ1Y2tldCI6ICJleGFtcGxlYnVja2V0In0sDQogICAgWyJzdGFydHMtd2l0aCIsICIka2V5IiwgInVzZXIvdXNlcjEvIl0sDQogICAgeyJhY2wiOiAicHVibGljLXJlYWQifSwNCiAgICB7InN1Y2Nlc3NfYWN0aW9uX3JlZGlyZWN0IjogImh0dHA6Ly9leGFtcGxlYnVja2V0LnMzLmFtYXpvbmF3cy5jb20vc3VjY2Vzc2Z1bF91cGxvYWQuaHRtbCJ9LA0KICAgIFsic3RhcnRzLXdpdGgiLCAiJENvbnRlbnQtVHlwZSIsICJpbWFnZS8iXSwNCiAgICB7IngtYW16LW1ldGEtdXVpZCI6ICIxNDM2NTEyMzY1MTI3NCJ9LA0KICAgIFsic3RhcnRzLXdpdGgiLCAiJHgtYW16LW1ldGEtdGFnIiwgIiJdLA0KDQogICAgeyJ4LWFtei1jcmVkZW50aWFsIjogIkFLSUFJT1NGT0ROTjdFWEFNUExFLzIwMTMwODA2L3VzLWVhc3QtMS9zMy9hd3M0X3JlcXVlc3QifSwNCiAgICB7IngtYW16LWFsZ29yaXRobSI6ICJBV1M0LUhNQUMtU0hBMjU2In0sDQogICAgeyJ4LWFtei1kYXRlIjogIjIwMTMwODA2VDAwMDAwMFoiIH0NCiAgXQ0KfQ==
Run Code Online (Sandbox Code Playgroud)

但是,当我从Node.js REPL执行此操作时...

var policy = {
  "expiration": "2013-08-06T12:00:00.000Z",
  "conditions": [
    {"bucket": "examplebucket"},
    ["starts-with", "$key", "user/user1/"],
    {"acl": "public-read"},
    {"success_action_redirect": "http://acl6.s3.amazonaws.com/successful_upload.html"},
    ["starts-with", "$Content-Type", "image/"],
    {"x-amz-meta-uuid": "14365123651274"},
    ["starts-with", "$x-amz-meta-tag", ""],

    {"x-amz-credential": "AKIAIOSFODNN7EXAMPLE/20130806/us-east-1/s3/aws4_request"},
    {"x-amz-algorithm": "AWS4-HMAC-SHA256"},
    {"x-amz-date": "20130806T000000Z" }
  ]
};

console.log(new Buffer(JSON.stringify(policy)).toString('base64'));
Run Code Online (Sandbox Code Playgroud)

...我得到了不同的base64字符串:

eyJleHBpcmF0aW9uIjoiMjAxMy0wOC0wNlQxMjowMDowMC4wMDBaIiwiY29uZGl0aW9ucyI6W3siYnVja2V0IjoiZXhhbXBsZWJ1Y2tldCJ9LFsic3RhcnRzLXdpdGgiLCIka2V5IiwidXNlci91c2VyMS8iXSx7ImFjbCI6InB1YmxpYy1yZWFkIn0seyJzdWNjZXNzX2FjdGlvbl9yZWRpcmVjdCI6Imh0dHA6Ly9hY2w2LnMzLmFtYXpvbmF3cy5jb20vc3VjY2Vzc2Z1bF91cGxvYWQuaHRtbCJ9LFsic3RhcnRzLXdpdGgiLCIkQ29udGVudC1UeXBlIiwiaW1hZ2UvIl0seyJ4LWFtei1tZXRhLXV1aWQiOiIxNDM2NTEyMzY1MTI3NCJ9LFsic3RhcnRzLXdpdGgiLCIkeC1hbXotbWV0YS10YWciLCIiXSx7IngtYW16LWNyZWRlbnRpYWwiOiJBS0lBSU9TRk9ETk43RVhBTVBMRS8yMDEzMDgwNi91cy1lYXN0LTEvczMvYXdzNF9yZXF1ZXN0In0seyJ4LWFtei1hbGdvcml0aG0iOiJBV1M0LUhNQUMtU0hBMjU2In0seyJ4LWFtei1kYXRlIjoiMjAxMzA4MDZUMDAwMDAwWiJ9XX0=
Run Code Online (Sandbox Code Playgroud)

我是在做错什么,还是亚马逊的示例中有错误?

javascript base64 json amazon-s3

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

AccessDenied:无权执行 rds:DescribeDBInstances

我想以编程方式列出我的 RDS 数据库实例和集群快照,因此我将以下 IAM 策略直接附加到我的一位用户:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ReadProdSnapshotsAndInstances",
            "Effect": "Allow",
            "Action": [
                "rds:DescribeDBInstances",
                "rds:DescribeDBClusterSnapshots"
            ],
            "Resource": "*"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

但是当我以该用户身份执行以下操作时(使用 AWS Node.js SDK)...

rds.describeDBInstances({}, (error, data) => {
    ...
});
Run Code Online (Sandbox Code Playgroud)

...我收到以下错误:

AccessDenied: User: arn:aws:iam::<accountId>:user/<userName> is not authorized to perform: rds:DescribeDBInstances
Run Code Online (Sandbox Code Playgroud)

知道我做错了什么吗?这似乎应该如此简单。

rds amazon-web-services aws-sdk

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

webpack CommonJS骨干和下划线

我想在CommonJS风格中使用Backbone和webpack,但我需要了解如何:

  • 告诉webpack,Backbone依赖于下划线
  • 防止他们自动默认为AMD

似乎imports-loader可能是答案.我的配置中是否需要这样的东西?

module: {
    loaders: [
        {
            test: require.resolve('_'),
            loader: 'imports?_=underscore,define=>false'
        },
        {
            test: require.resolve('backbone'),
            loader: 'imports?define=>false'
        }
    ]
},
Run Code Online (Sandbox Code Playgroud)

此外,这是否会让我var _ = require('underscore');在我var Backbone = require('backbone');到处做之前不必做什么?

我的问题可能被视为一个重复这个,但我希望能得到比在接受的答案只要多一点澄清.

javascript backbone.js underscore.js webpack

3
推荐指数
1
解决办法
1202
查看次数

带有标识的 SwiftUI 列表初始值设定项(由 :)

我正在学习 Apple 的关于构建列表和导航的 SwiftUI 教程,但我似乎找不到有关此List初始化程序或类型identified(by:)方法的任何文档Array

struct LandmarkList: View {
    var body: some View {
        List(landmarkData.identified(by: \.id)) { landmark in

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我右键单击List初始化程序并Jump to Definition在 Xcode 中单击时,它会将我带到这个不正确的初始化程序。当我对这个identified(by:)方法做同样的事情时,它把我带到这个奇怪的文件,它只有 13 行并且没有提到这个identified(by:)方法:

在此处输入图片说明

我知道 Xcode 处于测试阶段,但我在哪里可以找到这些神秘代码的文档?到目前为止,本教程一直很棒,但我不确定这是什么List以及Array正在做什么。

swift5 swiftui

2
推荐指数
1
解决办法
1535
查看次数