Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
仅使用Angular框架(不是AngularJS,也没有中间层)对Oracle云进行身份验证_Angular_Oracle_Object Storage_Oracle Cloud Infrastructure_Cloud Object Storage - Fatal编程技术网

仅使用Angular框架(不是AngularJS,也没有中间层)对Oracle云进行身份验证

仅使用Angular框架(不是AngularJS,也没有中间层)对Oracle云进行身份验证,angular,oracle,object-storage,oracle-cloud-infrastructure,cloud-object-storage,Angular,Oracle,Object Storage,Oracle Cloud Infrastructure,Cloud Object Storage,这是我第一次玩Oracle Cloud(或任何云),我正在做一个自学练习,我已经创建了一个AngularJS应用程序,我想在我的Oracle Cloud对象存储桶中上传图像。我的工作是基于这样一个假设,即我试图实现的目标只有Angular(即:不需要中间层,如PHP、C#、Java等) 我现在需要创建(据我所知)用于验证PUT请求的“authorization”头,但我无法使其正常工作。从我阅读的理解来看,似乎我实际上不能完全从角度来做这件事,而且某种形式的中间层是必要的,因为文档只显示了中间层

这是我第一次玩Oracle Cloud(或任何云),我正在做一个自学练习,我已经创建了一个AngularJS应用程序,我想在我的Oracle Cloud对象存储桶中上传图像。我的工作是基于这样一个假设,即我试图实现的目标只有Angular(即:不需要中间层,如PHP、C#、Java等)

我现在需要创建(据我所知)用于验证PUT请求的“authorization”头,但我无法使其正常工作。从我阅读的理解来看,似乎我实际上不能完全从角度来做这件事,而且某种形式的中间层是必要的,因为文档只显示了中间层技术的代码示例

我想知道的是,在技术上甚至可以只使用Angular这样的前端框架调用Oracle云对象存储API?我曾尝试使用HmacSHA256之类的工具生成签名,但每次执行API调用时,Oracle Cloud都会不断收到以下错误:

error:
     code: "NotAuthenticated"
     message: "The required information to complete authentication was not provided."
根据[Request Signature documentation],我需要的头文件只有(请求目标)、主机和日期,所以我只包括这些头文件

如果从技术上讲,仅使用Angular(不使用中间层)实现身份验证是可能的,那么我将非常确信我创建签名的操作是不正确的,并且我将在创建签名以获得身份验证时寻求一些帮助。如果不是,我想这就是我的实验结束的地方


提前感谢大家的帮助

在大约一个月没有回应后,我决定在完成自己的调查工作后,为自己的问题提供答案

没有;在没有中间层的情况下,仅使用Angular框架无法向Oracle云验证自己的身份。神谕者自己关于这个主题的官方文件也指出了这一结论

据我所知,身份验证过程需要使用不以纯粹角度形式存在的资产。特别需要的是OpenSSL加密扩展,我自己的调查工作表明需要中间层。这些OpenSSL依赖关系仅存在于中端环境中,例如PHP或.NET

这当然是非常有意义的,因为让Angular执行所有身份验证都是非常不安全的,因为它会在客户端(浏览器)上暴露一些可能用于执行恶意活动的非常重要的信息。虽然正如我在最初的帖子中所说,这更像是一个练习,看看是否有可能让它只使用角度,而不是它是否真的正确或安全