从PHP将临时AWS凭证输出到<script>标记是否安全?

问题描述

我跳入了另一位开发人员构建的应用程序的工作,用于连接到AWS JavaScript SDK的方法是将临时凭证输出到脚本标签中。该代码index.PHP文件中基本上看起来像这样:

<?PHP

$stsclient = StsClient::factory(array(
    'credentials' => array(
        'key'    => 'thekey','secret' => 'thesecret'
    )
));

$session = $stsclient->getSessionToken([
  'DurationSeconds' => 129600
]);

$temp_creds = $session->get('Credentials');

?>

<script type="text/javascript">
    AWS.config.update({
      accessKeyId : '<?PHP echo $temp_creds['AccessKeyId']; ?>',secretAccessKey : '<?PHP echo $temp_creds['SecretAccessKey']; ?>',sessionToken: '<?PHP echo $temp_creds['SessionToken']; ?>'
    });
    AWS.config.region = 'us-east-1';
</script>

我知道应该使用配置文件选项和~/.aws/credentials文件来完成此操作,这样它就不会提交给公共回购协议,而我最终会这样做。

但是,将临时凭证输出到每次访问页面都会更改的页面上是否安全?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)