def update_saml_provider_config(): # [START update_saml_provider] saml = auth.update_saml_provider_config( 'saml.myProvider', x509_certificates=[ '-----BEGIN CERTIFICATE-----\nCERT2...\n-----END CERTIFICATE-----', '-----BEGIN CERTIFICATE-----\nCERT3...\n-----END CERTIFICATE-----', ]) print('Updated SAML provider:', saml.provider_id)
def test_update_minimal(self, user_mgt_app): recorder = _instrument_provider_mgt(user_mgt_app, 200, SAML_PROVIDER_CONFIG_RESPONSE) provider_config = auth.update_saml_provider_config( 'saml.provider', display_name='samlProviderName', app=user_mgt_app) self._assert_provider_config(provider_config) assert len(recorder) == 1 req = recorder[0] assert req.method == 'PATCH' assert req.url == '{0}/inboundSamlConfigs/saml.provider?updateMask=displayName'.format( USER_MGT_URLS['PREFIX']) got = json.loads(req.body.decode()) assert got == {'displayName': 'samlProviderName'}
def test_update_empty_values(self, user_mgt_app): recorder = _instrument_provider_mgt(user_mgt_app, 200, SAML_PROVIDER_CONFIG_RESPONSE) provider_config = auth.update_saml_provider_config( 'saml.provider', display_name=auth.DELETE_ATTRIBUTE, enabled=False, app=user_mgt_app) self._assert_provider_config(provider_config) assert len(recorder) == 1 req = recorder[0] assert req.method == 'PATCH' mask = ['displayName', 'enabled'] assert req.url == '{0}/inboundSamlConfigs/saml.provider?updateMask={1}'.format( USER_MGT_URLS['PREFIX'], ','.join(mask)) got = json.loads(req.body.decode()) assert got == {'displayName': None, 'enabled': False}
def test_update(self, user_mgt_app): recorder = _instrument_provider_mgt(user_mgt_app, 200, SAML_PROVIDER_CONFIG_RESPONSE) provider_config = auth.update_saml_provider_config( **self.VALID_CREATE_OPTIONS, app=user_mgt_app) self._assert_provider_config(provider_config) assert len(recorder) == 1 req = recorder[0] assert req.method == 'PATCH' mask = [ 'displayName', 'enabled', 'idpConfig.idpCertificates', 'idpConfig.idpEntityId', 'idpConfig.ssoUrl', 'spConfig.callbackUri', 'spConfig.spEntityId', ] assert req.url == '{0}/inboundSamlConfigs/saml.provider?updateMask={1}'.format( USER_MGT_URLS['PREFIX'], ','.join(mask)) got = json.loads(req.body.decode()) assert got == self.SAML_CONFIG_REQUEST
def test_update_saml_provider_config(): provider_config = _create_saml_provider_config() try: provider_config = auth.update_saml_provider_config( provider_config.provider_id, idp_entity_id='UPDATED_IDP_ENTITY_ID', sso_url='https://example.com/updated_login', x509_certificates=[X509_CERTIFICATES[1]], rp_entity_id='UPDATED_RP_ENTITY_ID', callback_url='https://updatedProjectId.firebaseapp.com/__/auth/handler', display_name='UPDATED_SAML_DISPLAY_NAME', enabled=False) assert provider_config.idp_entity_id == 'UPDATED_IDP_ENTITY_ID' assert provider_config.sso_url == 'https://example.com/updated_login' assert provider_config.x509_certificates == [X509_CERTIFICATES[1]] assert provider_config.rp_entity_id == 'UPDATED_RP_ENTITY_ID' assert provider_config.callback_url == ('https://updatedProjectId.firebaseapp.com/' '__/auth/handler') assert provider_config.display_name == 'UPDATED_SAML_DISPLAY_NAME' assert provider_config.enabled is False finally: auth.delete_saml_provider_config(provider_config.provider_id)
def test_update_invalid_args(self, user_mgt_app, invalid_opts): options = {'provider_id': 'saml.provider'} options.update(invalid_opts) with pytest.raises(ValueError): auth.update_saml_provider_config(**options, app=user_mgt_app)