本文介绍了如何使用generateProviderServiceMetadata()和passport-saml一起使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下问题:

我想使用node.js和程序包为我的SSO-ServiceProvider生成SAML元数据.

"passport-saml".

此软件包包括方法'generateServiceProviderMetadata(cryptionCert)',该方法将生成适合提供给身份提供者的服务提供者元数据文档.

这需要一个解密证书...

我应使用哪个解密证书,即在哪里以及如何获取?

据我了解,我需要类似的东西:

  privateCert: fs.readFileSync('./cert.pem', 'utf-8')

我在哪里得到'./cert.pem'?

任何建议和提示将不胜感激.

解决方案

实际上,您需要为此生成自己的证书.如果您有私钥,则可以使用它来生成证书文件:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout mykey.key -out certificate.crt

其中 mykey.key 是您现有的密钥,而 certificate.crt 是新生成的证书,您应该将其作为参数传递给 generateServiceProviderMetadata 函数.当然,首先您需要加载证书.使用 fs.readFileSync

进入内存

因此,以下是步骤:
1.生成.crt文件
2.将其加载到变量中: varcryptionCert:fs.readFileSync('./certificate.crt','utf-8')
3.生成元数据文件,调用提供的函数: myStrategy.generateServiceProviderMetadata(decryptionCert)

I have the following issue:

I want to generate the SAML-metadata, for my SSO-ServiceProvider, using node.js and the package

'passport-saml'.

This package includes the method 'generateServiceProviderMetadata( decryptionCert )' which will generate a service provider metadata document suitable for supplying to an identity provider.

this requires an decryptionCert...

Which decryptionCert shall I use, i.e. where and how to get it?

As far as I understand, I need something like:

  privateCert: fs.readFileSync('./cert.pem', 'utf-8')

where do I get './cert.pem' ?

Any advises and hints will be appreciated.

解决方案

In fact, you need to generate your own certificate for this. If you have private key, you can use it to generate cert file:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout mykey.key -out certificate.crt

Where mykey.key is your existing key, and certificate.crt is newly generated certificate you should pass as a parameter to generateServiceProviderMetadata function.Of course, first you need to load cert. into memory using fs.readFileSync

So, here are steps:
1. Generate .crt file
2. Load it into variable: var decryptionCert: fs.readFileSync('./certificate.crt', 'utf-8')
3. Generate metadata file, calling provided function: myStrategy.generateServiceProviderMetadata(decryptionCert)

这篇关于如何使用generateProviderServiceMetadata()和passport-saml一起使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-25 01:05