我有一个充当静态网站的S3存储桶,并且正在使用API网关向其分配流量。我了解CloudFront在这里是更好的选择,但请不要提出建议。由于我不愿讨论的原因,这不是一个选择。
我通过配置{proxy +}资源来完成我的解决方案。下图:
我只允许从API网关代理资源访问S3网站。 有没有一种方法可以为代理资源提供执行角色,就像您可以为资源提供执行角色以运行lambda函数一样?Lambda执行角色示例如下:
代理资源的集成请求部分似乎没有执行角色:
还是有一种方法可以为整个API网关分配角色,以为其提供访问S3存储桶的权限?
我尝试过的其他方法:
编辑存储桶策略以仅允许来自API网关服务的流量:
{“版本”:“ 2012-10-17”,“ Id”:“ apiGatewayOnly”,“声明”:[{“ Sid”:“ apiGW”,“ Effect”:“允许”,“ Principal”:{“服务“:[[api-gateway-amazonaws.com”]},“ Action”:“ s3:GetObject”,“ Resource”:“ http://test-proxy-bucket-01.s3-website.us-east- 2.amazonaws.com/ *“}]}
编辑存储桶策略以仅允许来自API网关URL的流量:
{“版本”:“ 2012-10-17”,“ Id”:“ http引用策略示例”,“声明”:[{“ Sid”:“允许获取源自www.example.com和example.com的请求。 “,”效果“:”允许“,”主体“:” “,”动作“:” s3:GetObject“,”资源“:” http://test-proxy-bucket-01.s3-website.us- east-2.amazonaws.com/ “,”条件“:{” StringLike“:{” aws:Referer“:[” https://xxxxxxx.execute-api.us-east-2.amazonaws.com/prod/ ”,“ http://xxxxxxxx.execute-api.us-east-2.amazonaws.com/prod “]}}}]}
简单的问题:使用 Docker 大约一周后,我的docker build命令陷入困境并挂起(在执行任何操作之前)大约一分钟。保持这种挂起状态后,它将docker build毫无问题地以预期的速度执行命令。
其他 Docker 命令(例如docker run)不会遇到此“挂起”问题。
Docker 安装信息:
Version 18.06.1-ce-win73
Channel: stable
Run Code Online (Sandbox Code Playgroud)
我尝试过的事情:
docker system prune- 这确实清理了空间,但并没有加快我的docker build命令速度还有其他人遇到这个问题吗?
运行 WSO2 身份服务器 bin 目录中的 ciphertool.bat 或 ciphertool.sh 脚本后,下次启动服务器时,系统会提示您输入用于配置 WSO2 的密钥库和私钥密码安全保险库。例子:
C:\Program Files\WSO2\Identity Server\5.7.0\bin>wso2server.bat --start
JAVA_HOME environment variable is set to C:\Program Files\Java\jdk1.8.0_181
CARBON_HOME environment variable is set to C:\PROGRA~1\WSO2\IDENTI~1\570D0D~1.0\bin\..
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
[Enter KeyStore and Private Key Password :]
Run Code Online (Sandbox Code Playgroud)
我有一个在 Docker 容器中运行的 WSO2 身份服务器实例。我的密码已加密,因此我需要在启动时提供密钥库/私钥密码。
但这提出了一个问题:
我必须使用该标志运行 docker 容器,-it以便在容器中创建一个活动的 bash shell,允许我输入密钥库和私钥密码。我的 docker run 命令如下所示docker run -p 443:443 -it wso2-test .。如果我不包含该-it标志,WSO2 IS 将永远不会询问密码,并且密码将无法解析,从而导致一切失败。
我不想使用该 …
我有兴趣向WSO2身份服务器发布的JWT访问令牌(而不是ID令牌)添加自定义声明。我正在跟踪OpenID与WSO2的隐式连接。
我试图通过转到WSO2 IS控制台并导航到“声明”->“添加”->“添加本地声明”来添加自定义声明。然后,将声明映射到连接的OpenLDAP实例中的属性。
上面的图像只是一个例子,我使用的实际声明映射到我的OpenLDAP实例中充当辅助用户存储的属性。
然后我尝试在服务提供商->列表->索赔配置下的服务提供商中添加索赔

但是,我没有在WSO2 Identity Server授予的访问令牌中看到该自定义声明。
对我的WSO2身份服务器的调用如下所示:
https://localhost:9443/oauth2/authorize?client_id=MY_CLIENT_ID&redirect_uri=MY_REDIRECT_URI&scope=openid&response_type=token&response_mode=query&nonce=MY_NONCE
Run Code Online (Sandbox Code Playgroud)
输入正确的凭据后,令牌中看不到我的自定义声明。
令牌有效负载示例:
{
"sub": "SUB_REMOVED",
"aud": "AUD_REMOVED",
"nbf": 1544053330,
"azp": "AZP_REMOVED",
"scope": "openid",
"iss": "https://localhost:9443/oauth2/token",
"groups": [
"TEST LDAP 3/admin",
"Internal/everyone"
],
"exp": 1544056930,
"iat": 1544053330,
"jti": "JTI_REMOVED"
}
Run Code Online (Sandbox Code Playgroud)
我错过了一步吗?谢谢!