1

一些背景信息

我正在开发一个应该与 Microsoft HealthVault 交互的 PHP 应用程序。我能够从https://sourceforge.net/projects/healthvaultphp/下载健康保险库库并获取存储在我的健康保险测试帐户中的数据。

现在,该库带有“沙盒”app.id、app.cer 等所有身份验证内容。所以我遇到的问题是如何为我的 php 应用程序获取实时证书。我从 microsoft 下载了 makecert.exe 文件来为我生成证书,但与 healthvaultphp 库中包含的文本文件相比,它生成了一个二进制文件。

我的问题

如何以及应该如何进入以下文件?

身份验证/app.cer

身份验证/app.fp

身份验证/app.pem

4

1 回答 1

1

我完全忘记了我在这里发布了这个问题......以下是我解决这个问题的方法:

需要在 PHP 文件中设置 Microsoft Healthvault:

app.pem
    RSA private key
app.cer
    Certificate file
app.id
    Application ID
app.fp
    Application thumbprint

生成 PEM 和 CER 文件

Download and install Microsoft Healthvault SDK
    http://msdn.microsoft.com/en-us/healthvault/bb688183
    Install as an administrator
Once installed create new application
    Click ‘Create New Application’ button
    Uncheck ‘Automatially…website…application’ box
    Click ‘Create and Register application’ button
    It will create a certificate name ‘WildcatApp-<appid>’
        app.id will contain <appid> 
    At this point you can click on the ‘HealthVault Application Configuration Center’ link and setup your HealthVault application.
Generate the PFX file
    Right-click on your ‘Certificate Name’
    Click ‘Export public and private keys (.pfx)’ menu item
    Select the desired location for the .pfx file, preferably in third_party/microsoftHealthVault/authentication
Converting PFX file to certificate and private key files
    Do this in your linux vm, you should at this point have access to .pfx file because you put in location mentioned on 3.c
    You will need to use ‘openssl’ to do the next steps
    Generate app.cer
        openssl pkcs12 -in <filename>.pfx -clcerts -nokeys -out app.cer
        press ‘enter’ when asked for ‘import password’
        This file should only contain text starting at ---BEGIN CERTIFICATE--- to ----END CERTIFICATE---- everything before and after should be deleted
        Now you have app.cer file
    Generate app.pem
        openssl pkcs12 -in <filename>.pfx -out app_enc.pem –nocerts
        press ‘enter’ when asked for ‘import password’
        type in your host windows login password for ‘PEM pass phrase’
        This will generate an encrypted private key file
        The encrypted private key file needs to be unencrypted to be able to use in the application
        openssl rsa -in app_enc.pem -out app.pem
        Now you have the app.pem file
Log in to your healthvault configuration screen to get the app id and thumbprint
    https://config.healthvault-ppe.com/default.aspx
    Copy the ‘Application Id’ and insert it in the app.id file
    Click on the ‘Application Id’
    Click on the ‘Public certs’ tab
    Copy the ‘Thumbprint’ and insert it in the app.fp file

此时,您的 app.cer、app.pem、app.id 和 app.fp 文件已准备好使用。

Healthvault 应用程序配置 https://config.healthvault-ppe.com/default.aspx

HealthVault 开发人员中心 http://msdn.microsoft.com/en-us/healthvault/bb688183

HealthVault 事物定义 http://developer.healthvault.com/types/types.aspx

于 2011-09-16T20:03:46.390 回答