When opening the PDF generated by AWS for SOC-2 compliance in linux, evince is showing this error:
Sadly, there is no instructions for Linux and Adobe is not supported in this system.
Is it possible to see what is inside?
It looks like they used PDF as a ZIP file. So, first step is to show what is inside the PDF with pdfdetach, what can be installed with the poppler-utils package in ubuntu (apt install poppler-utils).
So, if our file is called Service_Organization_Controls_(SOC)_2_Report_-_Current.pdf, you can do:
pdfdetach 'Service_Organization_Controls_(SOC)_2_Report_-_Current.pdf' -list
This will list the internal content, that looks like:
$ pdfdetach 'Service_Organization_Controls_(SOC)_2_Report_-_Current.pdf' -list
2 embedded files
1: Service Organization Controls (SOC) 2 Report - Current/AWS SOC 2 Report Apr-Sept 2020 - FINAL.pdf
2: Service Organization Controls (SOC) 2 Report - Current/SOC2 Excel Provided by AWS Apr-Sept 2020.pdf
so we can extract the first document, but pdfdetach doesn't work because the directory doesn't exist, so it is required to create it by hand:
mkdir Service Organization Controls (SOC) 2 Report - Current
pdfdetach 'Service_Organization_Controls_(SOC)_2_Report_-_Current.pdf' -saveall
and now you can open Service Organization Controls (SOC) 2 Report - Current/AWS SOC 2 Report Apr-Sept 2020 - FINAL.pdf as usual, but Service Organization Controls (SOC) 2 Report - Current/SOC2 Excel Provided by AWS Apr-Sept 2020.pdf is just a container again:
pdfdetach "Service Organization Controls (SOC) 2 Report - Current/SOC2 Excel Provided by AWS Apr-Sept 2020.pdf" -list
so you need to extract the real excel file, but this time it doesn't have spaces:
pdfdetach "Service Organization Controls (SOC) 2 Report - Current/SOC2 Excel Provided by AWS Apr-Sept 2020.pdf" -saveall
And you will get the excel file as well.
Related
I have added RavenDB.Embedded#5.2.2 to an ASP.NET Core 5.0 application and I am attempting to configure the license without entering it into the studio GUI form. I have 2 licenses: a community and a developer -when I copy/paste either into the studio GUI it works.
I have tried:
Putting the license json into a file called license.json in the Server directory
Setting the command line arguments to include --License.Path=C:/path/to/the/license.json
Setting the License.Path key in settings.json to the path to the license
Steps 2 and 3 but with License and the text value of the license
My expectation is that when setting the license via configuration, the studio should not prompt me for a license. Perhaps my assumption is wrong about this.
Has anyone successfully configured a RavenDB embedded instance without the web form?
From the RavenDB team:
Hi,
License is only automatically activated on a non-bootstrapped server (new, empty one). It can be done e.g. like that:
EmbeddedServer.Instance.StartServer(new ServerOptions
{
CommandLineArgs = new List<string>
{
"--License.Path=D:\\temp\\lic.json"
}
});
But if you previously bootstrapped the server (e.g. created a database and there was no license in the env variables or command line args), then license will not be automatically activated. If this was done, then you can issue a POST to https://github.com/ravendb/... with the license JSON.
I'm following the SAP tutorial Create an application using SAP HANA and the Cloud Application Programming model. Steps 1-4 have been successfully completed - I even get the output "1:44:30 PM (HDB) Build of /APP/db completed successfully." at the end of step 4.
When I right click on the db folder and chose Open HDI Container the below error occurs.
The applications running in my space I are below.
Info about my space.
Below are the service instances in my dev space.
Am I:
Doing something wrong,
Missing some prerequisite, or
Does this not work in the trial account?
Thanks,
Mike
Assuming your hdi container is indeed there (go into service instances, not applications), it may be because of the region. Change the region of your trial to Europe Frankfurt: https://blogs.sap.com/2019/04/16/how-to-change-the-region-in-your-cloud-foundry-trial/
Cheers,
Lucia.
I am using the evaluation container image for Bluemix. I have downloaded the image, and configured all the .properties files for scripts. Then pushed the image. I have used Clouding as the DB.
When I start the container, I see no runtimes displayed in Operation Console. When I open Cloudant console, I can see only one DB created with the name of the project I chose to deploy. There is no DB for administration.
I am not able to check the logs, it throws an error when I chose to create a volume in startsrver script. I am not able to login using SSH as well although I pasted the SSH public key file in usr/ssh before pushing.
The standard flow to have all up running is this:
./installcontainercli.sh
./initenv.sh args/initenv.properties
./prepareserverdbs.sh args/prepareserverdbs.properties
#this step you will repeat for each runtime you have to install.
./prepareserverdbs.sh args/prepareserverdbs.InvokingAdapterProcedures.properties
#steps to be repeated for deploys
./prepareserver.sh args/prepareserver.properties
./startserver.sh args/startserver.properties
The tricky here is that in the args/prepareserverdbs.properties the runtime property is commented.
At the file args/prepareserverdbs.InvokingAdapterProcedures.properties is the same at the file args/prepareserverdbs.properties, it is not commented.
Said that first you run:
./prepareserverdbs.sh args/prepareserverdbs.properties
then you run the following command to to create the runtime DB:
./prepareserverdbs.sh args/prepareserverdbs.InvokingAdapterProcedures.properties
After that, you follow with the deploy sequence:
#steps to be repeated for deploys
./prepareserver.sh args/prepareserver.properties
./startserver.sh args/startserver.properties
Details at: https://developer.ibm.com/mobilefirstplatform/documentation/getting-started-7-1/bluemix/run-foundation-on-bluemix/
Example of the app properties:
# Licensed Materials - Property of IBM
# 5725-I43 (C) Copyright IBM Corp. 2011, 2013. All Rights Reserved.
# US Government Users Restricted Rights - Use, duplication or
# disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
################################################################################################################################################
# This file defines the various properties that needs to be provided for running the prepareserverdbs.sh script
# Run prepareserverdbs.sh script to configure the management and runtime databases for the MobileFirst Platform projects.
# The Bluemix DB service type. The value can be either sqldb or cloudantNoSQLDB
DB_TYPE=cloudantNoSQLDB
# Bluemix DB service instance name
DB_SRV_NAME=CloudantDB
# Bluemix database service plan to create the service instance. For SQL DB, the accepted values are sqldb_small, sqldb_free, sqldb_premium.
# For Cloudant DB, the accepted value is Shared
DB_SRV_PLAN=Shared
# Bluemix application name to bind the DB service instance
APP_NAME=<your app name>
# (Optional) The name of the runtime project to be deployed on MFPF server. Specified only for configuring runtime database
RUNTIME_NAME=FormBasedAuth
# (Optional) Database Schema Name. Defaults to WLADMIN for admin database and runtime name for runtime database
#SCHEMA_NAME=
I am writing a program that can handle mailto: protocol. In order to allow user to select my program as a default email handler, I registered my program. However, I noticed that some, programs display clickable link to company web site under company name, for example File Explorer.
How do I specify a link to my web site so that Default Programs UI shows it when my app is selected?
I use Microsoft Visual Studio 2013 ultimate. Here's my program registration details in .reg format:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications]
"MyMail"="SOFTWARE\\MyFirm\\MyApp\\Capabilities"
[HKEY_LOCAL_MACHINE\SOFTWARE\MyFirm\MyApp\Capabilities]
"ApplicationDescription"="This is an awesome description."
"ApplicationName"="Awesome App"
[HKEY_LOCAL_MACHINE\SOFTWARE\MyFirm\MyApp\Capabilities\URLAssociations]
"mailto"="mailto.2"
[HKEY_CLASSES_ROOT\mailto.2]
#="URL:MailTo Protocol"
"EditFlags"=dword:00000002
"FriendlyTypeName"="My Mail Client"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\mailto.2\shell\open\command]
#="\"C:\\bg\\awesome.exe\" \"%l\""
Here is an example of clickable link for File Explorer.
Here is my application that does not have a link
This is what I found out so far:
Not all apps display this link.
Both Microsoft and non-Microsoft apps can display this link, for example, CyberLink PowerDVD displays link to www.cyberlink.com.
Not all Microsoft apps display the link, and those that do display it, may have different URLs. For example, three apps by Microsoft Corporation: Paint - no link, Photo Gallery - http://www.microsoft.com, Visual Studio 2013 - http://microsoft.com (no www).
Skype for Desktop shows company Skype Technologies S.A. and a link to http://www.microsoft.com.
It does not appear that the link address is stored in the Registry. It is stored in the executable listed under shell\open\command.
It does not appear to be stored as a resource in the executable.
The strings tool from sysinternals does not find the link address in the executable.
The URL displayed under the program and company name in Default Programs is stored in the digital signature as authenticated attribute 1.3.6.1.4.1.311.2.1.12.
One way to set this value is using signtool from Visual Studio Command Prompt. The URL is the value after /du parameter, for example:
signtool sign /s My /n "RegmagiK Software" /du "http://www.RegmagiK.com" awesome.exe
The certificate must be signed by a trusted certificate authority.
For testing, one can create a self-signed certificate using makecert tool and make it trusted using certificate manager.
makecert -r -ss My -sr CurrentUser -n "CN=RegmagiK Software" SelfSigned.cer
certmgr.exe /add SelfSigned.cer /s /r currentUser root
After signing executable, reopen Default Programs and click on your application. It should now display the link to your site.
My application (vb.net windows application deployed via ClickOnce) uses Word to open and fill .dot templates to create new Word documents. I reference Microsoft Word 14 Object Library and uses this code :
Dim oWord As Word.Application = Nothing
Dim oDoc As Word.Document = Nothing
Try
oWord = New Word.Application
Dim strFileName As String = ""
Select Case strType
Case "LettreReception"
strFileName = Path.Combine(GetParam(1), "Template_LettreReception.dot")
If File.Exists(strFileName) Then
oDoc = oWord.Documents.Add(strFileName)
On the last line I receive "could not open macro storage" error on deployed machines (not on my development machine).
I develop with Windows 7 - Office 2010 - VS 2010 (.Net 3.5). My deployment machine is also a Windows 7 with Office 2010 installed.
I tried to remove normal.dotm (I found some links advicing it) without success. The .dot template used contains no macro.
Check the properties of the word document and make sure the files are unblocked. Sometimes when you get the documents from a different computer or download them from the internet they will be blocked which will cause the the throwing of this exception "could not open macro storage"
Because Word Interop is actually running behind the scenes as if it was running in an interactive session, certain permissions are required of the account used during execution.
Are you using Windows Authentication and impersonation in you web app? If so, the user being impersonated must have local log on rights to the server to run Word... In addition, you must actually log on to the server with that account at least once so that a profile exists on that machine for that user so the registry hive can be loaded. I've also found that you may need to actually run Word at least once as that user (to make sure any first-time initialization messages get taken care of before trying to run Word from code).
If not, then the service account that the application is running under (usually NETWORK SERVICE) requires the aforementioned permissions (which I will describe shortly) and you'll have to do something fancy like loading a registry hive dynamically at run-time. Personally, I prefer implementing an in-code temporary impersonation with a user account that has local log on permissions on the server in question.
Local log on permissions can be a bit tricky depending on your network and group policy configurations (if you want to be somewhat secure and not just use a Domain Admin account).
The reason everything works on your computer running in VS is because the context of the web application is YOUR user account - which, of course, has local log on permissions on your machine with a registry hive that can be loaded.
Now for the permissions:
First, you must run "dcomcnfg" on the server and make the following configuration change:
Right click on Component Services\computers\My Computer\DCOM Config\Microsoft Word 97 - 2003 Document and go to Properties
In the Properties screen, go to the Security tab and change the "Launch and Activation Permissions" to Customize.
Click the Edit button and add the local computer NETWORK SERVICE account (If not using impersonation... If using impersonation, add the appropriate user or group) to the list of users and check "Local Launch" and "Local Activation"
Make sure that the local computer NETWORK SERVICE account (If not using impersonation... If using impersonation, then the appropriate user or group) has appropriate read/modify permissions on the folder(s)and file(s) that you will be opening and/or saving to.
Create a "Desktop" directory under: C:\Windows\System32\config\systemprofile\ and give Full permissions to the local NETWORK SERVICE account (or the account that your ASP .NET application is running under) [NOTE: I believe this and the next step only apply if NOT using impersonation]
Give Modify/Read/Execute permissions on the C:\Windows\System32\config\systemprofile folder
Hope that helps some and wasn't too confusing...
Right click on the file that is opened -> Click the Unblock tick box -> Apply
Worked for me at least.
"could not open macro storage" is telling you that VBA is looking for a particular structured storage file such as a .DOT or .DOC, and looking for the storage (a kind of stream within the file) in that file that contains the VBA code. If it can't open it, possible reasons include:
the container (the .doc/.dot) isn't there
the container cannot be opened with the caller's permissions
the container is there but the storage isn't there (e.g. on the target system there is a container with the expected name, but it contains no macros)
the container is there and the storage is there but cannot be opened with the caller's permissions
So one thing to do is to look through your project looking for anything it references (perhaps even other objects or DLLs that you specified via Tools->References) that is not also being delivered with your template.
Go to the Word document (if it's a template, be sure to open it, not create a new document with it) and disable Protected View:
https://casecomplete.zendesk.com/hc/en-us/articles/200685047-Could-not-open-macro-storage